Die Zukunft des GitOps-Tools – und Argo CD als Alternative Wie geht es mit Flux CD weiter?

Von Thomas Joos 5 min Lesedauer

Anbieter zum Thema

Weil GitOps-Pionier Weaveworks den Geschäftsbetrieb eingestellt hat, soll die Cloud Native Computing Foundation, kurz CNCF, Flux CD weiterentwickeln. Doch gibt es künftig genügend Unterstützer oder ist eine Umstellung auf Argo CD sinnvoll?

Flux CD arbeitet gut mit Kubernetes zusammen und könnte deshalb noch lange Zeit unterstützt werden, doch ganz sicher ist die Zukunft nicht.
Flux CD arbeitet gut mit Kubernetes zusammen und könnte deshalb noch lange Zeit unterstützt werden, doch ganz sicher ist die Zukunft nicht.
(Bild: Growtika / Unsplash)

Fehlende finanzielle Mittel und eine geplatzte Finanzierungsrunde nötigten Weaveworks-CEO Alexis Richardson, die Reißleine zu ziehen. Wir zeigen nachfolgend, wie es mit dem Tool Flux CD weitergeht und welche Alternativen Unternehmen und Entwickler jetzt haben.

GitOps spielt eine immer wichtigere Rolle in Container-Umgebungen

Die zunehmende Verbreitung von Kubernetes als Orchestrierungsplattform unterstreicht die Bedeutung von Tools, die Delivery- und Deployment-Prozesse vereinfachen und automatisieren. Flux CD und Argo CD ermöglichen jeweils eine effiziente Nutzung des GitOps-Modells für Kubernetes, aber ihre Architekturen und Funktionen unterscheiden sich durchaus.

GitOps ist ein Ansatz, bei dem Git als zentrale Informationsquelle für die Konfiguration von Anwendungen und der zugehörigen Infrastruktur verwendet wird. Dieser Prozess integriert Änderungen durch Peer-Review-Verfahren mittels Pull- oder Merge-Requests und zielt darauf ab, manuelle Eingriffe zu reduzieren. Dieser Ansatz wird insbesondere in Kubernetes-Umgebungen eingesetzt, da er gut mit dem deklarativen Ansatz von Kubernetes zusammenarbeitet.

GitOps-Tools wie Argo CD und Flux CD konzentrieren sich auf die kontinuierliche Auslieferung in Continuous-Integration- und -Delivery- oder auch CI/CD-Pipelines, insbesondere im Kontext von Kubernetes. GitOps-Tools arbeiten direkt innerhalb des Clusters und wenden Änderungen automatisch an, sobald sie im Git-Repository erkannt werden. Sie unterscheiden sich von traditionellen CI/CD-Tools durch Aspekte wie Authentifizierung, Durchsetzung des gewünschten Zustands und deklarative Programmierung.

Was geschieht mit Flux CD nach dem Ende von Weaveworks?

Flux CD ist eines der bekanntesten Tools von Weaveworks und die Basis des Flux-Projekts der CNCF. Das GitOps-Toolkit wird verwendet, um Anwendungen in Kubernetes-Clustern bereitzustellen und zu verwalten. Weaveworks hat das Projekt bereits 2019 an die CNCF übergeben, aber weiterhin aktiv unterstützt. Diese Unterstützung wird nun eingestellt.

Aktuell ist die Version 2.2.3 des Open Source Tools verfügbar. Flux CD ist ein etabliertes Werkzeug für die Verwaltung von Kubernetes und die Bereitstellung von Anwendungen in Container-Umgebungen. Zahlreiche Unternehmen unterstützen die Lösung, darunter AWS, Microsoft, GitLab oder VMware. Auch in SAP-Umgebungen kommt Flux CD häufig zum Einsatz.

Die CNCF hat bereits angekündigt, das Projekt weiter vorantreiben zu wollen. So soll Stefan Prodan, ehemaliger Principal Engineer bei Weaveworks und wichtiger Teil des Flux-Projektes, weiterhin an Flux CD mitarbeiten. Prodan arbeitet inzwischen für das Beratungsunternehmen ControlPlane. Dieses will die Weiterentwicklung von Flux unterstützen.

Natürlich ist es ein Problem, wenn wichtige Unterstützer eines CNCF-Projekts wegbrechen, auch wenn die Verantwortlichen ihr Bestes tun, um andere Unterstützer zu finden. Fallen auch diese weg, kann ein Projekt schnell beendet sein oder zumindest in der Bedeutungslosigkeit verschwinden. In solchen Situationen kann die CNCF nicht garantieren, dass genügend Personal für Projekte wie Flux CD weiterhin zur Verfügung steht.

Jüngstes Beispiel ist Cortex, das inzwischen von Grafana geforkt wurde. Die Maintainer von Cortex konzentrieren sich derzeit auf den Fork. Die CNCF konnte zwar AWS und Red Hat überzeugen, das Projekt weiter zu unterstützen, aber die Situation zeigt, dass auch CNCF-Projekte schnell in die Bredouille geraten können, wenn der Hauptunterstützer wegfällt. Andererseits ist bei Flux CD davon auszugehen, dass AWS das Projekt nicht einfach aufgibt, allein schon wegen der Unterstützung in im Elastic Kubernetes Service (EKS). Sicher ist aber auch das nicht.

Ist Argo CD eine Alternative zu Flux CD?

Einige Unternehmen und Entwickler werden wahrscheinlich auf Argo CD oder ein anderes Continuous-Delivery-Tool umsteigen, da der Funktionsumfang ähnlich ist und die Weiterentwicklung auf sicheren Beinen steht. Häufig setzen Unternehmen eine Kombination aus Argo CD, Terraform und Crossplane ein, um ihre Container-Umgebungen in der Cloud zu automatisieren.

Argo CD bietet den Vorteil eines mächtigen User Interface. Nicht alle Entwicklerinnen und Entwickler wollen die gesamte Automatisierung über die CLI oder mit Skripten durchführen. Sowohl Argo als auch Flux beherrschen die GitOps-Operationen mit Bravour, so dass ein Wechsel zwischen den Systemen problemlos möglich ist.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Softwareentwicklung und DevOps

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Beide Werkzeuge automatisieren die Synchronisation des Cluster-Status mit dem im Git-Repository definierten Status. Flux CD zeichnet sich dabei durch die Funktion des automatischen Image-Updates aus, während Argo CD durch die vereinfachte Synchronisation punktet. Argo CD bietet visuelle Darstellungen und Detailansichten, die die Handhabung und Verwaltung vereinfachen. Flux CD hat standardmäßig keine integrierte Benutzeroberfläche, kann aber durch externe Projekte ergänzt werden.

Flux CD und Argo CD unterstützen fortgeschrittene Bereitstellungsstrategien wie Blue/Green- und Canary-Deployments durch Integration mit zusätzlichen Komponenten wie Argo Rollouts oder Flagger. Argo CD bietet mit der Komponente ApplicationSet eine flexible Template-Erstellung.

Einige wichtige Unterschiede

Die Definition von Synchronisationsintervallen unterscheidet sich: Argo CD erlaubt eine Anpassung des Synchronisationsintervalls, während Flux CD die Anwendung von Änderungen auf Cluster granular steuern kann. Sowohl Argo CD als auch Flux CD erlauben eine deklarative Nutzung von Helm, wobei Unterschiede in der Handhabung und Konfiguration bestehen.

Flux CD basiert auf einer modularen Architektur verschiedener Kubernetes-Controller, die spezifische Aspekte der Anwendungsbereitstellung und -verwaltung abdecken. Diese Controller ermöglichen eine detaillierte Kontrolle über den Lebenszyklus von Kubernetes-Objekten, einschließlich der Reihenfolge, in der Abhängigkeiten bereitgestellt werden. Die Integration mit Werkzeugen wie Helm und Kustomize erhöht die Flexibilität von Flux CD durch die Unterstützung komplexer Deployment-Szenarien.

Argo CD bietet eine zentralisierte Plattform für die Verwaltung von Kubernetes-Ressourcen und unterstützt ebenfalls die Integration mit Helm und Kustomize. Seine Architektur ermöglicht die Strukturierung des Bereitstellungsprozesses in verschiedene Phasen (Pre-Sync, Sync, Post-Sync), was eine granulare Kontrolle der Ressourcenbereitstellung ermöglicht.

Der Notification Controller von Flux bietet die Möglichkeit, Benachrichtigungen über verschiedene Kanäle wie Slack oder E-Mail zu versenden, was eine sofortige Rückmeldung über den Status der Bereitstellung ermöglicht. Diese Funktion hilft Teams, auf dem Laufenden zu bleiben und schnell auf Änderungen oder Probleme zu reagieren.

Argo CD verwendet für Benachrichtigungen das Plug-in Argo CD Notifications, das ähnliche Alarm- und Feedbackfunktionen wie Flux CD bietet. Die Möglichkeit, über Einsatzereignisse informiert zu werden, ist für die Aufrechterhaltung einer hohen betrieblichen Effizienz und Sicherheit von entscheidender Bedeutung.

Sicherheit und Authentifizierung – Argo CD bietet Vorteile

Beide Tools nehmen das Thema Sicherheit ernst und bieten Mechanismen zur sicheren Verwaltung von Geheimnissen und zur Durchsetzung von Zugriffskontrollen. Während Flux CD für die Zugriffskontrolle auf Kubernetes RBAC setzt, bietet Argo CD zusätzliche Funktionen wie integriertes Single Sign-On (SSO) und eine eigene RBAC-Konfiguration, die eine feingranulare Zugriffskontrolle ermöglicht.

Im Hinblick auf die Mandantenfähigkeit wurde Argo CD von Grund auf mit Unterstützung für Multi-Tenancy entwickelt, wodurch Ressourcen und Zugriffe zwischen verschiedenen Teams und Projekten effizient isoliert werden können. Flux CD hingegen erfordert eine sorgfältigere Planung und Konfiguration, um Mandantenfähigkeit zu erreichen.

Beide Werkzeuge bieten spezifische Stärken bei der Verwaltung von Kubernetes-Clustern mit GitOps. Argo CD zeichnet sich durch eine benutzerfreundliche Oberfläche, vereinfachte Synchronisation und flexiblere Template-Erstellung aus. Flux CD hingegen bietet ein automatisches Image-Update und kann detaillierte Anpassungen vornehmen. Die Wahl zwischen Argo CD und Flux CD hängt letztlich von den spezifischen Anforderungen des Einsatzszenarios und der Planungssicherheit ab, wie lange das Tool noch weiterentwickelt wird.

(ID:49988736)