2 playbooks
kraeml edited this page 2023-09-27 13:56:24 +00:00

Playbooks

Das Playbook ist ein zentrales Konzept in Ansible und dient dazu, Konfigurationsaufgaben und Automatisierungsschritte in einer leicht verständlichen YAML-Datei zu definieren. Ein Playbook enthält eine Abfolge von Aufgaben (Tasks) und kann auf verschiedene Zielhosts angewendet werden. Die Hauptfunktionen eines Playbooks sind:

  1. Aufgabenbeschreibung: Ein Playbook beschreibt, was auf den Zielhosts ausgeführt werden soll. Dies kann das Installieren von Software, das Konfigurieren von Systemeinstellungen, das Kopieren von Dateien und vieles mehr umfassen.

  2. Zielhosts festlegen: Sie können in einem Playbook angeben, auf welchen Hosts die Aufgaben ausgeführt werden sollen. Dies ermöglicht die einfache Skalierung und Anpassung der Automatisierung für verschiedene Umgebungen.

Beispiel eines einfachen Playbooks:

---
- name: Ein einfaches Playbook
  hosts: webserver
  tasks:
    - name: Installiere den Apache Webserver
      apt:
        name: apache2
        state: present
      become: yes

In diesem Beispiel wird ein Playbook definiert, das den Apache Webserver auf den Hosts mit dem Tag webserverinstalliert. Die Aufgabe (task) verwendet das apt-Modul, um die Installation durchzuführen.

Ein weiteres Beispiel:

---
- name: Konfiguriere SSH-Zugriff
  hosts: all
  tasks:
    - name: Kopiere SSH-Public-Key
      authorized_key:
        user: johndoe
        key: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
      become: yes

Dieses Playbook kopiert den öffentlichen SSH-Schlüssel des Benutzers johndoe auf alle Zielhosts (definiert durch hosts: all). Dies erleichtert den sicheren SSH-Zugriff auf die Zielhosts .

Playbooks können komplexere Aufgaben und Szenarien abbilden, aber die obigen Beispiele veranschaulichen die grundlegenden Funktionen von Playbooks in Ansible.