← Katalog
E I A C

Argo CD

SDLC / Policy-as-Code

GitOps dla Kubernetes — repo jako źródło prawdy o stanie klastra.

★ 18 000 Apache-2.0 #gitops#kubernetes#cd#cncf

Argo CD to deklaratywne narzędzie continuous delivery dla Kubernetes w modelu GitOps. Repozytorium Git jest źródłem prawdy o pożądanym stanie klastra; Argo CD nieustannie porównuje ten stan z rzeczywistym i synchronizuje różnice (automatycznie lub po akceptacji). Dostajesz pełną historię zmian, łatwe wycofywanie i czytelny podgląd „drift” między Gitem a klastrem.

Kiedy używać

  • Wdrażasz na Kubernetes i chcesz, by każda zmiana szła przez Git (audyt, review, rollback).
  • Zarządzasz wieloma klastrami/środowiskami z jednego miejsca.
  • Łączysz z Helm lub Kustomize do szablonowania manifestów.

Przykład użycia

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: eiac-web
spec:
  project: default
  source:
    repoURL: https://git.eiac.dev/eiac/deploy.git
    path: web
    targetRevision: main
  destination:
    server: https://kubernetes.default.svc
    namespace: web
  syncPolicy:
    automated: { prune: true, selfHeal: true }

selfHeal przywróci stan z Gita, jeśli ktoś zmieni zasób ręcznie w klastrze.

Warto wiedzieć

  • Repo z manifestami trzymamy na Gitei — Argo CD ciągnie z dowolnego Git.
  • prune usuwa zasoby skasowane w repo; włączaj świadomie.