Skip to content

Ansible

Michael Schaar edited this page Oct 29, 2025 · 7 revisions

Ansible – Automatisierung für DOITPi

Ansible ist ein schlankes, aber mächtiges Automatisierungswerkzeug aus der Linux- und DevOps-Welt. Die Grundidee: Statt dutzende Raspberry Pis oder Server manuell einzurichten, beschreibst du einmal in einer YAML-Datei, wie dein System aussehen soll – und Ansible erledigt den Rest.

💡 Wie funktioniert Ansible?

  • YAML-Playbooks: Definiere den Soll-Zustand deines Systems in einfachen Textdateien.
  • Agentenlos: Arbeitet nur per SSH – keine zusätzliche Software auf Zielsystemen nötig.
  • Idempotenz: Playbooks können mehrfach ausgeführt werden, ohne das System zu beschädigen.

🔧 Wofür wird Ansible genutzt?

Mit Ansible kannst du automatisieren:

Aufgabe Beispiel
Pakete installieren apt: für Debian/Ubuntu, dnf: für Fedora.
Dienste verwalten Dienste wie nginx oder docker starten/stoppen.
Konfigurationsdateien Dateien anlegen oder ändern (z. B. /etc/nginx/nginx.conf).
Benutzer & Gruppen Benutzer anlegen, Rechte verwalten, SSH-Schlüssel hinterlegen.
Netzwerkeinstellungen IP-Adressen, Firewall-Regeln oder Hostnamen konfigurieren.

🎯 Warum ist Ansible perfekt für DOITPi?

Ansible passt ideal zu DOITPi, weil es Automatisierung einfach und zugänglich macht:

Vorteil Beschreibung
Klassenraum-Szenario 20 Raspberry Pis in Minuten identisch einrichten (Docker, Dienste, Benutzer, Netzwerk).
Wiederholbarkeit Playbooks beliebig oft ausführen – perfekt für Workshops oder Kurse.
Konsistenz Keine manuellen Fehler – alle Systeme gleich konfiguriert.
Einfacher Einstieg YAML ist einfach zu lesen – ideal für Lernende und Lehrkräfte.

📝 Ein einfaches Ansible-Playbook-Beispiel

Beispiel: Docker installieren und Benutzer anlegen:

---
- name: Raspberry Pi Grundkonfiguration
  hosts: all
  become: yes
  vars:
    username: "doitpi"
    packages: ["docker.io", "nginx"]
  tasks:
    - name: Pakete installieren
      apt:
        name: "{{ packages }}"
        state: present
        update_cache: yes
    - name: Benutzer "{{ username }}" anlegen
      user:
        name: "{{ username }}"
        shell: /bin/bash
        groups: docker
        append: yes
  handlers:
    - name: Restart Nginx
      service:
        name: nginx
        state: restarted

Wie führe ich das Playbook aus?

  1. Speichere das Playbook als raspberry_setup.yml.

  2. Führe es mit:

    ansible-playbook -i inventory.ini raspberry_setup.yml

    💡 Tipp für DOITPi-Nutzer:innen:

    • Nutze --check, um Änderungen zu simulieren:

      ansible-playbook --check -i inventory.ini raspberry_setup.yml
    • SSH-Schlüssel statt Passwörter verwenden:

      ssh-keygen -t ed25519
      ssh-copy-id pi@<IP-Adresse-des-Pi>

🚀 Erste Schritte mit Ansible

1. Ansible installieren

sudo apt update && sudo apt install ansible

2. SSH-Zugriff einrichten

  • Sicherer Zugriff per SSH-Schlüssel (siehe Tipp oben).

3. Inventar erstellen

  • Erstelle inventory.ini mit den IP-Adressen deiner Pis:

    [raspberrypis]
    192.168.1.10
    192.168.1.11

4. Playbook ausführen

ansible-playbook -i inventory.ini raspberry_setup.yml

Häufige Fragen

Frage Antwort
Brauche ich Root-Rechte? Ja, für Paketinstallation (become: yes).
Kann ich Ansible auf Windows nutzen? Ja, aber WSL oder ein Linux-Server wird empfohlen.
Wie verwalte ich mehrere Geräte? Mit Inventardateien oder Gruppen (z. B. [webserver], [database]).
Was ist der Unterschied zu Puppet/Chef? Ansible ist agentenlos und nutzt YAML; Puppet/Chef benötigen Agenten.
Wo finde ich fertige Playbooks? Auf Ansible Galaxy – z. B. für Docker, Nginx, oder Monitoring.

📌 Nächste Schritte mit DOITPi


💡 Warum Ansible für DOITPi?

  • Einfachheit: Keine Agenten, nur YAML + SSH.
  • Skalierbarkeit: Egal ob 1 oder 100 Raspberry Pis – konsistente Konfiguration.
  • Lernfreundlich: Perfekt, um DevOps-Grundlagen und Automatisierung zu vermitteln!

🔹 Neue Ergänzungen im Überblick

  1. Idempotenz erklärt (wichtig für Verständnis).
  2. Variablen (vars) und Handler im Playbook-Beispiel.
  3. SSH-Schlüssel-Tipp für mehr Sicherheit.
  4. Ansible Galaxy als Ressource für fertige Rollen.
  5. --check-Modus für sicheres Testen.

🚀 Schnellstart: DOITPi in 30 Sekunden

Für Eilige:

Du willst sofort loslegen? Hier ist der direkte Weg zur Installation:

👉 Installation von DOITPi


Was du brauchst:

  • Raspberry Pi (Modell 3/4/5 oder Zero 2 W)
  • microSD-Karte (mind. 32 GB)
  • Kartenleser o.Ä
  • Netzteil
  • 15 Minuten Zeit

Los geht’s! 🎉

Jetzt installieren →


⚡ DOITPi Auto-Hotspot

Immer verbunden – automatisch!

🔒 Passwort anpassen! 🔧

Kurz, klar, direkt zum Ziel – perfekt für alle, die keine Zeit verlieren wollen! 😊

Clone this wiki locally