Ansible: Unterschied zwischen den Versionen

Aus CodicaTipps
Zur Navigation springen Zur Suche springen
Zeile 61: Zeile 61:
  
 
   ansible all -m ping
 
   ansible all -m ping
 +
 +
=== Ausführen eines Shell-Kommandos ===
 +
 +
Mit Ansible lässt sich auch jedes beliebige [[Shell]]-Kommando ausführen:
 +
 +
  ansible zielrechner  -m command -a "whoami"
 +
 +
Will man das Kommando als root ausführen, setzt man <code>--become</code> hinzu:
 +
  ansible pia2016 --become -m command -a "whoami"
  
 
== Weiterführendes ==
 
== Weiterführendes ==

Version vom 15. September 2019, 05:35 Uhr

Ansible ist ein so genanntes Orchestrierungswerkzeug, mit dem man Computer automatisch konfigurieren kann. Dazu verwendet Ansible so genannte Playbooks.



Vorbereitung

Vorbereitung des Zielrechners

  • Installation eines Minimalsystems
  • Einrichten eines Benutzers speziell für ansible (optional)
  • Installation der Pakete
    • openssh-server
    • sudo
      • Der ansible-Benutzer das passwortlose Ausführen erlauben (siehe Sudo)
    • python3
      • Verlinke python3: sudo ln -s /usr/bin/python3 /usr/bin/python oder
      • Deklarieren der entsprechenden Variable für die Rechnergruppe. Beispiel einer inventory.yaml:
 all:
   hosts:
     blacky:
       ansible_host: blacky.fritz.box    
   children:
     home:
       hosts:
         blacky:
     python3: # All hosts that only have python3
       hosts:
         blacky:
       vars:
         ansible_python_interpreter: /usr/bin/python3

Vorbereitung des Kontrollrechners

 sudo aptitude install ansible

Nutzen von Ansible

Konfiguration

Die Konfiguration kann durch verschiedene Dateien erfolgen, z.B.:

  • ansible.cfg
  • ~/.ansible.cfg

Der Inhalt einer ansible.cfg könnte z.B. lauten:

 [defaults]
 inventory=inventory.yaml

Inventory

Die Inventory-Datei wird in YAML geschrieben, z.B.:

 all:
   hosts:
     blacky:
       ansible_host: blacky.fritz.box

In YAML werden die Zeilen mit Leerzeichen, nicht mit Tabs eingerückt.

Ping-Test

 ansible all -m ping

Ausführen eines Shell-Kommandos

Mit Ansible lässt sich auch jedes beliebige Shell-Kommando ausführen:

 ansible zielrechner  -m command -a "whoami"

Will man das Kommando als root ausführen, setzt man --become hinzu:

 ansible pia2016 --become -m command -a "whoami"

Weiterführendes

Siehe