Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| centos:ansible:detail [08.01.2020 22:14. ] – [playbook - Beispiel] django | centos:ansible:detail [24.09.2022 14:26. ] (aktuell) – gelöscht django | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== Ansible - Erweiterte Konfigurationsbeispiele ====== | ||
| - | {{: | ||
| - | Nachdem wir uns bereits eingehend mit den **[[centos: | ||
| - | |||
| - | ===== Inventory ===== | ||
| - | Zur Verwaltung/ | ||
| - | |||
| - | Im Kapitel **[[centos: | ||
| - | |||
| - | Im Kapitel **[[https:// | ||
| - | |||
| - | {{page> | ||
| - | |||
| - | |||
| - | ==== hosts.yml ==== | ||
| - | Im Kapitel **[[centos: | ||
| - | |||
| - | In der Ansible-Konfigurationsdatei **''/ | ||
| - | |||
| - | < | ||
| - | |||
| - | [defaults] | ||
| - | |||
| - | # some basic default values... | ||
| - | |||
| - | # | ||
| - | ... | ||
| - | </ | ||
| - | |||
| - | Unsere erweiterte YAML-Konfigurationsdatei für die Hosts wolen wir aber künftig in der Ansible-Administationsumgebung unseres Admin-Users vorhalten und pflegen. Im Beispiel unseres Adminusers **django** wäre dies entsprechend der Pfad **''/ | ||
| - | |||
| - | Wir hinterlegen also dort, dass zukünftig die Inventory-Datei **'' | ||
| - | # vim / | ||
| - | |||
| - | < | ||
| - | |||
| - | # some basic default values... | ||
| - | |||
| - | # Django : 2020-01-01 | ||
| - | # default: # | ||
| - | inventory | ||
| - | </ | ||
| - | |||
| - | === inventory - Beispiel === | ||
| - | Dort legen wir uns unsere erweiteret Host-Datei im YAML-Format an. | ||
| - | $ vim / | ||
| - | |||
| - | <file bash / | ||
| - | all: | ||
| - | hosts: | ||
| - | n3r0.intra.nausch.org: | ||
| - | g33k.intra.nausch.org: | ||
| - | children: | ||
| - | centos8: | ||
| - | vars: # Variablen, die für die ganze Gruppe gelten | ||
| - | ansible_ssh_port: | ||
| - | ansible_ssh_user: | ||
| - | ansible_ssh_private_key_file: | ||
| - | hosts: | ||
| - | www8.dmz.nausch.org: | ||
| - | ansible_ssh_host: | ||
| - | centos7: | ||
| - | vars: # Variablen, die für die ganze Gruppe gelten | ||
| - | ansible_ssh_port: | ||
| - | ansible_ssh_user: | ||
| - | ansible_ssh_private_key_file: | ||
| - | hosts: | ||
| - | www7.dmz.nausch.org: | ||
| - | ansible_ssh_host: | ||
| - | # optische Abtrennung zu nachfolgenden Definitionen | ||
| - | ffmucgluon: | ||
| - | vars: # Variablen, die für die ganze Gruppe gelten | ||
| - | ansible_ssh_port: | ||
| - | ansible_ssh_user: | ||
| - | ansible_ssh_private_key_file: | ||
| - | contact_info: | ||
| - | hosts: | ||
| - | ff_pliening_gbw_ug: | ||
| - | hostname: ff_pliening_gbw_ug | ||
| - | latitude: -48.19861319429455 | ||
| - | longitude: -168.2017571420684 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: TP-Link TL-WDR4300 v1 | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_egod: | ||
| - | hostname: ffplieninggbwegod | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198652080 | ||
| - | longitude: 11.797969940 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_ogod: | ||
| - | hostname: ffplieninggbwogod | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198699460 | ||
| - | longitude: 11.798053090 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_dgod: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |||
| - | ff_pliening_gbw_cpod: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |||
| - | ff_pliening_gbw_kvm_ol: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |||
| - | ... #YAML end syntax</ | ||
| - | |||
| - | |||
| - | Die YAML-Konfigurationsdatei enthält entsprechende Bemerkungen, | ||
| - | |||
| - | <WRAP center round info 100%> | ||
| - | Natürlich gilt zu bedenken, dass das gezeigte Beispiel mit nur 8 Hosts und überschaubaren Variablen doch schon recht umfangreich geworden ist, wenn dies alles in eine Inventory-Datei gepackt wird. Bei Dutzenden oder Hunderten von Maschinen wird dies dann daraus schwer zu handeln - von verschachtelten Gruppen in Gruppen, oder Host die Mitglied in mehreren Gruppen sein sollen, sprechen wir dann besser gar nicht. Hier werden wir später auf eine andere/ | ||
| - | </ | ||
| - | |||
| - | /* Viele Hinweise und Beispiel zu den Gruppen finden sich auch hier im Kapitel **[[https:// | ||
| - | |||
| - | === playbook - Beispiel === | ||
| - | Unsere gerade angelegte Inventory-Datei wollen wir nun verwenden um die Geolocation-Daten unserer Freifunk-Knoten zu organisieren. Die Geodaten sind in der obigen Inventory-Datei in den beiden Variablen **'' | ||
| - | $ ~/ | ||
| - | |||
| - | <file bash ~/ | ||
| - | --- | ||
| - | - hosts: ffmucgluon | ||
| - | gather_facts: | ||
| - | |||
| - | tasks: | ||
| - | - name: "Set GEO location of our own ffmuc-nodes" | ||
| - | # | ||
| - | raw: uci set gluon-node-info.@location[0]=" | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME | ||
| - | |||
| - | ==== Inventarisierung größerer Umgebungen ==== | ||
| - | |||
| - | FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME FIXME | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | /* | ||
| - | |||
| - | <file bash 08_set_location.yml> | ||
| - | --- | ||
| - | - hosts: ffmucgluon | ||
| - | gather_facts: | ||
| - | |||
| - | tasks: | ||
| - | - name: "Set GEO location of our own ffmuc-nodes" | ||
| - | # | ||
| - | raw: uci set gluon-node-info.@location[0]=" | ||
| - | </ | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | <file bash / | ||
| - | |||
| - | centos8: | ||
| - | vars: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |||
| - | centos7: | ||
| - | vars: | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | | ||
| - | |||
| - | ffmucgluon: | ||
| - | vars: | ||
| - | ansible_ssh_port: | ||
| - | ansible_ssh_user: | ||
| - | ansible_ssh_private_key_file: | ||
| - | contact_info: | ||
| - | hosts: | ||
| - | ff_pliening_gbw_ug: | ||
| - | hostname: ff_pliening_gbw_ug | ||
| - | latitude: -48.19861319429455 | ||
| - | longitude: -168.2017571420684 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: TP-Link TL-WDR4300 v1 | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_egod: | ||
| - | hostname: ffplieninggbwegod | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198652080 | ||
| - | longitude: 11.797969940 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_ogod: | ||
| - | hostname: ffplieninggbwogod | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198699460 | ||
| - | longitude: 11.798053090 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_dgod: | ||
| - | hostname: ffplieninggbwdgod | ||
| - | prettyhostname: | ||
| - | latitude: 48.198671230 | ||
| - | longitude: 11.798122820 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_cpod: | ||
| - | hostname: ffplieninggbwcpod | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198726280 | ||
| - | longitude: 11.798159030 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Ubiquiti UniFi-AC-MESH | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ff_pliening_gbw_kvm_ol: | ||
| - | hostname: ffplieninggbwkvmol | ||
| - | pretty_hostname: | ||
| - | latitude: 48.198646720 | ||
| - | longitude: 11.798047720 | ||
| - | branch: stable | ||
| - | domain: ffmuc_muc_ost | ||
| - | director: ffmuc_muc_ost | ||
| - | modell: Red Hat KVM | ||
| - | ansible_ssh_host: | ||
| - | |||
| - | ... #YAML end syntax</ | ||
| - | |||
| - | $ ansible-playbook -v 08_set_location.yml | ||
| - | < | ||
| - | Using / | ||
| - | BECOME password: | ||
| - | |||
| - | PLAY [ffmucgluon] **************************************************************************************************************************************************************** | ||
| - | |||
| - | TASK [Set GEO location of our own ffmuc-nodes] *********************************************************************************************************************************** | ||
| - | changed: [ff_pliening_gbw_egod] => {" | ||
| - | changed: [ff_pliening_gbw_dgod] => {" | ||
| - | changed: [ff_pliening_gbw_ogod] => {" | ||
| - | changed: [ff_pliening_gbw_cpod] => {" | ||
| - | changed: [ff_pliening_gbw_ug] => {" | ||
| - | changed: [ff_pliening_gbw_kvm_ol] => {" | ||
| - | |||
| - | PLAY RECAP *********************************************************************************************************************************************************************** | ||
| - | ff_pliening_gbw_cpod | ||
| - | ff_pliening_gbw_dgod | ||
| - | ff_pliening_gbw_egod | ||
| - | ff_pliening_gbw_kvm_ol | ||
| - | ff_pliening_gbw_ogod | ||
| - | ff_pliening_gbw_ug | ||
| - | </ | ||
| - | |||
| - | https:// | ||
| - | */ | ||