lxc_erstes_beispiel_ansible aktualisiert

kraeml 2023-09-28 07:43:31 +00:00
parent 7c00486864
commit c6bb540300
1 changed files with 75 additions and 4 deletions

@ -139,6 +139,16 @@ localhost ansible_connection=local
10.0.3.55 ansible_user=ubuntu
```
Der Eintrag in der Ansible-Inventardatei "10.0.3.110 ansible_user=ubuntu" enthält zusätzliche Konfigurationsinformationen für einen Host. Hier ist eine Erklärung:
- 10.0.3.110: Dies ist die IP-Adresse des Hosts, für den dieser Eintrag gilt. Ansible wird Aufgaben auf diesem Host ausführen.
- ansible_user=ubuntu: Dies ist eine Konfigurationsanweisung in Form von "Schlüssel=Wert". Sie gibt an, welchen Benutzernamen Ansible verwenden soll, wenn es sich auf diesem Host anmeldet.
In diesem Fall ist der Benutzername "ubuntu". Das bedeutet, dass Ansible den SSH-Zugriff auf den Host unter Verwendung des Benutzernamens "ubuntu" herstellen wird, wenn es Aufgaben ausführt, die eine Remote-Verbindung erfordern.
Zusammengefasst bedeutet dieser Eintrag in der Inventardatei, dass Ansible für den Host mit der IP-Adresse "192.0.3.110" den Benutzernamen "ubuntu" verwenden soll, wenn es Aufgaben auf diesem Host ausführt, die eine SSH-Verbindung erfordern. Dies ist hilfreich, um die Anmeldeinformationen für verschiedene Hosts anzugeben, wenn sie sich von den Standardwerten unterscheiden.
```bash
ansible -i inventory -m ping notme
vi inventory
@ -152,26 +162,87 @@ localhost ansible_connection=local
10.0.3.110 ansible_user=ubuntu ansible_password=ubuntu
10.0.3.55 ansible_user=ubuntu ansible_password=ubuntu
```
Der gegebene Ansible Inventory-Eintrag definiert eine Gruppe namens "notme", die zwei Hosts enthält. Jeder Host ist durch seine IP-Adresse identifiziert und hat die gleichen Ansible-Benutzer
anmeldeinformationen (ansible_user und ansible_password), nämlich "ubuntu" für beide.
Um dies mit Gruppenvariablen zu vereinfachen, könnten Sie die Gruppenvariablen in einer separaten Datei speichern. Hier ist, wie Sie das tun können:
Aktualisieren Sie Ihre Ansible Inventory-Datei, um die Hosts der Gruppe "notme" zu referenzieren und die Gruppenvariablen einzubeziehen. Ihre Inventory-Datei könnte dann so aussehen:
```ini
[notme]
10.0.3.110
10.0.3.55
[notme:vars]
ansible_password=ubuntu
ansible_user=ubuntu
```
Jetzt sind die Gruppenvariablen "ansible_user" und "ansible_password" in der Gruppenvariablen-Datei definiert und werden automatisch auf alle Hosts in der Gruppe "notme" angewendet. Dies erleichtert die Verwaltung und Aktualisierung der gemeinsamen Variablen für Ihre Gruppe.
```bash
ansible -i inventory -m ping notme
ansible -i inventory -m ping all
```
Die beiden Ansible-Kommandos führen beide das Modul "ping" auf den in Ihrer Inventory-Datei definierten Hosts aus, aber es gibt einen wichtigen Unterschied in den Zielgruppen:
1. ansible -i inventory -m ping notme
Dieses Kommando führt das "ping"-Modul nur auf den Hosts aus, die der Gruppe "notme" in Ihrer Inventory-Datei zugeordnet sind. Es beschränkt sich also auf die Hosts in dieser spezifischen Gruppe.
2. ansible -i inventory -m ping all
Dieses Kommando führt das "ping"-Modul auf allen Hosts aus, die in Ihrer Inventory-Datei aufgeführt sind. Es ignoriert die Gruppenzuordnungen und führt den Ping-Befehl auf jedem Host in der Datei aus, unabhängig von der Gruppenzugehörigkeit.
In Zusammenfassung:
- Das erste Kommando (ansible -i inventory -m ping notme) zielt nur auf die Hosts in der Gruppe "notme" ab.
- Das zweite Kommando (ansible -i inventory -m ping all) zielt auf alle in Ihrer Inventory-Datei aufgeführten Hosts ab, unabhängig von ihrer Gruppenzugehörigkeit.
```bash
vi ansible.cfg
cat ansible.cfg
```
```
[defaults]
inventory = ./inventory
```
Dieses Kommando verwendet den Texteditor "vi" (oder "vim") zum Erstellen oder Bearbeiten der Datei ansible.cfg. In diesem Fall wird versucht, die Datei ansible.cfg im aktuellen Ver
zeichnis zu öffnen. Diese Datei wird verwendet, um die Konfigurationseinstellungen für Ansible zu definieren. Sie können sie verwenden, um benutzerspezifische Einstellungen für Ansible festzulegen.
2. cat ansible.cfg
Dieses Kommando verwendet den Befehl "cat", um den Inhalt der Datei ansible.cfg auf der Konsole anzuzeigen. Es dient dazu, den aktuellen Inhalt der Konfigurationsdatei anzuzeigen.
In diesem Fall enthält die ansible.cfg-Datei die folgende Konfiguration:
```plaintext
[defaults]
inventory = ./inventory
```
Diese Konfiguration gibt an, dass die Standard-Inventory-Datei für Ansible im aktuellen Verzeichnis als inventory gefunden werden soll. Das bedeutet, dass Ansible diese Datei automatisch
verwenden wird, um Informationen über die verfügbaren Hosts und Gruppen zu finden, es sei denn, Sie geben eine andere Inventory-Datei explizit in Ihren Ansible-Befehlen an.
Zusammengefasst werden mit diesen beiden Befehlen die Ansible-Konfigurationsdatei erstellt oder bearbeitet und die darin definierte Konfiguration wird über den cat-Befehl angezeigt.
```bash
ansible -m ping all
ansible --version
```
```
...
ansible [core 2.12.4]
config file = /home/vagrant/ansible_lxc_bsa2/ansible.cfg
...
```
Das Kommando ansible --version wird verwendet, um Informationen über die installierte Ansible-Version anzuzeigen. Hier ist eine Erklärung für den gezeigten Auszug der Ausgabe:
- ansible [core 2.12.4]: Dieser Teil der Ausgabe zeigt die installierte Ansible-Version an. In diesem Fall handelt es sich um Ansible Core Version 2.12.4. Dies gibt an, welche Hauptversion
(2) und Nebenversion (12) von Ansible installiert ist, zusammen mit dem Patch-Level (4).
- config file = /home/vagrant/ansible_lxc_bsa2/ansible.cfg: Dieser Teil der Ausgabe gibt den Pfad zur Ansible-Konfigurationsdatei an. In diesem Fall befindet sich die Konfigurationsdatei
unter /home/vagrant/ansible_lxc_bsa2/ansible.cfg. Diese Datei enthält benutzerdefinierte Konfigurationseinstellungen für Ansible und kann verwendet werden, um das Verhalten von Ansible zu beeinflussen.
Die Ausgabe des ansible --version-Befehls ist nützlich, um schnell Informationen über die installierte Ansible-Version und die Konfigurationsdatei anzuzeigen, die Ansible verwendet. Dies
kann hilfreich sein, um sicherzustellen, dass Sie die richtige Version von Ansible verwenden und um auf die Konfigurationseinstellungen zugreifen zu können, die in der Konfigurationsdatei
definiert sind.