Kubernetes: Argo Workflows 3.0 setzt auf neue Benutzeroberfläche und Hot Standby

Das Major Release beschert der Workflow-Engine rund 20.000 Zeilen zusätzlichen Code. Neu sind die Controller-Hochverfügbarkeit und das überarbeitete UI.

In Pocket speichern vorlesen Druckansicht 14 Kommentare lesen

(Bild: Tommy Lee Walker / Shutterstock.com)

Lesezeit: 4 Min.
Von
  • Silke Hahn
Inhaltsverzeichnis

Das Argo-Projekt hat die dritte Hauptversion von Argo Workflows vorgelegt, einer quelloffenen und Container-nativen Workflow-Engine zum Orchestrieren nebenläufiger Jobs auf Kubernetes. Ursprünglich hatten Intuit und Red Hat das Argo-Unterprojekt 2017 aus der Taufe gehoben, vor einem Jahr übergaben sie es der Cloud Native Computive Foundation (CNCF) zur Inkubation und weiteren Entwicklung.

Die Benutzeroberfläche von Argo Workflows 3.0 enthält unter der Haube neue React-Komponenten, die die Interaktion mit den Arbeitsprozessen einfacher handhabbar machen sollen und den Herausgebern zufolge das UI stabiler und zuverlässiger machen. Hinzugekommen sind neue Features wie eine Eventfluss-Seite, die die Integration der Workflows mit Argo Events veranschaulicht, die Logansicht der Workflows haben die Argo-Entwickler überarbeitet und optional können Nutzerinnen und Nutzer nun Widgets einbetten, mit denen sie zum Beispiel den Fortschritt der einzelnen Workflow-Schritte oder den Anzeigestatus überprüfen können. Neu sind die APIs für Argo Events, und das Release unterstützt Go-Module.

Als eigentliches Highlight gilt laut Blogankündigung der CNCF die Hochverfügbarkeit der Controller. In früheren Versionen musste der Controller nach Fehlern jedes Mal Kubernetes den Pod neu starten lassen, was zu lästigen Downtimes geführt hat. Um das Problem in den Griff zu bekommen, bietet Argo Workflows 3.0 einen Hot Standby: Dabei läuft ein zweiter Pod parallel zum Hauptpod. Sollte der erste Pod ausfallen, übernimmt der zweite automatisch, wodurch es seltener zu Ausfallzeiten kommen soll. Da der Begriff "Pod" in der IT mehrere Bedeutungen tragen kann, hier zur Erklärung: Ein Pod stellt im Kontext von Kubernetes die einzelne Instanz eines laufenden Prozesses im Cluster dar. Die hier gemeinten Pods sind die kleinsten bereitstellbaren Objekte in Kubernetes.

Event Flow ist ein Proxy für Events, das auf den Pod-Logs der Eventquellen fußt. Die neue Hauptversion von Argo Workflows enthält eine Visualisierung der Event Flows.

(Bild: Argo)

Mit Version 3.0 erhält Argo Workflows auch eine Standardreferenz für das Repository, und neu sind dabei die sogenannten "Key-only"-Artefakte. Anwenderinnen und Anwender sollen die Konfiguration des Artefakt-Repository aus der Workflowspezifikation heraus anpassen können. Dadurch lassen sich offenbar Standardeinstellungen übergreifend für einen ganzen Namensraum konfigurieren, statt die Definition für jeden Workflow einzeln vornehmen zu müssen. Mit dem Schlüssel lassen sich Artefaktmuster definieren, die die Workflows der Ankündigung zufolge durch reduziertes Mapping entschlacken. Parametrisierte Ein- und Ausgaben können dadurch wegfallen, und laut Blogeintrag fällt somit weniger Speicherplatz an.

Das Release umfasst eine Reihe weiterer Änderungen, die sich im Detail den Release Notes und flankierenden Blogankündigungen entnehmen lassen. Mehr Informationen zum aktuellen Release lassen sich dem Blogeintrag von Argo entnehmen. Auch die Cloud Native Computing Foundation (CNCF) hat die neue Hauptversion auf ihren Seiten vorgestellt. Die vollständigen Änderungen finden sich im Releasebereich bei GitHub aufgelistet. Zugleich mit der Releasemeldung hat das Argoteam auch angekündigt, Version 2.12 in den Long-term Support aufzunehmen. Die LTS-Version soll zwar keine neuen Features mehr empfangen, aber für mindestens sechs Monate noch Problembehebungen erhalten.

Argo Workflows ist eine Cloud-native Engine, die Zehntausende nebenläufiger Prozesse mit jeweils Tausenden Workflowschritten betreiben kann. Beim Batch Processing, Serverless-Computing und bei einer Reihe von CI/CD-Vorgängen (Continuous Integration/Continuous Delivery) kommt die Workflow-Engine in Frage. Institutionen wie die in Genf ansässige Europäische Organisation für Kernforschung CERN nutzen Argo zum 3D-Rendern im Programm CoreWeave (auf einem Cluster mit 1000 Nodes und 6000 Grafikprozessoren), und auch im Bereich Machine Learning und Datenverarbeitung kommt das GitOps/CD-Werkzeug zum Einsatz. Seit 2018 ist Argo in der Programmiersprache Go geschrieben, mittlerweile umfasst das Projekt rund 400 Kontributoren, mehrere tausend Commits, über tausend Forks und kann laut Herausgebern auf konstant hohe Bewertungen auf GitHub verweisen. Dem Community-Kanal auf Slack folgen über 5000 Mitglieder.

(sih)