Config Sync ist ein GitOps-Dienst, der als Teil der Google Kubernetes Engine (GKE) Enterprise-Version angeboten wird. Config Sync basiert auf einem Open-Source-Kern und ermöglicht Clusteroperatoren und Plattformadministratoren, Konfigurationen aus einer „Source of Truth“ bereitzustellen. Der Dienst bietet die Flexibilität, einen oder mehrere Cluster und eine beliebige Anzahl von Repositories pro Cluster oder Namespace zu unterstützen. Die Cluster können sich in einer Hybrid- oder Multi-Cloud-Umgebung befinden.
Config Sync ist mit einer Google Kubernetes Engine (GKE) Enterprise-Lizenz verfügbar.
Vorteile von Config Sync
GitOps gilt als universelle Best Practice für Organisationen, die die Kubernetes-Konfiguration in großem Maßstab verwalten. Die Vorteile einer verbesserten Stabilität, besserer Lesbarkeit, Konsistenz, Prüfung und Sicherheit sind alle GitOps-Tools gemeinsam. Config Sync ist Teil der Google Kubernetes Engine (GKE) Enterprise-Version, die eine Reihe einzigartiger Vorteile bietet:
- Eingebunden in Google Kubernetes Engine (GKE) Enterprise: Plattformadministratoren können Config Sync mit wenigen Klicks in der Google Cloud Console, mit Terraform oder mithilfe der Google Cloud CLI auf jedem mit Ihrer Flotte verbundenen Cluster installieren. Der Dienst ist für die Verwendung mit anderen Google Kubernetes Engine (GKE) Enterprise- und Google Cloud-Diensten vorkonfiguriert, z. B. Policy Controller, Workload Identity Federation for GKE und Cloud Monitoring.
- Integrierte Beobachtbarkeit: Config Sync hat ein Dashboard zur Beobachtbarkeit, das in die Google Cloud Console eingebunden ist und keine zusätzliche Einrichtung erfordert. Plattformadministratoren können den Status ihrer Synchronisierung und des Abgleichs in der Google Cloud Console oder mithilfe der Google Cloud CLI ansehen.
- Multi-Cloud- und Hybrid-Unterstützung: Config Sync wird vor jedem GA-Release in mehreren Cloud-Anbietern und in Hybridumgebungen getestet. Informationen zur Supportmatrix finden Sie unter Version und Upgrade-Support für Google Kubernetes Engine (GKE) Enterprise Edition.
Config Sync verstehen
Das folgende Diagramm bietet einen Überblick darüber, wie Teams ihre Cluster mit einem einzelnen Stamm-Repository (von einem Administrator verwaltet) und mehreren Namespace-Repositories (von Anwendungsoperatoren verwaltet) synchronisieren können:
Ein zentraler Administrator verwaltet die zentralisierte Infrastruktur für die Organisation und erzwingt Richtlinien auf dem Cluster und für alle Namespaces in der Organisation. Die Anwendungsoperatoren, die für die Verwaltung von Live-Bereitstellungen zuständig sind, wenden configurations auf die Anwendungen in den Namespaces an, mit denen sie arbeiten.
Cluster konfigurieren
Mit Config Sync können Sie gemeinsame Konfigurationen und Richtlinien wie Policy Controller-Einschränkungen erstellen und einheitlich auf registrierte und verbundene Cluster in einer Flotte aus einer Single Source of Truth anwenden.
Anstatt den kubectl apply
-Befehl wiederholt auszuführen, können Sie die Bereitstellung von Konfigurationsänderungen auf Clustern über GitOps-ähnliche Tools organisieren. Weitere Informationen finden Sie unter Sichere Rollouts mit Config Sync.
In dieser und anderen Anleitungen wird ein Git-Repository als "Source of Truth" verwendet. Sie können aber auch ein OCI-Image oder ein Helm-Diagramm verwenden.
Namespaces konfigurieren
Das Konfigurieren von Namespaces mit Config Sync bietet folgende Funktionen:
- Sie können Kubernetes-Namespaces kontinuierlich mit Namespace-bezogenen Richtlinien wie RBAC-Rollen über registrierte und verbundene Cluster hinweg bereitstellen. Namespace-bezogene Richtlinien vereinfachen die Implementierung und Verwaltung der Mehrmandantenfähigkeit in Ihren Clustern.
- Sie können Richtlinien auf mehrere verwandte Namespaces anwenden, ohne Konfigurationen duplizieren zu müssen. Außerdem können Sie eine Konfiguration für einen bestimmten Namespace oder eine Gruppe von Namespaces überschreiben oder erweitern, was die Durchsetzung einheitlicher Richtlinien für alle Mandanten erleichtert.