Kernkonzepte von IaC

Kernkonzepte von IaC

Bei Infrastructure as Code gibt es einige grundlegende Konzepte und Prinzipien, die das Vorgehen prägen:

Deklarativer vs. imperativer Ansatz

  • Deklarativer Ansatz:
    Du beschreibst den gewünschten Endzustand deiner Infrastruktur. Das IaC-Tool kümmert sich dann selbstständig darum, wie dieser Zustand erreicht wird.
    Beispiel: Du sagst „Ich möchte, dass ein Server mit Apache installiert ist“, ohne anzugeben, wie genau dieser Zustand erreicht wird.Vorteile: Weniger fehleranfällig, einfacher zu warten, idempotent (wiederholbare Ausführung ohne Seiteneffekte).
    Typische Tools: Terraform, CloudFormation, Kubernetes YAML.
  • Imperativer Ansatz:
    Du definierst explizit die Schritte, die durchgeführt werden müssen, um einen bestimmten Infrastrukturzustand zu erreichen.
    Beispiel: „Installiere Apache“, „Öffne Port 80“, „Starte den Dienst“.Vorteile: Mehr Kontrolle über die Ausführungsschritte.
    Typische Tools: Ansible (teilweise), Bash-Skripte.

Mutable vs. Immutable Infrastruktur

Konfigurationsmanagement

Orchestrierung

Orchestrierung bedeutet, mehrere Prozesse und Komponenten der Infrastruktur automatisiert aufeinander abzustimmen:

  • Z. B. erstelle erst die Datenbank, dann die Anwendung, dann den Load Balancer.
  • Es geht also um Reihenfolgen, Abhängigkeiten und Koordination.
  • Besonders wichtig bei komplexen Umgebungen und Microservices.
  • Tools: Terraform (in Bezug auf Ressourcenabhängigkeiten), Kubernetes (Pod-Orchestrierung), Docker Compose (Multi-Container-Anwendungen).

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert