Effizienz und Cybersicherheit sind zwei wichtige Aspekte in der Softwareentwicklung. GitOps ist ein Ansatz, um beides zu verbessern. Zugleich wird die Handlungsfähigkeit von Entwicklungsteams gesteigert.
Im ‚2020 CIO Survey – Industrial Manufacturing Industry Insights‘ haben 65 Prozent der IT-Führungskräfte in der Fertigungsindustrie angegeben, dass die betriebliche Effizienz die wichtigste Leistung ist, die von ihren Abteilungen erwartet wird. Außerdem haben 50 Prozent der Unternehmen angegeben, dass Cyber-Security ihre Top-Investition sei. Ein Grund dafür ist die gewachsene Angriffsfläche durch vermehrtes Homeoffice, ein anderer sind die Auswirkungen eines Produktionsausfalls durch Cyberattacken. Beide Herausforderungen lassen sich durch das GitOps-Konzept adressieren. Der Ansatz ist im DevOps-Umfeld entstanden und kann sowohl in Verbindung mit DevOps als auch eigenständig eingesetzt werden. Entwicklungsteams erhalten damit Werkzeuge, um den Betrieb von Softwareanwendungen eigenständig zu übernehmen und die Effizienz zu steigern. Die Sicherheit der Infrastruktur wird durch eine Richtungsumkehr des Deployments vom Push zum Pull-Prinzip erreicht.
Das klassische Vorgehen
GitOps lässt sich im Vergleich zu CI/CD-Pipelines gut beschreiben, hier kurz CIOps. Die erste Abbildung zeigt eine vereinfachte CIOps-Pipeline: Klassischerweise wird dabei ein CI-Server über Änderungen an einem Repository informiert. Er führt daraufhin einen Build durch und deployt anschließend die geänderte Anwendung auf einen Server (Push-Prinzip). In der Praxis ist eine CIOps-Pipeline in eine Staging- und Produktionsumgebung aufgeteilt, bei denen die Automatisierung des Deployments durch die Verwendung von Branches in der Versionsverwaltung, etwa Git, umgesetzt werden kann. Nachteil an diesem Vorgehen: Der Prozess ist langsam, da für jedes Deployment ein Build im CI-Server durchlaufen werden muss. Eigentlich ist aber gar kein neuer Build notwendig, da das gleiche Artefakt auf allen Stages ausgeliefert werden könnte. Außerdem benötigt der CI-Server Zugriff auf die Betriebsumgebung, was in Bezug auf die Sicherheit nachteilig ist.
Im Gegensatz zu CIOps werden mit GitOps Änderungen nach dem Pull-Prinzip in die Produktion überführt. So wird die kontinuierliche Integration (CI) einer Anwendung vom eigentlichen Deployment-Prozess getrennt. Das heißt, der CI-Server übernimmt nicht mehr das Deployment, sondern führt nur noch Build und Tests durch und schiebt Artefakte, etwa Docker Images, in eine Registry. Die zweite Abbildung zeigt, wie eine GitOps-Pipeline aussehen kann. GitOps verbessert so zum einen die Sicherheit, da kein schreibender Zugriff durch den CI-Server von außerhalb des Clusters notwendig ist. Zum Anderen ist es effizienter, da eine Anwendung nur einmal gebaut werden muss und das Artefakt anschließend in unterschiedlichen Umgebungen deployt werden kann. Ein weiterer Unterschied zu CIOps ist, dass mit GitOps der Sollzustand einer Umgebung beschrieben wird und spezielle Tools kontinuierlich einen Soll-/Ist-Abgleich durchführen. Abweichungen und Fehler werden so automatisiert erkannt und korrigiert. Diese Tools werden als Operatoren oder auch Custom Controller bezeichnet. Die Abstimmungsschleife zwischen Soll- und Ist-Zustand wird als Reconciliation Loop bezeichnet.
Abbildung 2 zeigt das Deployment mit App-Repository und GitOps-Repository. (Bild: Cloudogu GmbH)
Nützliche Effekte
Der GitOps-Ansatz bringt mehrere Vorteile: Wie schon erwähnt wird die Sicherheit verbessert, da der GitOps-Operator Deployments durchführen kann und sich dieser innerhalb des Clusters befindet. So wird kein Zugriff von außen mehr auf den Cluster benötigt. Darüber hinaus ist der Zugriff auf Git oft einfacher zu organisieren als auf einen API-Server. Nicht nur, dass gegebenenfalls eine Firewall-Freischaltung entfällt, auch die Entwicklungsteams sind mit Git vertraut. GitOps ist im Umfeld von Kubernetes (k8s) entstanden. Nutzt ein Unternehmen kein Kubernetes, ermöglichen Tools die Anwendung von GitOps dennoch. Der zentrale Bestandteil in GitOps ist die vollständige deklarative Beschreibung des Zustands in Git. Dadurch ist ein anderes Vorgehen gefragt als in klassischen CIOps-Pipelines. So müssen jeweils passende Operatoren benutzt werden, die den Kubernetes API-Server um sogenannte Custom Resource Definitions (CRDs) erweitern und Custom Resources (CRs) bereitstellen. Anwendungsfälle mit speziellen Operatoren sind etwa der Einsatz von Templating-Werkzeugen wie Helm oder Kustomize, die Ver- und Entschlüsselung von Secrets, da diese mit GitOps in Git gespeichert werden müssen, sowie die Realisierung von Deployment-Strategien wie Canary Releases, A/B-Tests und Blue/Green Deployments.
Mit seinen vielen Operatoren könnte sich die GitOps-Methode zunächst nur schwer nachvollziehen lassen. Ein Umsetzungsbeispiel bietet der Open Source GitOps Playground. Das Repository beinhaltet eine reproduzierbare GitOps-Infrastruktur mit Kubernetes Cluster, CI-Server (Jenkins), Source Code Management (SCM-Manager) und unterschiedlichen GitOps-Operatoren (Flux und ArgoCD), auf der die Komponenten bereits mit Beispielapplikationen vorkonfiguriert sind. Außerdem zeigt der GitOps Playground eine Umsetzung von Monitoring und Alerting mit Grafana und Prometheus.
Mittelständische Unternehmen investieren selbst in schwierigen Zeiten in Microsoft-Technologien, weil sie überzeugt sind, dass ihre Mitarbeiterproduktivität steigt und sich ihre Kostenstruktur bessert. Microsoft hat mit dem Microsoft-Partner-Network ein Netzwerk aufgebaut, das ein Forum für den Aufbau von Partnerschaften, Zugang zu Ressourcen und einen Rahmen für Dialoge und Kooperationen bietet. Für unsere Leser gibt die Microsoft-Partnerübersicht in Ausgabe Juli/August der IT&Production Tipps für die Suche nach einer geeigneten Branchen- oder Speziallösung im Bereich des produzierenden Gewerbes.
Auf der Suche nach Innovation, nach neuen Lösungen und der Abgrenzung zum Mitbewerb vernetzen sich zunehmend mehr Unternehmen mit externen Experten und Partnern. SAP hat mit dem SAP-Ecosystem ein Netzwerk aufgebaut, das ein Forum für den Aufbau von Partnerschaften, Zugang zu Ressourcen und einen Rahmen für Dialoge und Kooperationen bietet. In der Maiausgabe der Fachzeitschrift IT&Production erhalten unsere Leser einen aktuellen Überblick zum SAP-Ecosystem im Bereich des produzierenden Gewerbes.
Anbieter & Produkte
augmented instructions – digitalisiertes Know how unterstützt die Industrie beim Wissenstransfer
IIoT in Stahl Service Centern
Wachstum durch Kundenorientierung: Das Geheimnis liegt in einem smarten Variantenkonfigurator
Work-in-Process-Management in S/4HANA
Qualität, Lieferketten, Rückverfolgbarkeit – Nachhaltigkeit hat viele Facetten
Prime Edge – eine Edge Lösung für die Industrie
becosEPS – Enterprise Planning System
Weltweit führende APS-Technologie für alle industriellen Anforderungen
ANZEIGE
Whitepaper
Vom 4-Stufen-Modell zum Regelkreis
Smart Factory Elements
Mit Kennzahlen die Produktion im Griff
Monitoring IT, OT and IIoT with Paessler PRTG: use cases and dashboards
Vollautomatische Feinplanung
Videos
Erfolgreiche Asprova APS Einführung bei Danwood: Einer der größten Hersteller schlüsselfertiger Häuser in Euroapa.
Erfolgreiche Asprova APS Einführung bei Strauss Café, zweitgrößter Kaffeehersteller in Polen
Erfolgreiche Asprova APS Einführung bei Panasonic, Hersteller von Komponenten für Autoelektronik
MPDV Mikrolab GmbH – Imagefilm
Erfolgreiche Asprova APS Einführung bei Kontio, finnischer Hersteller von Blockhäusern
Ein Unternehmen, das sich mit der Auswahl eines ERP- Systems befasst, muss sich gleichsam mit einem viel- schichtigen Software-Markt und unklaren Interessen- lagen an interne Abwick- lungsprozesse auseinander- setzen. Guter Rat bei der Investitionsentscheidung ist teuer. ERP/CRM Wissen Kompakt unterstützt Sie bei der gezielten Investition in die IT-Infrastruktur.
Immer mehr Anbieter von Maschinen, Automatisierungstechnik und Industriesoftware integrieren künstliche Intelligenz in ihre Produkte. Das ganze Potenzial spielen selbstlernende Systeme aber erst aus, wenn sie passgenau auf ihren Einsatz in Fertigung und Büro zugeschnitten wurden. Über beide Möglichkeiten, als Fertiger die Vorzüge von industrieller KI zu nutzen, geht es im regelmäßig aktualisierten Themenheft Künstliche Intelligenz.
Das Internet of Things verändert Produktwelten und die Vernetzung in der Fertigung gleichermaßen. Entstehende Ökosysteme laden zur einer neuen Form der Zusammenarbeit ein. Die Spezialausgabe IoT Wissen Kompakt informiert über die Technologie, Projektierung und Anbieter für die eigene Applikation, in- und außerhalb der Fabrik.
Um alle Potenziale eines MES umfassend ausnutzen zu können, beleuchten unsere Autoren in der Serie von MES Wissen Kompakt die erfolgskritischen Faktoren, um Fertigungsunternehmen präventiv zu steuern. Darüber hinaus präsentiert MES Wissen Kompakt ein breites Spektrum an Firmenportraits, Produkt- neuheiten und Dienst- leistungen im MES-Umfeld.