Delivery / Betriebsmodell

GitOps, CI/CD und Plattform-Auslieferung

GitOps macht Git zur Quelle des gewünschten Zustands. CI baut und testet Artefakte; CD synchronisiert freigegebene Zustände in die Plattform.

Diagramm

Trennung CI und CD

CI erzeugt überprüfte Artefakte. CD bringt freigegebene Versionen kontrolliert in Zielumgebungen.

GitOps-Prinzip

Man verändert nicht manuell im Cluster, sondern ändert deklarative Dateien im Git. Controller synchronisieren Zustand und melden Drift.

Promotion

Dev, Test und Prod werden über Pull Requests, Freigaben und Versionen bewegt. Keine geheimen Klicks in der Konsole.

Rollback

Rollback ist ein Git-Zustand, kein hektisches manuelles Korrigieren im Cluster.

Ausführliche Beispiele

Kustomize Struktur

apps/order-api/
├── base/
│   ├── deployment.yaml
│   ├── service.yaml
│   └── kustomization.yaml
└── overlays/
    ├── dev/
    ├── test/
    └── prod/

Pipeline Grundidee

stages:
  - test
  - build
  - scan
  - publish
  - promote

promote-prod:
  stage: promote
  when: manual
  script:
    - yq -i '.images[0].newTag = env(IMAGE_TAG)' apps/order-api/overlays/prod/kustomization.yaml
    - git commit -am "Promote order-api ${IMAGE_TAG} to prod"
    - git push

Typische Stolperfallen

  • Manuelle Hotfixes im Cluster erzeugen Drift.
  • CI/CD hat zu breite Rechte.
  • Umgebungen unterscheiden sich strukturell.

Prüf- und Verständnis-Checkliste

  • Clusterzustand ist aus Git rekonstruierbar.
  • Promotion ist nachvollziehbar.
  • Rollback wurde getestet.

Merksatz

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