Größe eines Standardclusters anpassen


Auf dieser Seite wird erläutert, wie Sie die Größe von Standardclustern von Google Kubernetes Engine (GKE) manuell anpassen. Durch Ändern der Clustergröße können Sie die Anzahl der darin enthaltenen Knoten erhöhen oder reduzieren. Alternativ können Sie Ihren Cluster automatisch skalieren. Dabei passt GKE die Größe Ihrer Knotenpools automatisch an sich ändernde Bedingungen an, z. B. Änderungen an Arbeitslasten und Ressourcennutzung.

Diese Anleitung gilt nicht für Autopilot-Cluster in GKE, die automatisch die Größe basierend auf der Anzahl der Pods im Cluster anpassen.

Wenn Sie Ihrem Cluster Knoten hinzufügen oder daraus entfernen, fügt GKE die zugehörigen VM-Instanzen der zugrunde liegenden Compute Engine-MIGs hinzu oder entfernt sie, die für Ihre Knotenpools bereitgestellt wurden. Verwenden Sie zum Entfernen von Knoten kubectl delete node nicht, da die Compute Engine-VM-Instanz in der zugrunde liegenden verwalteten Instanzgruppe des Knotenpools nicht gelöscht wird. Verwenden Sie Cluster Autoscaler oder verringern Sie die Größe des Clusters manuell.

Hinweis

Führen Sie die folgenden Aufgaben aus, bevor Sie beginnen:

  • Aktivieren Sie die Google Kubernetes Engine API.
  • Google Kubernetes Engine API aktivieren
  • Wenn Sie die Google Cloud CLI für diese Aufgabe verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit gcloud components update ab.

Größe eines Clusters erhöhen

Wenn Sie die Größe eines Clusters erhöhen, treten die folgenden Änderungen auf:

  • neue Knoteninstanzen mit derselben Konfiguration wie die der vorhandenen Instanzen werden erstellt,
  • möglicherweise werden neue Pods auf den neuen Instanzen geplant und
  • vorhandene Pods nicht auf die neuen Instanzen verschoben.

gcloud

Führen Sie den Befehl gcloud container clusters resize aus, um die Größe der Knotenpools eines Clusters zu erhöhen:

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
    --num-nodes NUM_NODES

Dabei gilt:

  • CLUSTER_NAME ist der Name des Clusters, dessen Größe geändert werden soll.
  • POOL_NAME ist der Name des Knotenpools, dessen Größe geändert werden soll.
  • NUM_NODES ist die Anzahl der Knoten im Pool in einem zonalen Cluster. Wenn Sie multizonale oder regionale Cluster verwenden, ist NUM_NODES die Anzahl der Knoten jeder Zone, in der sich die Knotenpools befinden.

Wiederholen Sie diesen Befehl für weitere Knotenpools. Wenn Ihr Cluster nur einen einzigen Knotenpool hat, lassen Sie das Flag --node-pool weg.

Console

Zum Vergrößern der Knotenpools eines Clusters führen Sie die folgenden Schritte aus:

  1. Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf.

    Zur Seite "Google Kubernetes Engine"

  2. Klicken Sie neben dem Cluster, den Sie bearbeiten möchten, auf Aktionen  und dann auf Bearbeiten.

  3. Klicken Sie neben dem Tab Details auf den Tab Knoten.

  4. Klicken Sie im Bereich Knotenpools auf den Namen des Knotenpools, den Sie vergrößern möchten.

  5. Klicken Sie auf Größe ändern .

  6. Geben Sie im Feld Anzahl der Knoten den gewünschten Wert für den Knotenpool ein und klicken Sie dann auf Größe ändern.

  7. Wiederholen Sie den Vorgang nach Bedarf für weitere Knotenpools.

Größe eines Clusters verringern

Wenn Sie die Größe eines Clusters verringern, werden die folgenden Änderungen vorgenommen:

  • GKE beendet Knoten, die gelöscht werden, ordnungsgemäß mithilfe des Drain-Prozesses, um die Pods aus der Instanz zu entfernen. PodDisruptionBudget und terminationGracePeriodSeconds werden jeweils bis zu einer Stunde lang berücksichtigt.
  • Die von einem Replikations-Controller verwalteten Pods werden vom Controller neu geplant, um sie auf den verbleibenden Instanzen auszuführen.
  • Nicht von einem Replikations-Controller verwaltete Pods werden nicht neu gestartet.

Die MIG unterscheidet nicht zwischen Instanzen, in denen Pods ausgeführt werden, und Instanzen ohne Pods. Beim Verringern der Größe werden Instanzen nach dem Zufallsprinzip entfernt.

Wie Sie neue Knotenpools hinzufügen und vorhandene Knotenpools verwalten, erfahren Sie in diesem Artikel.

gcloud

Führen Sie den Befehl gcloud container clusters resize aus, um die Größe der Knotenpools eines Clusters zu verringern:

gcloud container clusters resize CLUSTER_NAME --node-pool POOL_NAME \
    --num-nodes NUM_NODES

Dabei gilt:

  • CLUSTER_NAME ist der Name des Clusters, dessen Größe geändert werden soll.
  • POOL_NAME ist der Name des Knotenpools, dessen Größe geändert werden soll.
  • NUM_NODES ist die Anzahl der Knoten im Pool in einem zonalen Cluster. Wenn Sie multizonale oder regionale Cluster verwenden, ist NUM_NODES die Anzahl der Knoten jeder Zone, in der sich die Knotenpools befinden.

Wiederholen Sie diesen Befehl für weitere Knotenpools. Wenn Ihr Cluster nur einen einzigen Knotenpool hat, lassen Sie das Flag --node-pool weg.

Console

Zum Verringern der Größe der Knotenpools eines Clusters führen Sie die folgenden Schritte aus:

  1. Rufen Sie in der Google Cloud Console die Seite Google Kubernetes Engine auf.

    Zur Seite "Google Kubernetes Engine"

  2. Klicken Sie neben dem Cluster, den Sie bearbeiten möchten, auf Aktionen  und dann auf Bearbeiten.

  3. Klicken Sie neben dem Tab Details auf den Tab Knoten.

  4. Klicken Sie im Bereich Knotenpools auf den Namen des Knotenpools, den Sie verkleinern möchten.

  5. Klicken Sie auf Größe ändern .

  6. Geben Sie im Feld Anzahl der Knoten den gewünschten Wert für den Knotenpool ein und klicken Sie dann auf Größe ändern.

  7. Wiederholen Sie den Vorgang nach Bedarf für weitere Knotenpools.

Cluster automatisch skalieren

Mit der GKE-Funktion Cluster Autoscaler können Sie die Größe der Knotenpools anpassen, wenn sich beispielsweise die Arbeitslasten oder die Ressourcenauslastung ändern.

Weitere Informationen zur Funktionsweise der automatischen Skalierung erhalten Sie in der Dokumentation zu Cluster Autoscaler. Informationen zum Einrichten von Autoscaling für Cluster finden Sie unter Autoscaling von Clustern.

Weitere Informationen