Auf dieser Seite werden die Konfigurationsoptionen und -anforderungen erläutert, die Sie bei der Planung Ihrer Cluster für die Verwendung mit Config Sync beachten müssen.
Weitere allgemeine Best Practices für die Planung von GKE-Clustern finden Sie in der GKE-Dokumentation unter Cluster-Konfigurationsoptionen.
Ressourcenanforderungen im Autopilot-Modus
Im GKE Autopilot-Modus werden Ressourcenanfragen automatisch geändert, um die Stabilität der Arbeitslast zu gewährleisten. Informationen dazu, wie Sie diese Anfragen planen, finden Sie in der GKE-Dokumentation unter Autopilot-Ressourcenanfragen.
Aufgrund der Art und Weise, wie Autopilot Ressourcenanfragen ändert, nimmt Config Sync die folgenden Anpassungen vor:
- Passt die benutzerdefinierten Überschreibungslimits für Ressourcen an Anfragen an.
- Überschreibungen werden nur angewendet, wenn eine oder mehrere Ressourcenanfragen höher sind als die entsprechende in der Anmerkung deklarierte Ausgabe oder eine oder mehrere Ressourcenanfragen niedriger sind als die entsprechende Eingabe in der Anmerkung.
Unterstützte GKE Enterprise-Plattformen und ‑Versionen
Damit Sie Config Sync verwenden können, muss sich Ihr Cluster auf einer von GKE Enterprise unterstützten Plattform und Version befinden.
Workload Identity Federation for GKE
Die Identitätsföderation von Arbeitslasten für GKE wird für eine sichere Verbindung zu Google Cloud-Diensten empfohlen. Die Identitätsföderation von Arbeitslasten für GKE ist in Autopilot-Clustern standardmäßig aktiviert.
Wenn Sie Flottenpakete (Vorabversion) mit Config Sync verwenden möchten, ist die Workload Identity-Föderation für GKE erforderlich.
GKE-Release-Versionen
Wenn Config Sync Upgrades automatisch verwalten soll, sollten Sie Ihren Cluster in einem GKE-Releasekanal registrieren. Bei automatischen Config Sync-Upgrades wird anhand von Release-Channels ermittelt, wann ein Upgrade auf eine neue Version durchgeführt werden soll.
Wenn Sie automatische Upgrades aktivieren, ohne sich in einer Release-Version zu registrieren, verwaltet Config Sync Upgrades für diesen Cluster so, als würde der Cluster die Stable-Release-Version verwenden.
Netzwerk
Im folgenden Abschnitt werden einige der Änderungen aufgeführt, die Sie je nach Netzwerkeinstellungen an Ihrem GKE-Cluster vornehmen müssen.
Weitere Informationen zu den GKE-Netzwerkoptionen finden Sie unter Netzwerkübersicht.
Private Cluster
Wenn Sie private Cluster verwenden, sollten Sie Ihre Cluster auf eine der folgenden Arten konfigurieren, damit Config Sync Zugriff hat und sich bei Ihrer Source of Truth authentifizieren kann:
Konfigurieren Sie Cloud NAT so, dass ausgehender Traffic von privaten GKE-Knoten zugelassen wird. Weitere Informationen finden Sie unter Beispielkonfiguration für GKE.
Aktivieren Sie den privaten Google-Zugriff, um eine Verbindung zu der Gruppe von externen IP-Adressen herzustellen, die von Google APIs und Google-Diensten verwendet werden.
Öffentliche Cluster
Wenn Sie öffentliche Cluster verwenden, aber strenge VPC-Firewall-Anforderungen haben, die unnötigen Traffic blockieren, müssen Sie Firewallregeln erstellen, um den folgenden Traffic zuzulassen:
- TCP: Eingehenden und ausgehenden Traffic an Port 53 und 443 zulassen
- UDP: Erlauben Sie ausgehenden Traffic an Port 53.
Wenn Sie diese Regeln nicht angeben, wird Config Sync nicht korrekt synchronisiert. nomos status
meldet den folgenden Fehler:
Error: KNV2004: unable to sync repo Error in the git-sync container
Cloud Source Repositories mit Authentifizierung über das Compute Engine-Standarddienstkonto
Wenn Sie Config Sync verwenden, um eine Verbindung zu Cloud Source Repositories herzustellen, und die Workload Identity Federation for GKE nicht aktiviert ist, können Sie das Standarddienstkonto der Compute Engine für die Authentifizierung verwenden. Sie müssen Zugriffsbereiche mit schreibgeschützten Bereichen für die Knoten im Cluster verwenden.
Sie können den schreibgeschützten Bereich für Cloud Source Repositories hinzufügen, indem Sie cloud-source-repos-ro
in die Liste --scopes
aufnehmen, die beim Erstellen des Clusters angegeben wird, oder indem Sie den Bereich cloud-platform
beim Erstellen des Clusters verwenden. Beispiel:
gcloud container clusters create CLUSTER_NAME --scopes=cloud-platform
Ersetzen Sie CLUSTER_NAME
durch den Namen Ihres Clusters.
Hinweis: Sie können Zugriffsbereiche nicht ändern, nachdem Sie einen Knotenpool erstellt haben.
Allerdings haben Sie die Möglichkeit, unter Verwendung desselben Clusters einen neuen Knotenpool mit dem richtigen Zugriffsbereich zu erstellen. Der Standardbereich gke-default
enthält nicht cloud-source-repos-ro
.
Arm-Knoten
Config Sync kann nur auf x86-basierten Knoten und nicht auf Arm-Knoten ausgeführt werden. Wenn Sie Config Sync jedoch in einem Cluster mit mehreren Architekturen ausführen müssen, gehen Sie je nach Clustertyp so vor:
- GKE on AWS oder GKE on Azure: Fügen Sie Ihren Arm-Knoten eine Markierung hinzu, damit auf den Arm-Knoten keine Pods ohne entsprechende Toleranz geplant werden.
- GKE: GKE fügt eine Standard-Taint hinzu, damit Arbeitslasten ohne die entsprechende Toleranz nicht dort geplant werden. Es sind keine weiteren Maßnahmen erforderlich.