Sobes.tech
Intern

Was ist Ansible?

sobes.tech KI

Antwort von AI

Ansible ist ein Open-Source-Tool für IT-Automatisierung, das zur Verwaltung von Konfigurationen, zum Bereitstellen von Anwendungen und zur Orchestrierung von Aufgaben verwendet wird.

Schlüsselkonzepte:

  • Module: Codeeinheiten, die spezifische Aufgaben ausführen (Pakete installieren, Dateien kopieren).
  • Playbooks: YAML-Dateien, die die Abfolge der auf Hosts auszuführenden Aufgaben beschreiben.
  • Inventar: Liste der Hosts (Server), die von Ansible verwaltet werden.

Beispiel eines Playbooks:

---
# Playbook zur Installation eines Pakets auf Hosts

- name: Nginx installieren
  hosts: webservers # Hostgruppe aus dem Inventar
  become: true # Aufgaben als root (sudo) ausführen

  tasks:
    - name: Sicherstellen, dass Nginx installiert ist
      apt: # Verwendung des apt-Moduls für Debian/Ubuntu
        name: nginx
        state: present # Sicherstellen, dass das Paket vorhanden ist
      # Beispielkommentar im Playbook-Code
      # package:
      #  name: nginx
      #  state: present # Alternative für CentOS/RHEL - Verwendung des package-Moduls

    - name: Nginx-Dienst starten
      service: # Verwendung des service-Moduls
        name: nginx
        state: started # Sicherstellen, dass der Dienst läuft
        enabled: yes # Sicherstellen, dass der Dienst beim Systemstart startet

Hauptvorteile:

  • Agentenlos: Erfordert keine Installation von Agenten auf den verwalteten Hosts, nutzt SSH.
  • Einfache Syntax: Playbooks sind in YAML geschrieben, was sie leicht lesbar macht.
  • Idempotenz: Mehrfache Ausführung des Playbooks führt zum gleichen Endzustand.
  • Erweiterbarkeit: Große Anzahl integrierter Module und Möglichkeiten, eigene zu schreiben.

Anwendungen:

  • Serverkonfiguration.
  • Anwendungsbereitstellung.
  • Orchestrierung komplexer Arbeitsprozesse.
  • Automatisierung routinemäßiger IT-Aufgaben.