Anwendungen mit der Argo CD CLI verwalten
Anmelden, erstellen, prüfen, vergleichen, synchronisieren und zurückrollen – alles im Terminal.
Alles, was du in der Web-Oberfläche tun kannst, geht auch mit der argocd-CLI. Sie nutzt du in Skripten und immer dann, wenn du eine Änderung vor dem Anwenden prüfen möchtest. Diese Anleitung setzt voraus, dass Argo CD installiert ist und das Port-Forward aus der Installationsanleitung läuft.
CLI installieren und anmelden
Installiere die CLI (brew install argocd unter macOS oder lade eine Binärdatei von der Releases-Seite herunter) und prüfe, ob sie funktioniert:
argocd version --client
Melde dich über das Port-Forward am API-Server an. --insecure überspringt die Prüfung des selbstsignierten Zertifikats. Das ist lokal in Ordnung, aber nicht für eine echte Installation:
argocd login localhost:8080 --username admin --password '<initial-password>' --insecure
Mit argocd --help listest du alle Befehle auf. Das meiste im Alltag findest du unter argocd app.
Anwendungen erstellen und untersuchen
Erstelle eine Anwendung über Flags statt über ein Manifest:
argocd app create webapp-prod \
--repo https://github.com/your-org/webapp-config.git \
--path prod \
--dest-server https://kubernetes.default.svc \
--dest-namespace webapp-prod \
--sync-option CreateNamespace=true
Wenn du keine Sync-Policy angibst, ist die Anwendung manuell. Sieh dir dann an, was existiert:
argocd app list
argocd app get webapp-prod
list zeigt jede Anwendung mit Cluster, Namespace, Projekt, Sync-Status, Health und Sync-Policy. get zeigt die Details einer einzelnen Anwendung und ihrer Ressourcen.
Vorschau und Sync
Eine frisch erstellte manuelle Anwendung meldet OutOfSync und Missing, weil noch nichts angewendet wurde. Vor dem Sync kannst du genau sehen, was sich ändern würde:
argocd app diff webapp-prod
argocd app sync webapp-prod
argocd app wait webapp-prod --health
Schlägt ein Sync fehl, wird der Fehler ausgegeben. Ein häufiger Fehler ist ein Ziel-Namespace, der noch nicht existiert. Dafür ist die Option CreateNamespace=true von oben da. Nach einer Änderung in Git ist argocd app diff ein schneller Weg, sie vor dem Sync zu prüfen. Der Befehl zeigt dieselben Informationen wie die Ansicht App Diff in der Oberfläche.
Verlauf prüfen, zurückrollen und Logs lesen
argocd app history webapp-prod
argocd app rollback webapp-prod <ID>
argocd app logs webapp-prod
history listet die ausgerollten Revisionen mit ihren IDs. rollback kehrt zu einer davon zurück und funktioniert, wie in der Anleitung zur Sync-Policy beschrieben, nur, solange der automatische Sync deaktiviert ist. logs streamt die Logs der Pods der Anwendung – praktisch für einen ersten Blick auf einen Rollout.
Einstellungen ändern und aufräumen
Ändere die Einstellungen einer Anwendung, ohne YAML zu bearbeiten:
argocd app set webapp-prod --sync-policy automated --auto-prune --self-heal
Mit argocd app set --help siehst du, was sich alles ändern lässt. Wenn du mit einer Anwendung fertig bist, lösche sie:
argocd app delete webapp-prod
Standardmäßig entfernt das auch die Ressourcen, die die Anwendung erstellt hat, daher kann es eine Minute dauern. Führe danach argocd app list aus, um zu bestätigen, dass sie weg ist.
Beliebte Anleitungen
-
Push vs. Pull: Wie Argo CD auf Kubernetes ausliefert Warum pull-basierte, Git-gesteuerte Auslieferung verändert, wie du Cluster deployst, absicherst und wiederherstellst. -
Multi-Cluster mit Argo CD konfigurieren Deployments über mehrere Cluster hinweg verwalten. -
Deine erste Anwendung mit einem deklarativen Manifest deployen Richte Argo CD mit einer Application-Ressource auf ein Git-Repository aus und sieh dem Sync zu. -
Sync-Verhalten steuern: Auto-Sync, Prune, Self-Heal und Rollback Entscheide, wann Argo CD Änderungen anwendet, was es löscht und wie du ein fehlerhaftes Deployment rückgängig machst.