In diesem Dokument wird gezeigt, wie Sie einen Nutzercluster der Version 1.29 oder höher mithilfe von kubeception zu Steuerungsebene V2 migrieren.
1,29: Vorschau
1,28: Nicht verfügbar
1.16: Nicht verfügbar
Nutzercluster-Steuerungsebenen
Vor Google Distributed Cloud Version 1.13 wurde die Steuerungsebene für einen Nutzercluster auf einem oder mehreren Knoten in einem Administratorcluster ausgeführt. Diese Art von Steuerungsebene wird als Kubeception bezeichnet. In Version 1.13 wurde die Steuerungsebene V2 für neue Nutzercluster eingeführt. Wenn Steuerungsebene V2 aktiviert ist, wird die Steuerungsebene für den Nutzercluster im Nutzercluster selbst ausgeführt.
Zu den Vorteilen der Steuerungsebene V2 gehören:
Fehlerisolierung. Ein Administratorclusterfehler hat keine Auswirkungen auf Nutzercluster.
Operative Trennung. Ein Administratorclusterupgrade führt nicht zu Ausfallzeiten für Nutzercluster.
Trennung der Bereitstellung. Sie können die Administrator- und Nutzercluster in verschiedenen Domains oder geografischen Standorten platzieren. Beispielsweise kann sich ein Nutzercluster an einem Edge-Standort an einem anderen geografischen Standort als der Administratorcluster befinden.
Voraussetzungen
Zum Migrieren eines Nutzerclusters zu Steuerungsebene V2 muss der Nutzercluster die folgenden Anforderungen erfüllen:
Der Nutzercluster muss mindestens Version 1.29 haben. Der Administratorcluster und die Knotenpools können eine oder zwei Nebenversionen niedriger als der Nutzercluster sein. Führen Sie bei Bedarf ein Upgrade des Clusters durch.
Für den Nutzercluster muss Dataplane V2 aktiviert sein. Dieses Feld ist unveränderlich. Wenn Dataplane V2 also im Cluster nicht aktiviert ist, können Sie es nicht zu Steuerungsebene V2 migrieren.
Der Nutzercluster muss für die Verwendung des MetalLB oder eines manuellen Load-Balancers konfiguriert sein. Wenn der Nutzercluster den SeeSaw-Load-Balancer verwendet, können Sie ihn zu MetalLB migrieren.
Prüfen Sie das Dokument zur Planung von IP-Adressen und prüfen Sie, ob genügend IP-Adressen für die Knoten der Steuerungsebene des Nutzerclusters verfügbar sind. Die Knoten der Steuerungsebene benötigen statische IP-Adressen und Sie benötigen eine zusätzliche IP-Adresse für eine neue virtuelle IP-Adresse (VIP) der Steuerungsebene.
Konfigurationsdatei des Nutzerclusters aktualisieren
Nehmen Sie die folgenden Änderungen an der vorhandenen Nutzercluster-Konfigurationsdatei vor:
Setzen Sie
enableControlplaneV2
auf „true“.Aktivieren Sie optional die Steuerungsebene für den Nutzercluster der Steuerungsebene V2. Wenn Sie von einem Cluster ohne Hochverfügbarkeit zu einem Cluster mit Hochverfügbarkeit wechseln möchten, ändern Sie
masterNode.replicas
von 1 in 3.Fügen Sie dem Abschnitt
network.controlPlaneIPBlock.ips
die statische IP-Adresse(n) für die Knoten der Steuerungsebene des Nutzerclusters hinzu. Entfernen Sie die IP-Adresse(n) für die Knoten der Steuerungsebene des kubeception-Nutzerclusters aus der IP-Blockdatei des Administratorclusters.Füllen Sie im Abschnitt
network.controlPlaneIPBlock
die Netzmaske und das Gateway aus.Wenn der Abschnitt
network.hostConfig
leer ist, füllen Sie ihn aus.Wenn der Nutzercluster manuelles Load-Balancing verwendet, konfigurieren Sie den Load-Balancer so, dass die Knoten-IP-Adressen der Steuerungsebene für Traffic auf der Datenebene einbezogen werden:
- (
ingressVIP
:80) -> (CP_NODE_IP_ADDRESSES:ingressHTTPNodePort
) - (
ingressVIP
:443) -> (CP_NODE_IP_ADDRESSES:ingressHTTPSNodePort
)
- (
Geben Sie im Feld
loadBalancer.vips.controlPlaneVIP
die neue IP-Adresse für die virtuelle IP-Adresse der Steuerungsebene ein.Alle vorherigen Felder sind unveränderlich, außer wenn der Cluster für die Migration aktualisiert wird. Überprüfen Sie unbedingt alle Einstellungen.
Führen Sie
gkectl diagnose cluster
aus und beheben Sie alle durch den Befehl gefundenen Probleme.gkectl diagnose cluster --kubeconfig=ADMIN_CLUSTER_KUBECONFIG \ --cluster-name=USER_CLUSTER_NAME
Ersetzen Sie Folgendes:
ADMIN_CLUSTER_KUBECONFIG
: der Pfad der kubeconfig-Datei des Administratorclusters.CLUSTER_NAME
: Der Name des Nutzerclusters.
Manuelle Load-Balancer-Konfiguration anpassen
Wenn Ihr Nutzercluster manuelles Load-Balancing verwendet, führen Sie den Schritt in diesem Abschnitt aus. Andernfalls können Sie diesen Abschnitt überspringen.
Konfigurieren Sie auf die gleiche Weise den Load-Balancer für einen CPv2-Nutzercluster für jede der drei neuen IP-Adressen für Knoten der Steuerungsebene, die Sie im Abschnitt network.controlPlaneIPBlock angegeben haben:
- (ingressVIP:80) -> (NEW_NODE_IP_ADDRESS:ingressHTTPNodePort)
- (ingressVIP:443) -> (NEW_NODE_IP_ADDRESS:ingressHTTPNodePort)
Cluster aktualisieren
Führen Sie den folgenden Befehl aus, um den Cluster zu Steuerungsebene V2 zu migrieren:
gkectl update cluster \ --kubeconfig ADMIN_CLUSTER_KUBECONFIG \ --config USER_CLUSTER_CONFIG
Ersetzen Sie Folgendes:
ADMIN_CLUSTER_KUBECONFIG
: der Pfad der kubeconfig-Datei des AdministratorclustersUSER_CLUSTER_CONFIG
: Pfad der Konfigurationsdatei des Nutzerclusters.