centos:ansible:playbooks1

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
Nächste ÜberarbeitungBeide Seiten der Revision
centos:ansible:playbooks1 [20.06.2020 18:59. ] – [Verzeichnis-Struktur] djangocentos:ansible:playbooks1 [28.06.2020 14:10. ] – [07: Mit Hilfe von Ansible einen Offloader auf Basis eines Raspberry 4B bauen] django
Zeile 28: Zeile 28:
  
   tasks:   tasks:
-    - name: Make sure we have a group 'ruben' for our new admin-user 'ruben'+    - name: Make sure we have a group '{{ createuser }}' for our new admin-user '{{ createuser }}'
       group:       group:
         name: '{{ createuser }}'         name: '{{ createuser }}'
Zeile 34: Zeile 34:
         state: present         state: present
  
-    - name: Add the user 'ruben' with a specific uid and a primary group of 'ruben'+    - name: Add the user '{{ createuser }}' with a specific uid and a primary group of '{{ createuser }}'
       user:       user:
         name: '{{ createuser }}'         name: '{{ createuser }}'
Zeile 42: Zeile 42:
         state: present         state: present
  
-    - name: Initial password generation for user 'ruben+    - name: Initial password generation for user '{{ createuser }}
-      shell: usermod -p $(echo '{{ createpassword }}' | openssl passwd -1 -stdin) {{ createuser }}</file>+      shell: usermod -p $(echo '{{ createpassword }}' | openssl passwd -1 -stdin) {{ createuser }} 
 +...</file>
  
 === Script Beschreibung === === Script Beschreibung ===
Zeile 67: Zeile 68:
   * Zeile **26**: **''name''**: Beschreibender Text(//Initial password generation for user 'ruben'//), der später beim Aufruf von **''ansible-playbooks''** ausgegeben werden soll.   * Zeile **26**: **''name''**: Beschreibender Text(//Initial password generation for user 'ruben'//), der später beim Aufruf von **''ansible-playbooks''** ausgegeben werden soll.
   * Zeile **27**: **''shell:''** Ansible Module **[[https://docs.ansible.com/ansible/latest/modules/shell_module.html|shell]]** welches zum Ausführen von Shell-Befehlen auf dem Zielsystem verwendet werden kann. Hiermit setzen wir das Passwort unseres gerade angelegten Users 'ruben'.   * Zeile **27**: **''shell:''** Ansible Module **[[https://docs.ansible.com/ansible/latest/modules/shell_module.html|shell]]** welches zum Ausführen von Shell-Befehlen auf dem Zielsystem verwendet werden kann. Hiermit setzen wir das Passwort unseres gerade angelegten Users 'ruben'.
 +  * Zeile **28**: **''%%...%%''** Endekennzeichen der YML-Datei
 +
  
 === Script ausführen === === Script ausführen ===
 Nun wollen wir unser ersten Playbook ausführen, um auf dem Zielhost den gewünschten Benutzer anzulegen; hierzu rufen wir unser Script wie folgt auf: Nun wollen wir unser ersten Playbook ausführen, um auf dem Zielhost den gewünschten Benutzer anzulegen; hierzu rufen wir unser Script wie folgt auf:
-   $ ansible-playbook -v 01_create-user.yml+   $ ansible-playbook -v 01_create-user.yml --limit=demo 
 + 
 +<WRAP center round tip 80%> 
 +Da wir den User erst einmal nur auf dem Host **demo** anlegen wollen, \\ schränken wir beim Aufruf des Playbooks die Ausführung mit dem Parameter **''limit=''** entsprechend ein. 
 +</WRAP> 
  
 <html><pre class="code"> <html><pre class="code">
Zeile 155: Zeile 163:
         group: root         group: root
         mode: "0440"         mode: "0440"
-        validate: visudo -cf %s</file>+        validate: visudo -cf %s 
 +...</file>
  
 === Script Beschreibung === === Script Beschreibung ===
Zeile 166: Zeile 175:
   * Zeile **8**: **''name''**: Beschreibender Text (//All users from groub 'wheel' are allowed sudo users//), der später beim Aufruf von **''ansible-playbooks''** ausgegeben werden soll.   * Zeile **8**: **''name''**: Beschreibender Text (//All users from groub 'wheel' are allowed sudo users//), der später beim Aufruf von **''ansible-playbooks''** ausgegeben werden soll.
   * Zeile **9 - 15**: **''copy:''** Ansible Module **[[https://docs.ansible.com/ansible/latest/modules/copy_module.html|copy]]** welches zum Kopieren, verändern und auch Löschen von Dateien herangezogen werden kann.    * Zeile **9 - 15**: **''copy:''** Ansible Module **[[https://docs.ansible.com/ansible/latest/modules/copy_module.html|copy]]** welches zum Kopieren, verändern und auch Löschen von Dateien herangezogen werden kann. 
 +  * Zeile **16**: **''%%...%%''** Endekennzeichen der YML-Datei
 === Script ausführen === === Script ausführen ===
 Nun wollen wir unser ersten Playbook ausführen, um auf dem Zielhost eine Datei mit dem gewünschten Inhalt ablegen; hierzu rufen wir unser Script wie folgt auf: Nun wollen wir unser ersten Playbook ausführen, um auf dem Zielhost eine Datei mit dem gewünschten Inhalt ablegen; hierzu rufen wir unser Script wie folgt auf:
Zeile 240: Zeile 249:
  
     - include_tasks: 02_passwd_sudo_wheel.yml     - include_tasks: 02_passwd_sudo_wheel.yml
 +...
 </file> </file>
  
Zeile 351: Zeile 361:
         - ansible_facts['distribution'] == "CentOS"         - ansible_facts['distribution'] == "CentOS"
         - ansible_facts['distribution_major_version'] == "7"         - ansible_facts['distribution_major_version'] == "7"
 +...
 </file> </file>
  
Zeile 832: Zeile 842:
         state: started          state: started 
         enabled: yes         enabled: yes
 +...
 </file> </file>
  
Zeile 986: Zeile 996:
       #https://docs.ansible.com/ansible/latest/modules/raw_module.html       #https://docs.ansible.com/ansible/latest/modules/raw_module.html
       raw: uci set gluon-node-info.@owner[0].contact=' Django [BOfH] django@nausch.org | chat -> @django' ; uci commit       raw: uci set gluon-node-info.@owner[0].contact=' Django [BOfH] django@nausch.org | chat -> @django' ; uci commit
 +...
 </file> </file>
  
Zeile 1029: Zeile 1039:
  
 ==== 07: Mit Hilfe von Ansible einen Offloader auf Basis eines Raspberry 4B bauen ==== ==== 07: Mit Hilfe von Ansible einen Offloader auf Basis eines Raspberry 4B bauen ====
-In diesem Konfigurationsbeispiel wollen wir möglichst einfach und schnell einen Offloader für **[[https://ffmuc.net|Freifunk München]] auf Basis eines **[[https://www.raspberrypi.org/products/raspberry-pi-4-model-b/|Raspberry 4B]] befassen. Dabei gehen wir auf unterschiedliche Konfigurations-Optionen ein und wollen dennoch die Einstiegshürden für den ungeübteren Ansible und Linux-User möglichst tief ansetzen.+In diesem **[[centos:ansible:ffmuc-rpb4-ol|Konfigurationsbeispiel]]** wollen wir möglichst einfach und schnell einen Offloader für **[[https://ffmuc.net|Freifunk München]] auf Basis eines **[[https://www.raspberrypi.org/products/raspberry-pi-4-model-b/|Raspberry 4B]] befassen. Dabei gehen wir auf unterschiedliche Konfigurations-Optionen ein und wollen dennoch die Einstiegshürden für den ungeübteren Ansible und Linux-User möglichst tief ansetzen.  
 + 
 +Die detaillierte Beschreibung hierzu ist im Kapitel **[[centos:ansible:ffmuc-rpb4-ol|Bau eines Freifunk-Offloaders auf Basis eines Raspberry 4B]]** zu finden. 
 +====== Links ====== 
 +  * **[[centos:ansible:first|zurück zum Kapitel "Erste Schritte Rund um Ansible"]] <= ** 
 +  * **=> [[centos:ansible:detail|weiter zum Kapitel "Ansible - Erweiterte Konfigurationsbeispiele]]** 
 +  * ** [[centos:ansible:start|Zurück zur "Ansible"-Übersicht]]** 
 +  * **[[wiki:start|Zurück zu >>Projekte und Themenkapitel<<]]** 
 +  * **[[http://dokuwiki.nausch.org/doku.php/|Zurück zur Startseite]]** 
  
-Das entsprechende **Howto** findet sich im Detail auf folgender Seite **[[centos:ansible:ffmuc-rpb4-ol|hier]]**.