Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:ansible

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
wiki:ansible [2024/01/21 23:09] – [System Einrichtung] techguruwiki:ansible [2024/04/07 12:38] (aktuell) – [Poweroff] pulsar
Zeile 1: Zeile 1:
- 
 ====== Ansible ====== ====== Ansible ======
  
Zeile 14: Zeile 13:
 ===== System Einrichtung ===== ===== System Einrichtung =====
  
-Zunächst ist das Paket ''ansible'' sowie ''sshpass'' zu installieren. Da Ansible default SSH keys verwendet, aber bei der Ersteinrichtung zunächst den Nutzer pi verwendet und hier SSH Passwort Authentifizierung genutzt wird.+Auf dem Ansible Kommando Rechner ist das Paket ''ansible'' sowie ''sshpass'' zu installieren. Da Ansible default SSH keys verwendet, aber bei der Ersteinrichtung zunächst den Nutzer pi verwendet und hier SSH Passwort Authentifizierung genutzt wird.
  
   apt install ansible sshpass   apt install ansible sshpass
Zeile 34: Zeile 33:
   ansible-playbook --limit iglu Start_playbook.yml -k   ansible-playbook --limit iglu Start_playbook.yml -k
  
-=== Ansible Ersteinrichtung auf localhost === +=== Ansible Ersteinrichtung === 
-Die Angabe des Hostnamen einfach weglassen wenn es auf localhost ausgeführt wirdDamit einfacher und universeller einsetzbar mit dem folgenden Kommando:+Die Angabe des Hostnamen kann weglassen werden wenn im playbook der hostname, z.B. localhost schon bei hosts: drin stehtDa das Playbook aber nicht nur auf dem Ansible Kommando Rechner ausgeführt werden soll sondern für jeden Host eingesetzt wird, steht bei hostsall. Hier kann man beim Ausführen des Playbooks mit --limit dann angeben auf welchen Host es aktuell ausgeführt werden soll.
  
-  ansible-playbook Start_playbook.yml -k+  ansible-playbook -k --limit iglu start_sshlogin.yml
  
 <code php> <code php>
  ---  ---
- - hosts: localhost+ - hosts: all
    vars:    vars:
      devops_password: '$6$OfKLYEUGj4tcy$6KJS3UQARnmXqasJaIvWsS1pwUbrpQBvxbxJ55PryPPI604TgsS31lnhKo8'      devops_password: '$6$OfKLYEUGj4tcy$6KJS3UQARnmXqasJaIvWsS1pwUbrpQBvxbxJ55PryPPI604TgsS31lnhKo8'
Zeile 71: Zeile 70:
  
 Nach der Ausführung des ''Start_playbook.yml'' ist der neue Backup Nutzer angelegt. Als diesen kann man sich nun anmelden und der ''/home/pi/xy/Konfiguration/'' sollte zum neuen Ansible Kontroll-Nutzer **verschoben** werden. Nach der Ausführung des ''Start_playbook.yml'' ist der neue Backup Nutzer angelegt. Als diesen kann man sich nun anmelden und der ''/home/pi/xy/Konfiguration/'' sollte zum neuen Ansible Kontroll-Nutzer **verschoben** werden.
 +
 +Neu:
 +In das Verzeichnis ''/home/tux/Dokumente/Konfiguration/Ansible/'' wechseln. Hier das ''ansible-playbook'' Kommando für das gewünschte Playbook ausführen. Da hier die ansible.cfg liegt und diese automatisch genutzt wird, wenn man sich im selben Pfad befindet:
 +
 +  ansible-playbook hauptkonfig.yml
 +
 +
 +Alt:
 Ausserdem ist die ''ansible.cfg'' und das Inventory(hosts) nach ''/etc/ansible/'' zu **kopieren**.  Ausserdem ist die ''ansible.cfg'' und das Inventory(hosts) nach ''/etc/ansible/'' zu **kopieren**. 
 Es ist darauf zu achten, dass die Berechtigungen für ''/etc/ansible/'' nur für den neuen Ansible Kontroll-Nutzer lesend und maximal schreibend sind. Es ist darauf zu achten, dass die Berechtigungen für ''/etc/ansible/'' nur für den neuen Ansible Kontroll-Nutzer lesend und maximal schreibend sind.
Zeile 82: Zeile 89:
  
  
-==== Updates für alle Systeme ====+ 
 +==== Updates für Suse ==== 
 + 
 +  ansible localhost -m zypper -a "update_cache=yes state=latest name='*'" --become -K 
 + 
 + 
 +==== Updates für alle Debian Systeme ====
  
 Alle Rechner im Netzwerk gleichzeitig mit Updates versorgen. Dafür braucht man kein extra Playbook schreiben, hier reicht auch ein Ad-Hoc Kommando. Alle Rechner im Netzwerk gleichzeitig mit Updates versorgen. Dafür braucht man kein extra Playbook schreiben, hier reicht auch ein Ad-Hoc Kommando.
Zeile 89: Zeile 102:
  
   ansible all -m shell -a "sudo apt update && sudo apt autoremove && sudo apt upgrade -y"   ansible all -m shell -a "sudo apt update && sudo apt autoremove && sudo apt upgrade -y"
-   
-Anzeigen der SCSI Harddisk ID und der dazugehörigen Mountpunkte, dann ein grep (Filtern) nach einem bestimmten Mountpunkt. 
- 
-  ansible all -i inventories/produktion/ -m shell -a "lsblk --output HCTL,PATH,MOUNTPOINT,PARTLABEL|grep -iC2 oraexp" 
- 
- 
      
 Im nächsten Aufruf wird das Ansible ''apt'' Modul verwendet, dies ist der von Ansible empfohlene Weg: Im nächsten Aufruf wird das Ansible ''apt'' Modul verwendet, dies ist der von Ansible empfohlene Weg:
Zeile 100: Zeile 107:
   ansible all -m apt -a "update_cache=yes upgrade=yes autoremove=yes cache_valid_time=86400" --become   ansible all -m apt -a "update_cache=yes upgrade=yes autoremove=yes cache_valid_time=86400" --become
      
 +Anzeigen der SCSI Harddisk ID und der dazugehörigen Mountpunkte, dann ein grep (Filtern) nach einem bestimmten Mountpunkt.
 +
 +  ansible all -i inventories/produktion/ -m shell -a "lsblk --output HCTL,PATH,MOUNTPOINT,PARTLABEL|grep -iC2 oraexp"
      
 ==== Nur auf einer Gruppe ==== ==== Nur auf einer Gruppe ====
Zeile 112: Zeile 122:
      
      
-==== Poweroff ====+==== Reboot und Poweroff ==== 
 + 
 +Nur den Rechner iglu neu-starten: 
 + 
 +  ansible iglu -a "/sbin/reboot" --become 
 +  
 Alle Maschinen ausschalten. Achtung! Auch den Host von wo aus der Kommando ausgeführt wird, wenn in all enthalten: Alle Maschinen ausschalten. Achtung! Auch den Host von wo aus der Kommando ausgeführt wird, wenn in all enthalten:
  
   ansible all -a "/sbin/poweroff" --become   ansible all -a "/sbin/poweroff" --become
-  +
    
  
wiki/ansible.1705874970.txt.gz · Zuletzt geändert: 2024/01/21 23:09 von techguru