Einführung
In modernen DevOps-Praktiken bedeutet GitOps, Infrastruktur und Deployments über Git-Repositories zu steuern. ArgoCD ist ein Continuous Delivery (CD) Tool für Kubernetes, das die GitOps-Prinzipien umsetzt.
In diesem Leitfaden werden wir:
- ArgoCD in einem Kubernetes-Cluster installieren.
- Manifeste aus einem Git-Repository synchronisieren.
- Eine erste Anwendung mit GitOps bereitstellen.
Voraussetzungen
- Laufender Kubernetes-Cluster (Minikube, Kind oder Cloud).
- kubectl installiert und verbunden.
- Beispiel-Repository auf GitHub oder GitLab.
- (Optional) Helm installiert.
Schritt 1 – Installation von ArgoCD
kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
kubectl get pods -n argocd
Schritt 2 – Zugriff auf ArgoCD UI und CLI
kubectl port-forward svc/argocd-server -n argocd 8080:443
👉 https://localhost:8080
Standard Benutzername: admin
Passwort:
kubectl get secret argocd-initial-admin-secret -n argocd -o jsonpath="{.data.password}" | base64 -d
CLI-Installation:
brew install argocd # Mac
sudo apt-get install argocd-cli # Linux
Schritt 3 – Erste Anwendung synchronisieren
argocd login localhost:8080
argocd app create guestbook --repo https://github.com/argoproj/argocd-example-apps.git --path guestbook --dest-server https://kubernetes.default.svc --dest-namespace default
argocd app sync guestbook
Schritt 4 – GitOps Zyklus
- Push: Manifest-Änderungen nach Git committen.
- ArgoCD: Überwacht Repository oder wird per Webhook ausgelöst.
- Cluster: Neue Versionen werden automatisch angewendet.
Fazit
Wir haben ArgoCD installiert und eine erste Anwendung mit GitOps bereitgestellt.