Automation / Framework

Automation mit Ansible: Day-2, Konfiguration und Runbooks

Ansible eignet sich für Konfigurationsmanagement, wiederholbare Betriebsaufgaben, Patch-Abläufe, Validierungen und dokumentierbare Runbooks.

Diagramm

Rolle neben Terraform

Terraform baut Ressourcen. Ansible konfiguriert Systeme, orchestriert Abläufe und führt wiederholbare Aufgaben aus.

Idempotenz

Ein Playbook soll mehrfach laufen können, ohne unnötige Änderungen zu erzeugen. Das ist Grundlage für sicheren Betrieb.

Runbook-Automation

Gute Runbooks kombinieren Diagnose, Entscheidung und automatisierte Korrektur. Nicht jeder Schritt muss automatisch sein, aber jeder Schritt sollte klar sein.

Inventories

Inventories bilden Umgebungen und Gruppen ab: Linux-Server, Datenbankserver, Load Balancer, Bastion, Monitoring-Agenten.

Ausführliche Beispiele

Ansible Playbook OS-Baseline

---
- name: Linux Enterprise Baseline anwenden
  hosts: linux_servers
  become: true
  roles:
    - role: os_baseline
      vars:
        timezone: Europe/Vienna
        ssh_password_authentication: false
        selinux_state: enforcing
        install_monitoring_agent: true
        chrony_servers:
          - ntp1.company.example
          - ntp2.company.example
        approved_packages:
          - chrony
          - auditd
          - firewalld
          - vim
          - jq
          - sos

Patch-Orchestrierung mit Vorprüfung

---
- name: Patch Linux Servers in Wartungsfenster
  hosts: linux_servers
  become: true
  serial: 20%
  tasks:
    - name: Prüfen ob Monitoring erreichbar ist
      ansible.builtin.uri:
        url: "https://monitoring.company.example/api/health"
        status_code: 200

    - name: Pakete aktualisieren
      ansible.builtin.package:
        name: "*"
        state: latest

    - name: Reboot falls erforderlich
      ansible.builtin.reboot:
        reboot_timeout: 1800
      when: ansible_facts['os_family'] == 'RedHat'

    - name: Health Check nach Patch
      ansible.builtin.command: /usr/local/bin/node-health-check
      changed_when: false

Typische Stolperfallen

  • Playbooks ändern zu viel auf einmal.
  • Keine Vor- und Nachprüfung.
  • Geheime Variablen landen unverschlüsselt im Repository.

Prüf- und Verständnis-Checkliste

  • Playbooks sind idempotent.
  • Serielle Ausführung schützt Verfügbarkeit.
  • Jede Automation erzeugt nachvollziehbaren Nachweis.

Merksatz

Enterprise-Regel: Eine Infrastrukturkomponente ist erst fertig, wenn sie fachlich begründet, automatisiert, beobachtet, geschützt, dokumentiert und wiederherstellbar ist.