Config Sync ist ein GitOps-Dienst, der in Google Kubernetes Engine (GKE) enthalten ist. Er synchronisiert automatisch Konfigurationen und Richtlinien in Ihren Kubernetes-Clustern aus einer zentralen Source of Truth, z. B. einem Git-Repository. Durch die automatisierte Synchronisierung können Sie Clusterflotten zentral verwalten, Konfigurationsabweichungen verhindern und die Stabilität und Sicherheit für Plattform- und Anwendungsteams verbessern.
Dieses Dokument richtet sich an Operatoren, die die Konfigurationsverwaltung für ihre Teams zentralisieren möchten.
Vorteile von Config Sync
Config Sync bietet die folgenden wichtigen GitOps-Vorteile für die Verwaltung Ihrer Kubernetes-Cluster:
- Konsistenz in allen Umgebungen: Durch die Verwendung einer zentralen Informationsquelle wie einem Git-Repository können Sie dafür sorgen, dass Ihre Clusterkonfigurationen und -richtlinien in allen Umgebungen stabil und konsistent bleiben.
- Automatischer Abgleich: Config Sync überwacht Ihre Source of Truth kontinuierlich und gleicht den Status Ihrer Cluster automatisch damit ab. So wird eine Konfigurationsabweichung verhindert und manueller Aufwand gespart.
- Versionskontrollierte Konfiguration: Wenn Sie Ihre Kubernetes-Manifeste in Git speichern, können Sie Standard-Versionskontroll-Workflows nutzen, einschließlich Peer-Reviews, Audit-Trails und einfachen Rollbacks.
So funktioniert Config Sync
Config Sync überwacht kontinuierlich eine zentrale „Source of Truth“ und gleicht den Status Ihrer Cluster automatisch damit ab. Sie können ein Git-Repository, ein OCI-Image oder ein Helm-Diagramm als „Source of Truth“ verwenden.
Das folgende Diagramm zeigt, wie ein Plattformadministrator zentrale Richtlinien verwalten kann, während drei Anwendungsoperatoren ihre eigenen Namespace-Konfigurationen verwalten. Die Namespaces haben alle dieselbe Administratorkonfiguration, aber jeder Namespace hat eine andere Anwendungskonfiguration.
Cluster konfigurieren
Mit Config Sync können Sie gemeinsame Konfigurationen und Richtlinien erstellen und einheitlich auf registrierte und verbundene Cluster in einer Flotte aus einer Single Source of Truth anwenden.
Anstatt den kubectl apply-Befehl wiederholt manuell auszuführen, können Sie Konfigurationsänderungen für Clusterflotten orchestrieren.
Namespaces konfigurieren
Mit Config Sync können Sie Kubernetes-Namespaces mit namespace-bezogenen Richtlinien wie RBAC-Rollen bereitstellen und verwalten. Mit diesen Richtlinien können Sie die Mehrmandantenfähigkeit in Ihren Clustern implementieren und verwalten, sodass Anwendungsteams ihre eigenen Konfigurationen sicher verwalten können.