Suchen

Definition „GitOps“ Was ist GitOps?

| Autor / Redakteur: zeroshope / Stephan Augsten

GitOps beschreibt ein Konzept, bei dem die Open-Source-Software Git für den gesamten Verwaltungsprozess einer Anwendung/ eines Software-basierten Produkts eingesetzt wird – von der Entwicklung über die Bereitstellung bis zur Pflege.

Firmen zum Thema

Illustration einer GitOps-Pipeline zur Bereitstellung der Laufzeitumgebung für eine Anwendung, wobei Kubernetes nicht zwingend notwendig ist.
Illustration einer GitOps-Pipeline zur Bereitstellung der Laufzeitumgebung für eine Anwendung, wobei Kubernetes nicht zwingend notwendig ist.
(Bild: Container Solutions)

GitOps ist ein Paradigma, durch das Entwickler Aufgaben durchführen können, die eigentlich in den Bereich der IT Operationen fallen – also beispielsweise die Bereitstellung von Software-Produkten.

Auf diese Weise lässt sich auch der Name erklären: Das Ganze findet in der Open-Source-Software Git statt. Ops ist einfach nur die Abkürzung für „Operations“ bzw. „Operationen“. GitOps ermöglicht es dabei, deutlich effizienter zu arbeiten und die Automatisierung von Prozessen zu erhöhen.

Git: Software zur verteilten Versionsverwaltung

Git ist eine freie Software, die auf Linus Torvalds zurückgeht und das BitKeeper-System ablöste, nachdem dieses nicht länger kostenlos zur Verfügung stand. Git funktioniert unter allen gängigen Betriebssystemen. Das Programm zeichnet hohe Effizienz aus und ist sicher gegen unabsichtliche sowie böswillige Verfälschungen. Es gestattet es, dass Versionen von Dateien an unterschiedlichen Stellen verwaltet werden können.

GitOps umgeht Dashboards

Neue Technologien verlangen nicht nur das Schreiben von Code. Es sind auch weitere Punkte zu berücksichtigen. Hierunter fallen beispielsweise:

  • Computer-Infrastruktur
  • Speichersysteme
  • Sicherheitskonzepte
  • Entwicklungspipelines

Vereinfacht gesagt: Nicht jede App und nicht alle Tools passen sofort zur Umgebung, in der sie laufen sollen. Deshalb verfügen diese Software-Produkte über Management-Konsolen in der Form von Dashboards. Hier können das Onboarding, die Konfigurationen sowie die Verwaltung der Tools bzw. Apps vorgenommen werden.

Dabei entstehen jedoch Probleme: Die Dashboards stammen in der Regel von Drittanbietern und müssen selbst an die Bedürfnisse der tatsächlichen Nutzer angepasst werden. Zudem sind ihre Funktionen in der Regel eingeschränkt. Technologie-Teams müssen viel Arbeitszeit aufwenden, um mit diesen Schwierigkeiten umzugehen.

GitOps löst dieses Problem. Die Dashboards werden umgangen. Stattdessen verwalten die Entwickler die Software-Produkte direkt aus deren Code-Basis heraus. Der Code wird in das Git des Unternehmens/der Institution eingespeist. So lassen sich neue Versionen schnell und einfach verteilen. Typische Git-Verwaltungen sind GitHub, GitLab oder auch Bitbucket.

Die gesamte Verwaltung über das eigene Git

Durch diesen Ansatz lässt sich der gesamte Technologie-Slack über das Git entwickeln, bereitstellen und updaten. Der Vorteil liegt auf der Hand: Es können weitläufige Automatisierungen umgesetzt werden, die mit Dachboards nicht möglich wären. Schließlich finden die Arbeitsprozesse jetzt an der identischen Stelle statt und nicht mehr getrennt voneinander.

Als Beispiel für Server: Die eigene Infrastruktur kann durch die Entwickler als Code ausgedrückt werden. Im Git programmieren sie nun, dass die Server automatisch skalierbar sind. Andere Entwickler-Teams können zudem einfach den Code der Server-Konfiguration auslesen und müssen nicht mit dem Dashboard des Cloud-Anbieters arbeiten.

(ID:46419096)