So installieren und konfigurieren Sie Ansible auf Ubuntu 20.04

So installieren und konfigurieren Sie Ansible auf Ubuntu 20.04

Ansible ist ein Automatisierungswerkzeug zum Verwalten mehrerer Remote -Hosts von der Einzelmaschine. Es bietet Ihnen ein einfach zu konfiguriertes für eine große Anzahl von Remote -Hosts. Beispielsweise führen Sie dieselben Aufgaben über mehrere Maschinen aus. Ansible bietet Ihnen die Möglichkeit, diese Aufgaben zu automatisieren.

Ansible ist eine bessere Alternativen der anderen beliebten Infrastruktur -Automatisierungswerkzeuge wie Koch und Puppe. Sie müssen keine Client -Software auf Knoten installieren, um über Ansible Server zu verwalten. Es verwendet SSH -Verbindung, um Aufgaben auf Knoten auszuführen.

In diesem Tutorial können Sie Ansible auf Ubuntu 20 installieren und konfigurieren.04 LTS Linux -Systeme.

Voraussetzungen

Wir haben einen Steuerknoten, um Ansible Server und drei Knotenserver zu konfigurieren, um verwaltet zu werden. Hier läuft der Steuerknoten mit Ubuntu 20.04 Linux -System. Der erste und der dritte Knoten läuft mit Ubuntu 18.04 Server und der zweite Knoten werden mit CentOS 7 -Server ausgeführt.

Hier finden Sie eine Liste von Knoten mit IP -Adresse und Hostnamen:

  • Steuerknoten - 10.0.1.10 (Steuerknoten)
  • Erster Knoten - 10.0.1.101 (Web-Host1)
  • Zweiter Knoten - 10.0.1.102 (Web-Host2)
  • Dritter Knoten - 10.0.1.103 (DB-Host1)
  • Schritt 1 - SSH -Tasten einrichten

    Sie können wichtige SSH für die Remote Linux Ansible -Hosts konfigurieren. Für SSH ist kein Passwort erforderlich. Mit Ansible können Sie auch ein Kennwort für SSH verwenden, aber wichtiger SSH ist sicherer.

    Melden Sie sich beim Steuerknoten an (10.0.1.10) und generieren SSH -Schlüsselpaar:

    ssh -keygen -t RSA  

    Drücken Sie einfach auf "Eingeben" zu allen vom Befehl gefragten Eingaben.

    Kopieren Sie den öffentlichen Schlüssel zu allen Ihren Remote -Knoten, die Sie über SSH -Protokolle verbinden müssen.

    ssh-copy-id -i ~/.ssh/id_rsa.Pub [E -Mail geschützt]  ssh-copy-id -i ~/.ssh/id_rsa.Pub [E -Mail geschützt]  ssh-copy-id -i ~/.ssh/id_rsa.Pub [E -Mail geschützt]  

    Schritt 2 - Installieren von Ansible auf Ubuntu

    Sie können Ansible Server aus offiziellen Paket -Repositories auf Ubuntu -System installieren. Das hat die neuesten Debian -Pakete. Führen Sie den folgenden Befehl aus, um Ansible PPA auf Ihrem Ubuntu -System einzurichten.

    sudo APT-add-Repository PPA: Ansible/Ansible  

    Software Updater Utility aktualisiert den Paket -Cache auf Ihrem System. Sie müssen also den folgenden Befehl ausführen, um Ansible in Ihrem Ubuntu -System zu installieren oder zu aktualisieren

    sudo APT -Update  sudo apt installieren Ansible  

    Geben Sie 'y' ein, damit die gesamte Installationsbestätigung zum Abschluss des Installationsprozesses abgeschlossen ist. Als nächstes müssen Sie Ansible Server konfigurieren

    Schritt 3 - Inventardatei konfigurieren

    Ihr Server ist bereit für Remote -Hostverwaltung und Automatisierung. Sie können eine Reihe von Hosts haben, die Sie benötigen, und diese mit einem einzigen Ansible -Server verwalten.

    Hier müssen Sie Ihre Remote -Systeme in den ansiblen Hosts -Dateien (/etc/ansible/hosts) definieren. Sie können auch Gruppen von Hosts mit ähnlichen Typen erstellen. Hier müssen Sie Ihre Hosts ordnungsgemäß in Gruppen organisieren. Gruppen werden verwendet, um eine Aufgabe auf allen darunter definierten Remote -Hosts auszuführen.

    Bearbeiten Sie die Konfigurationsdatei ansible Hosts. Für Exmaple:

    sudo nano/etc/ansible/hosts  

    Fügen Sie Ihre Gastgeber hinzu und organisieren Sie sie mit Gruppen. Ein Host kann unter mehreren Gruppen hinzugefügt werden.

    [Webservers] Web-Host1 Web-Host2 [DBSERVERS] DB-HOST1 

    Das folgende Bild hilft Ihnen, Gruppen und Hosts unter einer Gruppe zu verstehen.

    Einzelhost -VARS -Konfiguration

    Sie müssen Einstellungen für Ihre Hosts definieren. Die host-spezifische Datei muss mit demselben Namen wie Host (z. B. Web-Host1) unter dem Verzeichnis host_vars sein.

    sudo mkdir/etc/ansible/host_vars/  sudo vi/etc/ansible/host_vars/web-host1  

    Fügen Sie die SSH-Einstellungen dieser Datei für den Web-Host1 hinzu.

    Ansible_SSH_HOST: 10.0.1.101 Ansible_SSH_port: 22 Ansible_SSH_USER: root 

    Falls Sie Schritt 1 für die SSH -Verbindung für diesen Host nicht verwendet haben. Sie können auch eine der folgenden Methoden zur Konfigurationsdatei der Web-Hosts1 für die Authentifizierung hinzufügen.

    ansible_sssh_pass: secry_password ansible_sssh_private_key_file:/home/rahul/.SSH/AWS.Pem 

    Gruppenvarkonfiguration

    Sie können gemeinsame variable Einstellungen einer Gruppe unter Gruppenkonfigurationen konfigurieren. Der Gruppendateiname muss dem Gruppennamen (z. B.: Webserver) unter gleich sein gruppe_vars Verzeichnis.

    sudo mkdir/etc/ansible/gruppe_vars  sudo vi/etc/ansible/Group_vars/Webservers  

    Fügen Sie die gemeinsamen Variablen in dieser Datei hinzu, die von allen unter dieser Gruppe hinzugefügten Hosts verwendet werden.

    ansible_ssh_port: 22 ansible_sssh_user: root 

    Schritt 4 - Testen der Ansible -Verbindung

    Ihr Ansible ist bereit zu verwenden. Um alle Knotenkonnektivität zu testen, verwenden Sie das Ping -Modul. Melden Sie sich bei Ihrem Ansible -Server an und führen Sie den folgenden Befehl aus:

    Ansible -m Ping alle  

    Sie können die Konnektivität auch für den jeweiligen Host oder Gruppen testen.

    Ansible -m Ping Web -Host1  ## spezifischer Host  Ansible -m Ping -Webserver  ## spezifische Gruppe  

    Sie können auch jeden Linux -Befehl mit dem Ansible Shell -Modul ausführen. Führen Sie beispielsweise den folgenden Befehl aus, um den kostenlosen Speicher auf Web-Host1 zu testen1.

    Ansible -m Shell -a 'Free -m' Web -Host1  

    Sie können auch die gleiche Aufgabe für eine Gruppe ausführen. Verwenden Sie einfach den Gruppennamen anstelle von Hostname.

    Abschluss

    In diesem Tutorial haben Sie gelernt, Ansible Server auf Ubuntu 20 zu installieren.04 System. Auch konfigurierte Remote -Hosts, die mit Ansible Server verwaltet werden sollen.