open-how2 – Entdecke. Verstehe. Nutze.
Veröffentlicht am
How2-Tipps

Was ist Ansible?

Autor
Was ist Ansible?

Automatisierung für moderne IT-Infrastrukturen – einfach, schnell und agentenlos

In der Welt der Systemadministration, DevOps und Cloud-Infrastruktur ist Effizienz der Schlüssel. Wer viele Server, Container oder virtuelle Maschinen verwalten muss, weiß: manuelle Konfigurationen sind fehleranfällig und nicht skalierbar. Hier kommt Ansible ins Spiel – ein leistungsfähiges Open-Source-Werkzeug zur IT-Automatisierung, das genau dieses Problem löst.

Kurz erklärt: Was ist Ansible?

Ansible ist ein Open-Source-Automatisierungstool, das von Red Hat entwickelt wird. Es ermöglicht die zentrale Steuerung, Konfiguration und Verwaltung von Servern, Netzwerken, Containern und Cloud-Umgebungen – ohne Agenten und mit minimalem Aufwand.

Im Kern verfolgt Ansible das Prinzip: Konfiguration als Code (Infrastructure as Code – IaC)

Dabei wird der gewünschte Zustand der Infrastruktur in einfachen YAML-Dateien beschrieben – sogenannten Playbooks.

Was kann man mit Ansible machen?

Aufgabe Beispiel
🔧 Serverkonfiguration Pakete installieren, Dienste starten, Dateien verwalten
📦 Software Deployment Rollouts von Webanwendungen, Docker-Containern etc.
☁️ Cloud-Automatisierung AWS, Azure, GCP-Ressourcen verwalten
🔁 Task-Automatisierung Backups, Updates, Monitoring automatisch durchführen
🧪 Testumgebungen provisionieren VMs, Docker, Kubernetes vorbereiten
📡 Netzwerkgeräte konfigurieren Firewalls, Switches, Router automatisieren

Vorteile von Ansible

Vorteil Warum relevant
🚫 Agentenlos Keine zusätzliche Software auf Zielsystemen nötig (nur SSH & Python)
📜 Einfaches YAML-Format Lesbare, deklarative Konfigurationen – auch für Einsteiger verständlich
🔁 Idempotenz Aktionen sind wiederholbar ohne Seiteneffekte
🧩 Modularität Riesige Sammlung an Modulen für alle erdenklichen Aufgaben
💬 Große Community Umfangreiche Dokumentation und viele fertige Rollen & Playbooks
🔐 Sicher Keine „ständigen“ Verbindungen, SSH-basiert mit Schlüsselverwaltung

Aufbau von Ansible

Ein typisches Ansible-Projekt besteht aus:

  1. Inventar-Datei (inventory.ini oder hosts.yml): Enthält IP-Adressen oder Hostnamen der Zielsysteme, gruppiert nach Funktion.

  2. Playbook(s) (*.yml): Beschreibt in YAML, welche Aufgaben auf welchen Hosts ausgeführt werden sollen.

  3. Rollen (Roles): Strukturierte, wiederverwendbare Aufgaben-Pakete für komplexe Projekte.

Beispiel: Einfaches Playbook

- name: Apache installieren und starten
  hosts: webserver
  become: true
  tasks:
    - name: Apache installieren
      apt:
        name: apache2
        state: present

    - name: Apache starten
      service:
        name: apache2
        state: started
        enabled: true

Mit dem Befehl ansible-playbook apache.yml wird dieses Playbook auf alle Hosts der Gruppe webserver angewendet.

Ansible & Cloud

Dank der Ansible-Collection-Module lassen sich Dienste von AWS, Azure, Google Cloud und anderen Anbietern vollständig per Playbook steuern – von der VM-Erstellung bis hin zur Netzwerkkonfiguration.

Beispiel:

- name: AWS EC2 Instanz starten
  hosts: localhost
  tasks:
    - name: EC2 starten
      amazon.aws.ec2_instance:
        name: my-instance
        image_id: ami-xyz
        instance_type: t2.micro
        region: eu-central-1
        key_name: mykey

Wichtige Tools & Erweiterungen

Tool / Add-on Beschreibung
Ansible Galaxy Plattform für fertige Rollen und Collections
AWX / Ansible Tower Weboberfläche für Ansible-Projekte, Rollenmanagement, Logs
Collections Modulpakete für spezifische Plattformen (z. B. Cisco, VMware, Docker)
Templates (Jinja2) Dynamische Variablen & bedingte Logik in Playbooks

Für wen eignet sich Ansible?

  • Systemadministratoren, die mehrere Linux-Server effizient verwalten wollen
  • DevOps-Teams, die CI/CD-Prozesse automatisieren
  • Cloud-Architekten, die Infrastruktur als Code betreiben
  • IT-Abteilungen, die manuelle Installationen ersetzen möchten
  • Netzwerk-Admins, die Switches & Firewalls konfigurieren wollen

Ansible ist eines der mächtigsten Tools für IT-Automatisierung – und dabei überraschend einfach in der Anwendung. Es hilft dabei, Prozesse zu standardisieren, Fehlerquellen zu reduzieren und Zeit zu sparen. Besonders durch das agentenlose Design und die verständliche Syntax eignet es sich ideal als Einstieg in das Thema Infrastructure as Code.

Wer heute noch Bash-Skripte auf zehn Servern einzeln per SSH ausführt, sollte morgen mit Ansible arbeiten.

Weitere Ressourcen