Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
linux:ansible:playbook_example_09 [23.09.2022 12:49. ] – [Zusammenfassung] djangolinux:ansible:playbook_example_09 [30.11.2023 14:27. ] (aktuell) – [Ansible - Erweiterte Konfigurationsbeispiel: Inventory] Typofix django
Zeile 4: Zeile 4:
 Nachdem wir uns bereits eingehend mit den **[[basics#grundlagen|Grundlagen]]**, mit der **[[basics#installation|Installation von Ansible]]** und auch schon mit der Grundkonfiguration beschäftigt sowie erste Erfahrungen mit **[[playbooks|Playbooks]]** gesammelt haben, wollen wir uns nun mit der tiefer gehenden Konfiguration von Ansible beschäftigen. Ein wesentlicher Punkt, den wir bei unseren Überlegungen im Kapitel **[[detail|Ansible - Erweiterte Konfigurationsbeispiele]]** angestellt hatten, war unter anderem **//Woher beziehen wir die Hostdefinitionen und deren Eigenschaften?//**. Nachdem wir uns bereits eingehend mit den **[[basics#grundlagen|Grundlagen]]**, mit der **[[basics#installation|Installation von Ansible]]** und auch schon mit der Grundkonfiguration beschäftigt sowie erste Erfahrungen mit **[[playbooks|Playbooks]]** gesammelt haben, wollen wir uns nun mit der tiefer gehenden Konfiguration von Ansible beschäftigen. Ein wesentlicher Punkt, den wir bei unseren Überlegungen im Kapitel **[[detail|Ansible - Erweiterte Konfigurationsbeispiele]]** angestellt hatten, war unter anderem **//Woher beziehen wir die Hostdefinitionen und deren Eigenschaften?//**.
  
-Klar ist natürlich dass sich da eine Hobby-mässige Installation mit einer Hand voll Geräten sich wohl erheblich von einer professionellen Umgebung mit hunderten oder gar mehr Hosts unterscheiden wird. Bei ersteren wird man vermutlich alle Information bestmöglich versuchen z.B. in einer Datei oder in einem Verzeichnis vor zuhalten. Bei grösseren Installationen wird man hingegen eine **CMDB**((**C**onfiguration **M**anagement **D**ata**B**ase)) zurück greifen und dort die Informationen pflegen, wie z.B.:+Klar ist natürlich dass sich da eine Hobby-mässige Installation mit einer Hand voll Geräten sich wohl erheblich von einer professionellen Umgebung mit hunderten oder gar mehr Hosts unterscheiden wird. Bei ersteren wird man vermutlich alle Information bestmöglich versuchen z.B. in einer Datei oder in einem Verzeichnis vor zuhalten. Bei grösseren Installationen wird man hingegen eine **[[#cmdb-basierte_professionelle_umgebungen|CMDB]]**((**C**onfiguration **M**anagement **D**ata**B**ase)) zurück greifen und dort die Informationen pflegen, wie z.B.:
   * **[[https://www.cmdbuild.org|CMDBuild -Platform for Asset Management]]**   * **[[https://www.cmdbuild.org|CMDBuild -Platform for Asset Management]]**
   * **[[https://www.i-doit.org/|i-doit - Open Source CMDB & ITSM Tool ]]**   * **[[https://www.i-doit.org/|i-doit - Open Source CMDB & ITSM Tool ]]**
   * **[[https://www.combodo.com/itop-193|iTop - IT Service Management & CMDB iTop - IT Service Management & CMDB]]**   * **[[https://www.combodo.com/itop-193|iTop - IT Service Management & CMDB iTop - IT Service Management & CMDB]]**
  
-Egal was wir als Bai verwenden, Ziel sollte immer sein aus den aktuell gepflegten Daten alle Informationen so für Ansible aufzubereiten, dass alle relevanten Daten, die zum Abarbeiten eines Playbooks benötigt werden, auch zur Verfügung stehen.+Egal was wir als Basis verwenden, Ziel sollte immer sein aus den aktuell gepflegten Daten alle Informationen so für Ansible aufzubereiten, dass alle relevanten Daten, die zum Abarbeiten eines Playbooks benötigt werden, auch zur Verfügung stehen.
  
 ===== Inventory ===== ===== Inventory =====
Zeile 152: Zeile 152:
 </WRAP> </WRAP>
  
-Hier werden wir später auf eine **[[#inventarisierung_groesserer_umgebungen|andere/aufgeteilte Lösung]]** einschwenken müssen. +Hier werden wir später auf eine **[[#komplexere_und_groessere_umgebungen|andere/aufgeteilte Lösung]]** einschwenken müssen. 
  
 </WRAP> </WRAP>
Zeile 176: Zeile 176:
 }</font> }</font>
 <font style="color: rgb(0, 0, 0)"> <font style="color: rgb(0, 0, 0)">
-... +...</font>
-</font>+
 </pre> </pre>
 </html> </html>
Zeile 342: Zeile 341:
  
 ==== CMDB-basierte professionelle Umgebungen ==== ==== CMDB-basierte professionelle Umgebungen ====
-Wie schon im vorhergehenden Beispiel angemerkt, wird es zum einen bei professionellen Umgebungen, nicht mehr praktikabel pflegbar sein, alle Infoarmastionen in einer YML-Datei mit verschiedenen Host- oder Gruppen basierenden Variablen-Definitionen versuchen vor zuhalten. Der Export und das automatische Generieren von Inventory-Daten in strukturierter **''bash''**-Notation eignet sich hier wesentlich besser!  +Wie schon im vorhergehenden Beispiel angemerkt, wird es zum einen bei professionellen Umgebungen, nicht mehr praktikabel pflegbar sein, alle Informationen in einer YML-Datei mit verschiedenen Host- oder Gruppen basierenden Variablen-Definitionen versuchen vor zuhalten. Der Export und das automatische Generieren von Inventory-Daten in strukturierter **''bash''**-Notation eignet sich hier wesentlich besser!  
  
-Bei der Grundkonfiguration unserer Absible-Umgebung mit Hilfe des Ansible-Playbooks **''[[playbook_example_08#aufgabenstellung_2_-_erweiterte_grund-_basis-installation_fuer_ansible-vault|~/ansible/playbooks/ansible_grundconfig_v2.yml]]''** wurde bereits das entsprechend benötigte  **[[first#ansibledirectory_layout|Ansible: Directory Layout]]** automatisch angelegt.+Bei der Grundkonfiguration unserer Ansible-Umgebung mit Hilfe des Ansible-Playbooks **''[[playbook_example_08#aufgabenstellung_2_-_erweiterte_grund-_basis-installation_fuer_ansible-vault|~/ansible/playbooks/ansible_grundconfig_v2.yml]]''** wurde bereits das entsprechend benötigte  **[[first#ansibledirectory_layout|Ansible: Directory Layout]]** automatisch angelegt.
 <code>inventories/production/ <code>inventories/production/
 ├── group_vars ├── group_vars
Zeile 460: Zeile 459:
 host_sshjump: "vml070010"</file> host_sshjump: "vml070010"</file>
  
-Unser Inventory hat nun in etwa folgenden strukturellen Aufbau:+Unser Inventory hat nun in etwa nachfolgenden strukturellen Aufbau, bei dem auch wieder die entsprechend gekürzt und die Stellen mit Hilfe von **''%%...%%''** markiert wurden.
 <code>inventories/production/ <code>inventories/production/
 ├── group_vars ├── group_vars
Zeile 507: Zeile 506:
     ├── vml050010     ├── vml050010
     ├── vml050020     ├── vml050020
 +    │   ├── vhosts
 +    │   └── hostconfig
     ├── vml000030     ├── vml000030
     │   ├── exporter     │   ├── exporter
Zeile 538: Zeile 539:
  
  
-===== lorem ipsum dolor sit amet ===== +====== Links ====== 
- +  * **[[detail|zurück zum Kapitel "Ansible - Erweiterte Konfigurationsbeispiele"]] <= ** 
-:KRIT: FIXME :KRIT:+  * **=> [[playbook_example_10|weiter zum Kapitel "Ansible Controll Node]]** 
 +  * **[[start|Zurück zur "Ansible"-Übersicht]]** 
 +  * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]** 
 +  * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]**
  • linux/ansible/playbook_example_09.1663937353.txt.gz
  • Zuletzt geändert: 23.09.2022 12:49.
  • von django