Weben GitOps - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Weben GitOps

Weave GitOps wurde von Weaveworks entwickelt, dem Unternehmen, das den Begriff eingeführt hat. GitOps Dieses Tool bietet eine umfassende GitOps Lösung, die auf den Kernprinzipien aufbaut. GitOps

GitOps Unterstützung

Flächen Funktionen des Tools

Git als zentrale Informationsquelle

Weave GitOps verwendet Git-Repositorys als maßgebliche Quelle für die Definition des gewünschten Systemstatus. Alle Konfigurationen, einschließlich Anwendungsmanifeste, Infrastrukturdefinitionen und Richtlinien, werden in Git gespeichert.

Deklarative Konfiguration

Das System stützt sich auf deklarative Beschreibungen des gesamten Systemstatus. Bei diesen Beschreibungen handelt es sich in der Regel um Kubernetes-Manifeste, Helm-Diagramme oder andere deklarative Formate.

Automatisierte Synchronisation

Weave überwacht Git-Repositorys GitOps kontinuierlich auf Änderungen. Wenn es Änderungen erkennt, wendet es sie automatisch auf die Zielumgebung an.

Kubernetes-native Architektur

Weave GitOps besteht aus einer Reihe von Kubernetes-Controllern und benutzerdefinierten Ressourcen. Es nutzt die Erweiterungsmechanismen in Kubernetes, um Funktionen bereitzustellen. GitOps

Kontinuierliche Versöhnung

Dieses Tool vergleicht ständig den aktuellen Status des Clusters mit dem gewünschten Status, der in Git definiert ist. Es korrigiert automatisch jede Abweichung, die zwischen diesen Zuständen festgestellt wird.

Verwaltung mehrerer Cluster

Weave GitOps unterstützt die Verwaltung mehrerer Kubernetes-Cluster von einer einzigen Steuerungsebene aus. Es ermöglicht eine konsistente Anwendungsbereitstellung in verschiedenen Umgebungen.

Richtlinie als Code

Weave GitOps beinhaltet das Konzept der Richtlinie als Code zur Durchsetzung von Sicherheits- und Compliance-Regeln. Richtlinien werden zusammen mit Anwendungscode und Infrastrukturdefinitionen versionsgesteuert.

Progressive Bereitstellung

Dieses Tool unterstützt fortgeschrittene Bereitstellungsstrategien wie Veröffentlichungen und blue/green Bereitstellungen auf Canary. Es ist in Flagger integriert und ermöglicht so eine automatisierte, progressive Bereitstellung.

Beobachtbarkeit und Dashboards

Weave GitOps bietet integrierte Dashboards zur Überwachung des Status von Anwendungen und Clustern. Es bietet Einblicke in Abstimmungsprozesse und den Zustand von Clustern.

Von Haus aus sicher

Das Tool implementiert bewährte Sicherheitsverfahren, einschließlich RBAC-Integration und Verwaltung von Geheimnissen. Es unterstützt verschiedene Authentifizierungsmethoden und lässt sich in Identitätsanbieter für Unternehmen integrieren.

Erweiterbarkeit und Integration

Das Tool ist so konzipiert, dass es mit einer Vielzahl von Cloud-nativen Tools funktioniert. Es unterstützt beliebte Tools wie Flux, Helm und Kustomize.

Self-Service-Entwicklerplattformen

Weave GitOps ermöglicht die Schaffung von Self-Service-Plattformen für Entwickler. Es bietet Vorlagen und Leitplanken für die Anwendungsbereitstellung.

GitOps -Automatisierung

Das Tool automatisiert viele Aspekte des GitOps Workflows, einschließlich der Generierung von Pull-Requests für Updates.

Pipelines für die kontinuierliche Lieferung

Es lässt sich in CI/CD Systeme integrieren, um end-to-end Lieferleitungen zu erstellen.

Überwachung und Compliance

Weave DevOps bietet einen vollständigen Prüfpfad aller Änderungen und Aktionen. Es hilft Ihnen, Compliance-Anforderungen durch Versionskontrolle und automatisierte Prozesse zu erfüllen.

Skalierbarkeit

Das Tool ist so konzipiert, dass es von kleinen Projekten bis hin zu großen Implementierungen auf Unternehmensebene skaliert werden kann.

Zusammenarbeit im Team

Weave GitOps erleichtert die Zusammenarbeit zwischen Entwicklungs- und Betriebsteams durch Git-basierte Workflows.

GitOps als Service

Dieses Tool wird GitOps als verwalteter Service angeboten, was die Einführung und Verwaltung vereinfacht.

Hybrid- und Multi-Cloud-Unterstützung

Weave GitOps ermöglicht ein konsistentes Management für verschiedene Cloud-Anbieter und lokale Umgebungen.

Kontinuierliche Sicherheit

Das Tool integriert Sicherheitsscans und die Durchsetzung von Richtlinien während des gesamten Bereitstellungsprozesses.

Weave GitOps implementiert diese Prinzipien, um eine umfassende GitOps Lösung bereitzustellen, die über die grundlegende Automatisierung der Bereitstellung hinausgeht. Ziel ist es, ein vollständiges Betriebsmodell für Cloud-native Anwendungen zu entwickeln, das sich auf Sicherheit, Skalierbarkeit und Benutzerfreundlichkeit konzentriert. Durch die Einhaltung dieser GitOps Prinzipien GitOps hilft Weave Unternehmen dabei, eine konsistente, überprüfbare und effiziente Verwaltung ihrer Kubernetes-Umgebungen über mehrere Cluster und Cloud-Anbieter hinweg zu erreichen.

Weitere Informationen finden Sie in der Weave-Dokumentation. GitOps

Architektur

Das folgende Diagramm veranschaulicht einen CD-Workflow, GitOps der Weave GitOps innerhalb eines EKS-Clusters verwendet. Ausführliche Informationen finden Sie im GitOpsWeave-Repository.

GitOps Weave-Architektur und Arbeitsablauf auf. AWS

Wobei:

  • Schritt 1: Zusammenführung von Pull-Requests (PR). Ein Entwickler überträgt Änderungen an Kubernetes-Manifesten oder Helm-Diagrammen, die in einem Git-Repository gespeichert sind. Wenn der PR überprüft und mit dem Hauptzweig zusammengeführt wurde, wird der gewünschte Status der Anwendung in der Quellcodeverwaltung aktualisiert.

  • Schritt 2: Repository-Synchronisierung. Weave GitOps läuft im Flux-Namespace im EKS-Cluster und überwacht kontinuierlich das konfigurierte Git-Repository. Wenn es Änderungen erkennt, ruft es die neuesten Updates ab, um den deklarierten Status abzugleichen.

  • Schritt 3: Bereitstellung im Ziel-Namespace. Weave GitOps vergleicht den gewünschten Status von Git mit dem Live-Status im Cluster. Anschließend werden die erforderlichen Änderungen auf den Ziel-Workload-Namespace angewendet, sodass die Anwendung entsprechend bereitgestellt oder aktualisiert wird.