So installieren und konfigurieren Sie Ansible auf Debian 10

So installieren und konfigurieren Sie Ansible auf Debian 10

Ansible ist ein kostenloses und einfach zu verwendendes Automatisierungswerkzeug zum Verwalten mehrerer Remote -Hosts von der einzelnen Maschine. 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 Hosts auszuführen.

In diesem Tutorial können Sie Ansible auf Debian 10 Linux -Systemen installieren und konfigurieren.

Voraussetzungen

Für dieses Tutorial habe ich die folgenden Hosts:

  • Ein Steuerknoten - Um Ihr Infra mit Ansible zu erstellen, benötigen Sie einen Steuerknoten, auf dem Ansible Server ausgeführt wird. Dies ist als Ansible Control Node bekannt.
  • Ein oder mehrere Gastgeber - Wir haben drei Hosts, die mit verschiedenen 2-Betriebssystemen laufen.
    • Zwei Gastgeber mit Ubuntu 20.04 LTS
    • Ein Gastgeber mit CentOS 8

Schritt 1 - SSH -Tasten konfigurieren

Ansible Control Node verwendet SSH -Verbindung, um Hosts zu verbinden. Sie können Ansible konfigurieren, um Hosts mithilfe des Kennworts oder dem Schlüsselbasis SSH-Zugriff zu verbinden. In diesem Tutorial verwenden wir sowohl (Passwort- als auch wichtige SSH -Typen), um Hosts vom Steuerknoten zu verbinden.

Melden Sie sich beim Ansible -Steuerknoten an und generieren Sie das SSH -Schlüsselpaar (falls nicht generiert):

ssh -keygen -t RSA  

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

Kopieren Sie dann den öffentlichen Schlüssel in die Remote-Hosts. Sie müssen sich über die Schlüsselbasis verbinden:

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 Debian

Die ansiblen Debian -Pakete sind im Rahmen des offiziellen APT -Repositorys erhältlich. Sie müssen nur die PPA zu Ihrem System hinzufügen. Verwenden Sie den folgenden Befehl, um Ihrem System das Debian -Repository für das Debian hinzuzufügen:

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 Debian -System zu installieren oder zu aktualisieren

sudo APT -Update  sudo apt installieren Ansible  

Drücken Sie 'y' für die gesamte Installationsbestätigung, um den Installationsprozess abzuschließen. Als nächstes müssen Sie Ansible Server konfigurieren

Schritt 3 - Inventardatei erstellen

Sie haben Ansible Server auf Ihrem Steuerknoten installiert.

Jetzt müssen Sie die Hosts zum Ansible -Server hinzufügen. Ansible ermöglicht es, Hosts in der Form von Hosts und Gruppen zu verwalten. Die Gruppen werden verwendet, um eine Aufgabe auf allen darunter definierten Remote -Hosts auszuführen.

Ein einzelner Host kann zu mehreren Gruppen hinzugefügt werden. Bearbeiten Sie die Konfigurationsdatei ansible Hosts. Zum Beispiel:

sudo nano/etc/ansible/hosts  

Fügen Sie Ihre Hosts hinzu und organisieren Sie sie mit Gruppen:

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

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

Pro Hostkonfiguration

Sie können Konfigurationsdateien für einzelne Hosts erstellen. Alle Hosts -Konfigurationsdatei befinden sich im Verzeichnis/etc/ansible/host_var.

sudo mkdir/etc/ansible/host_vars/  sudo vi/etc/ansible/host_vars/web-host1  
  • 1'st Host -/etc/ansible/host_vars/web Host1
    Ansible_SSH_HOST: 10.0.1.101 Ansible_SSH_port: 22 Ansible_SSH_USER: root 
  • 2'nd Host -/etc/ansible/host_vars/webhost2
    Ansible_SSH_HOST: 10.0.1.102 ANSIBLE_SH_PORT: 22 ANSIBLE_SH_USER: WOOT 
  • 3'rd Host -/etc/ansible/host_vars/db -host1
    Ansible_SSH_HOST: 10.0.1.103 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 auf Debian 10 Linux -System zu installieren und zu konfigurieren.