GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie Ansible unter Rocky Linux/CentOS 8

Ansible selbst ist in Python geschrieben und hat eine ziemlich minimale Lernkurve. Ansible folgt einem einfachen Setup-Verfahren und ist nicht von zusätzlicher Software, Servern oder Client-Daemons abhängig. Es verwaltet Knoten über SSH und ist standardmäßig parallel.

In diesem Handbuch erfahren Sie, wie Sie Ansible unter Rocky Linux/CentOS 8 installieren und konfigurieren.

Verwandte Inhalte

  • So installieren Sie Python 2 und Python 3 auf Rocky Linux/Centos 8
  • So installieren Sie Python 2 und Python 3 auf Fedora 35
  • So installieren und konfigurieren Sie Ansible auf Fedora 35

Voraussetzungen

Um mitzumachen, stellen Sie sicher, dass Sie Folgendes haben:

  • Ein aktueller Rocky Linux/Centos 8 Server
  • Zugang zum Internet
  • Kenntnisse des Linux-Terminals

Inhaltsverzeichnis

  1. Stellen Sie sicher, dass die Betriebssystempakete auf dem neuesten Stand sind
  2. Python auf Rocky Linux/Centos 8 Server installieren
  3. Ansible installieren
  4. Ansible-Installation testen

1. Stellen Sie sicher, dass die Betriebssystempakete auf dem neuesten Stand sind

Bevor Sie fortfahren, wird immer empfohlen, das System und die installierten Pakete zu aktualisieren.

Verwenden Sie diesen Befehl, um sicherzustellen, dass die Systempakete auf dem neuesten Stand sind:

sudo dnf -y update

2. Python auf Rocky Linux/Centos 8 Server installieren

Ansible ist in Python geschrieben. Da Python-Programme interpretiert werden, benötigen sie immer die verfügbare Python-Laufzeitumgebung, damit sie ausgeführt werden können. Ansible ist keine Ausnahme, wir brauchen Python, damit wir Ansible ausführen können. Ansible funktioniert sowohl für Python 2 als auch für Python 3.

Verwenden Sie dies, um python3 auf dem Server zu installieren:

sudo dnf install -y python3

Pip ist ein Paketmanager für Python. Wir können pip verwenden, um Python-Python-Pakete und ihre Abhängigkeiten zu verwalten. Wir benötigen auch Pip, um Ansible zu installieren. Verwenden Sie diese Befehle, um Pip zu installieren:

sudo dnf -y install python3-pip

Es wird auch empfohlen, die neueste Version von pip installiert zu haben. Verwenden Sie diesen Befehl, um Pip

zu aktualisieren
sudo pip3 install --upgrade pip

3. Ansible installieren

Es gibt zwei Möglichkeiten, wie wir Ansible in unserem System installieren können.

i. Ansible mit EPEL-Repo installieren

Extra Packages for Enterprise Linux (oder EPEL) ist eine Fedora Special Interest Group, die eine Reihe hochwertiger Zusatzpakete für Enterprise Linux erstellt, pflegt und verwaltet. Fügen Sie das EPEL-Repository mit diesem Befehl zu Ihrem Rocky Linux/Centos 8-System hinzu:

sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Wir können dann mit diesem Befehl Ansible installieren, das im EPEL-Repo bereitgestellt wird:

sudo dnf install ansible

Überprüfen Sie die auf Ihrem System installierte Version von Ansible mit diesem Befehl:

$ ansible --version

ansible 2.9.25
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/rocky/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.6/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 3.6.8 (default, Sep 21 2021, 18:40:00) [GCC 8.4.1 20200928 (Red Hat 8.4.1-1)]

Ansible mit pip installieren

Pip kann verwendet werden, um Ansible auf unserem System zu installieren.

pip3 install ansible --user

Da ich in meinem Fall bereits Ansible installiert habe, bekomme ich dies

$ pip3 install ansible --user
Requirement already satisfied: ansible in /usr/lib/python3.6/site-packages (2.9.25)
Requirement already satisfied: jinja2 in /usr/lib/python3.6/site-packages (from ansible) (2.10.1)
Requirement already satisfied: PyYAML in /usr/lib64/python3.6/site-packages (from ansible) (3.12)
Requirement already satisfied: cryptography in /usr/lib64/python3.6/site-packages (from ansible) (3.2.1)
Requirement already satisfied: six>=1.4.1 in /usr/lib/python3.6/site-packages (from cryptography->ansible) (1.11.0)
Requirement already satisfied: cffi!=1.11.3,>=1.8 in /usr/lib64/python3.6/site-packages (from cryptography->ansible) (1.11.5)
Requirement already satisfied: MarkupSafe>=0.23 in /usr/lib64/python3.6/site-packages (from jinja2->ansible) (0.23)
Requirement already satisfied: pycparser in /usr/lib/python3.6/site-packages (from cffi!=1.11.3,>=1.8->cryptography->ansible) (2.14)

4. Testen der Ansible-Installation

Ansible verwendet ssh, um eine Verbindung herzustellen und Befehle auf dem Remote-Server auszuführen. Damit Ansible funktioniert, müssen wir sicherstellen, dass wir uns mit ssh mit dem Remote-Server verbinden können.

Um passwortloses SSH zum Remote-Server auszuführen, verwenden Sie diesen Befehl, um den SSH-Schlüssel zu generieren:

$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/rocky/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/rocky/.ssh/id_rsa.
Your public key has been saved in /home/rocky/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:vRdPlegZg17H4aMt30jQsiTYe0Jnh0zErhnSnuUQj3g [email protected]
The key's randomart image is:
+---[RSA 3072]----+
|           oo  . |
|         o.ooo+ o|
|        .o+*O=o*.|
|        ooE**=B..|
|        S++X+=o. |
|          =+.=o..|
|          . . o..|
|           .     |
|                 |
+----[SHA256]-----+

Kopieren Sie die ID auf den Remote-Server:

ssh-copy-id [email protected]

Erstellen Sie nun eine Inventardatei:

vim hosts

Mit diesem Inhalt:

10.2.40.182 ansible_ssh_user=fedora

Verwenden Sie das Ping-Modul, um Ansible zu testen:

$ ansible  -i hosts 10.2.40.182 -m ping
10.2.40.182 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/bin/python"
    },
    "changed": false,
    "ping": "pong"
}

Übergeben Sie für Befehle, die sudo benötigen, die Option --ask-become-pass . Dadurch wird nach dem Passwort für die Privilegienausweitung gefragt. Dies erfordert möglicherweise die Installation von sshpass Programm.

$ ansible  -i hosts 10.2.40.182 -m command -a "sudo yum install vim"  --ask-become-pass
BECOME password:
[WARNING]: Consider using 'become', 'become_method', and 'become_user' rather than running sudo

10.2.40.182 | CHANGED | rc=0 >>
Last metadata expiration check: 0:23:39 ago on Wed 03 Nov 2021 08:35:14 PM UTC.
Package vim-enhanced-2:8.2.3512-1.fc34.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!

Schlussfolgerung

In diesem Handbuch haben wir es geschafft, Ansible zu installieren und die Verbindung zu einem Remote-Server zu testen.


Cent OS
  1. So installieren und konfigurieren Sie Docker in Rocky Linux/Centos 8

  2. So installieren und konfigurieren Sie Redis 6 unter Rocky Linux/Centos 8

  3. So installieren Sie Erlang auf Rocky Linux/Alma Linux/CentOS 8

  4. So installieren und verwenden Sie Podman in Rocky Linux/Alma Linux/Centos 8

  5. So installieren und konfigurieren Sie Elasticsearch unter Rocky Linux 8

So installieren Sie Fish Shell unter CentOS 8 und Rocky Linux 8

So installieren Sie Webmin unter CentOS 8 und Rocky Linux 8

So installieren und konfigurieren Sie Jenkins in Rocky Linux/Centos 8

So installieren und konfigurieren Sie FreeIPA unter Rocky Linux/Centos 8

So installieren und konfigurieren Sie OpenCV unter Rocky Linux 8.4

So installieren und konfigurieren Sie Ansible AWX unter Rocky Linux 8.3 und CentOS 8