Cluster automatisch skalieren

Auf dieser Seite wird beschrieben, wie Sie Ihre Google Kubernetes Engine-Cluster (GKE) automatisch skalieren. In diesem Artikel wird die Funktionsweise von Cluster Autoscaler beschrieben.

Cluster Autoscaler verwenden

Im folgenden Abschnitt wird die Nutzung von Cluster Autoscaler erklärt.

Cluster mit Autoscaling erstellen

gcloud

Verwenden Sie zum Erstellen eines Clusters mit Autoscaling das Flag --enable-autoscaling und geben Sie --min-nodes und --max-nodes an.

Der folgende Befehl erstellt einen Cluster mit 30 Knoten: Autoscaling für Knoten ist aktiviert und passt die Anzahl der Knoten entsprechend der Clusterlast automatisch an. Der Cluster Autoscaler kann die Größe des Standardknotenpools auf 15 Knoten verringern oder den Knotenpool auf bis zu 50 Knoten erhöhen.

gcloud container clusters create cluster-name --num-nodes 30 \
    --enable-autoscaling --min-nodes 15 --max-nodes 50 [--zone compute-zone] | [--region compute-region]

Dabei gilt:

  • --num-nodes gibt die Anzahl der Knoten an, die in den einzelnen Zonen des Clusters erstellt werden sollen. Der Standardwert ist 3.
  • --enable-autoscaling gibt an, dass Autoscaling aktiviert ist.
  • --min-nodes gibt die Mindestanzahl von Knoten für den Standardknotenpool an.
  • --max-nodes gibt die maximale Anzahl von Knoten für den Standardknotenpool an.
  • --zone gibt die Computing-Zone an, in der das Autoscaling neue Knoten erstellen soll.
  • --region gibt die [Computing-Region] an, in der das Autoscaling neue Knoten erstellen soll.

Console

So erstellen Sie einen neuen Cluster, in dem für den Standardknotenpool Autoscaling aktiviert ist:

  1. Rufen Sie in der Cloud Console das Kubernetes Engine-Menü auf.

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie auf Erstellen.

  3. Konfigurieren Sie den Cluster wie gewünscht.

  4. Klicken Sie im Navigationsbereich unter Knotenpools auf default-pool.

  5. Klicken Sie das Kästchen Autoscaling aktivieren an.

  6. Ändern Sie die Werte in den Feldern Mindestanzahl von Knoten und Maximale Anzahl von Knoten nach Bedarf.

  7. Klicken Sie auf Erstellen.

Knotenpools mit Autoscaling hinzufügen

gcloud

Mit dem folgenden Befehl erstellen Sie einen Knotenpool der Größe 3 (Standard) mit automatischer, lastabhängiger Knotenskalierung, wobei der Knotenpool maximal auf 5 und minimal auf 1 Knoten skaliert wird:

gcloud container node-pools create pool-name --cluster cluster-name \
    --enable-autoscaling --min-nodes 1 --max-nodes 5 [--zone compute-zone]

Dabei gilt:

  • --cluster gibt den Cluster an, in dem der Knoten erstellt wird.
  • --enable-autoscaling gibt an, dass Autoscaling aktiviert ist.
  • --min-nodes gibt die Mindestanzahl von Knoten für den Knotenpool an.
  • --max-nodes gibt die maximale Anzahl von Knoten für den Knotenpool an.
  • --zone gibt die Computing-Zone an, in der das Autoscaling neue Knoten erstellen soll.

Console

So fügen Sie einem vorhandenen Cluster einen Knotenpool mit Autoscaling hinzu:

  1. Rufen Sie in der Cloud Console das Kubernetes Engine-Menü auf.

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.

  3. Klicken Sie auf Knotenpool hinzufügen .

  4. Konfigurieren Sie den Knotenpool wie gewünscht.

  5. Klicken Sie unter Größe das Kästchen Autoscaling aktivieren an.

  6. Ändern Sie die Werte in den Feldern Mindestanzahl von Knoten und Maximale Anzahl von Knoten nach Bedarf.

  7. Klicken Sie auf Erstellen.

Autoscaling für vorhandene Knotenpools aktivieren

gcloud

Mit dem folgenden Befehl können Sie die automatische Skalierung für einen vorhandenen Knotenpool aktivieren:

gcloud container clusters update cluster-name --enable-autoscaling \
    --min-nodes 1 --max-nodes 10 --region compute-region || --zone compute-zone --node-pool default-pool

Dabei gilt:

  • --enable-autoscaling gibt an, dass Autoscaling aktiviert ist.
  • --min-nodes gibt die Mindestanzahl von Knoten für den Knotenpool an.
  • --max-nodes gibt die maximale Anzahl von Knoten für den Knotenpool an.
  • --region gibt die [Computing-Zone] des Clusters an.
  • --node-pool gibt den gewünschten Knotenpool an. Wenn Sie nur einen Knotenpool haben, geben Sie für dieses Flag default-pool an.

Console

So aktivieren Sie Autoscaling für einen vorhandenen Knotenpool:

  1. Rufen Sie in der Cloud Console das Kubernetes Engine-Menü auf.

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.

  3. Klicken Sie auf den Tab Knoten.

  4. Klicken Sie unter Knotenpools auf den Namen des Knotenpools, den Sie ändern möchten, und klicken Sie dann auf Bearbeiten.

  5. Klicken Sie unter Größe das Kästchen Autoscaling aktivieren an.

  6. Ändern Sie die Werte in den Feldern Mindestanzahl von Knoten und Maximale Anzahl von Knoten nach Bedarf.

  7. Klicken Sie auf Speichern.

Autoscaling für vorhandene Knotenpools deaktivieren

gcloud

Führen Sie den folgenden Befehl aus, um die automatische Skalierung für einen bestimmten Knotenpool zu deaktivieren:

gcloud container clusters update cluster-name --no-enable-autoscaling \
    --node-pool pool-name [--zone compute-zone --project project-id]

In diesem Befehl weist --no-enable-autoscaling den Cluster an, die automatische Skalierung zu deaktivieren.

Die Clustergröße wird auf die Größe des aktuellen standardmäßigen Clusterknotenpools festgelegt und kann manuell angepasst werden.

Console

So deaktivieren Sie das Autoscaling für einen bestimmten Knotenpool:

  1. Rufen Sie in der Cloud Console das Kubernetes Engine-Menü auf.

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.

  3. Klicken Sie auf den Tab Knoten.

  4. Klicken Sie unter Knotenpools auf den Namen des Knotenpools, den Sie ändern möchten, und klicken Sie dann auf Bearbeiten.

  5. Entfernen Sie unter Größe das Häkchen aus dem Kästchen Autoscaling aktivieren.

  6. Klicken Sie auf Speichern.

Fehlerbehebung

Im Folgenden finden Sie Informationen zur Fehlerbehebung für Cluster Autoscaler:

Nächste Schritte