Knotenpools hinzufügen und verwalten


Auf dieser Seite wird erläutert, wie Sie auf Knotenpools, auf denen Ihre GKE-Cluster (Google Kubernetes Engine) ausgeführt werden, Vorgänge hinzufügen und ausführen. Informationen zur Funktionsweise von Knotenpools finden Sie hier.

Vorbereitung

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

Mit den folgenden Methoden können Sie die gcloud-Einstellungen festlegen:

  • Verwenden Sie gcloud init, wenn Sie die Standardeinstellungen ansehen möchten.
  • Verwenden Sie gcloud config, um Ihre Projekt-ID, Zone und Region individuell festzulegen.

gcloud init verwenden

Wenn Sie die Fehlermeldung One of [--zone, --region] must be supplied: Please specify location erhalten, führen Sie diesen Abschnitt aus.

  1. Führen Sie gcloud init aus und folgen Sie der Anleitung:

    gcloud init

    Wenn Sie SSH auf einem Remote-Server verwenden, können Sie mit dem Flag --console-only verhindern, dass mit dem Befehl ein Browserfenster geöffnet wird:

    gcloud init --console-only
  2. Folgen Sie der Anleitung, um gcloud zur Verwendung Ihres Google Cloud-Kontos zu autorisieren.
  3. Erstellen Sie eine neue Konfiguration oder wählen Sie eine vorhandene aus.
  4. Wählen Sie ein Google Cloud-Projekt aus.
  5. Wählen Sie eine Compute Engine-Standardzone für zonale Cluster oder eine Region für regionale oder Autopilot-Cluster aus.

gcloud config verwenden

  • Legen Sie Ihre standardmäßige Projekt-ID fest:
    gcloud config set project PROJECT_ID
  • Wenn Sie mit zonalen Clustern arbeiten, legen Sie die Standardzone für Compute Engine fest:
    gcloud config set compute/zone COMPUTE_ZONE
  • Wenn Sie mit Autopilot oder regionalen Clustern arbeiten, legen Sie die Compute-Standardregion fest:
    gcloud config set compute/region COMPUTE_REGION
  • Aktualisieren Sie gcloud auf die neueste Version:
    gcloud components update

Knotenpool hinzufügen

gcloud

Führen Sie zum Erstellen eines Knotenpools den Befehl gcloud container node-pools create aus:

gcloud container node-pools create POOL_NAME --cluster CLUSTER_NAME

Eine vollständige Liste der Optionen finden Sie in der Dokumentation zu gcloud container node-pools create.

Bei einer erfolgreichen node-pools create-Anfrage werden die Informationen zum Knotenpool zurückgegeben:

Creating node pool example-pool...done.
Created [https://container.googleapis.com/v1/projects/kubernetes-engine-docs/zones/us-central1-f/clusters/example-cluster/nodePools/example-pool].
NAME          MACHINE_TYPE   DISK_SIZE_GB  NODE_VERSION
example-pool  e2-medium      100           1.2.4

Der Knotenpool wird erstellt. Gelegentlich wird der Knotenpool zwar erfolgreich erstellt, doch der Befehl gcloud überschreitet das Zeitlimit, anstatt den Status vom Server zu melden. Mit dem folgenden Befehl können Sie den Status aller Knotenpools prüfen, einschließlich der Pools, die noch nicht vollständig bereitgestellt wurden:

gcloud container node-pools list --cluster CLUSTER_NAME

Console

Zum Hinzufügen eines Knotenpools zu einem vorhandenen Cluster führen Sie die folgenden Schritte aus:

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

    Zum Google Kubernetes Engine-Menü

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

  3. Klicken Sie auf Knotenpool hinzufügen .

  4. Konfigurieren Sie den Knotenpool wie gewünscht.

  5. Klicken Sie auf Erstellen, um den Knotenpool hinzuzufügen.

Knotenpools in einem Cluster ansehen

gcloud

Führen Sie zum Auflisten aller Knotenpools eines Clusters den Befehl gcloud container node-pools list aus:

gcloud container node-pools list --cluster CLUSTER_NAME

Führen Sie zum Aufrufen der Details eines bestimmten Knotenpools den Befehl gcloud container node-pools describe aus:

gcloud container node-pools describe POOL_NAME \
    --cluster CLUSTER_NAME

Dabei gilt:

  • CLUSTER_NAME ist der Name des Clusters.
  • POOL_NAME ist der Name des Knotenpools, den Sie sich ansehen möchten.

Console

Führen Sie die folgenden Schritte aus, um Knotenpools für einen Cluster anzeigen zu lassen:

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

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie in der Clusterliste auf den Namen des Clusters.

  3. Klicken Sie auf den Tab Knoten.

  4. Klicken Sie unter Knotenpools auf den Namen des Knotenpools, den Sie aufrufen möchten.

Größe eines Knotenpools ändern

gcloud

Mit dem Befehl gcloud container clusters resize können Sie die Größe der Knotenpools eines Clusters anpassen:

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

Führen Sie die folgenden Schritte aus, um die Größe des Knotenpools Ihres Clusters zu ändern:

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

    Zum Google Kubernetes Engine-Menü

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

  3. Klicken Sie auf den Tab Knoten.

  4. Klicken Sie im Bereich Knotenpools auf den Namen des Knotenpools, dessen Größe Sie anpassen 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.

Knotenpool aktualisieren

gcloud

Führen Sie zum Aktualisieren aller Knoten auf die Version der Steuerungsebene den Befehl gcloud container clusters upgrade aus:

gcloud container clusters upgrade CLUSTER_NAME

Wenn Sie einen bestimmten Knotenpool aktualisieren möchten, geben Sie das Flag --node-pool an:

gcloud container clusters upgrade CLUSTER_NAME --node-pool POOL_NAME

Console

Zum Aktualisieren eines Knotenpools führen Sie die folgenden Schritte aus:

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

    Zum Google Kubernetes Engine-Menü

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

  3. Klicken Sie auf den Tab Knoten.

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

  5. Klicken Sie auf  Bearbeiten.

  6. Klicken Sie unter Knotenversion auf Ändern.

  7. Wählen Sie die gewünschte Knotenversion aus.

  8. Klicken Sie auf Ändern.

Pod in einem bestimmten Knotenpool bereitstellen

Sie können einen Pod mithilfe eines nodeSelector in Ihrem Pod-Manifest explizit für einen bestimmten Knotenpool bereitstellen. nodeSelector plant Pods auf Knoten mit einem passenden Label.

Alle GKE-Knotenpools haben Labels im folgenden Format: cloud.google.com/gke-nodepool: POOL_NAME. Fügen Sie dieses Label dem Feld nodeSelector in Ihrem Pod hinzu, wie im folgenden Beispiel gezeigt:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    env: test
spec:
  containers:
  - name: nginx
    image: nginx
    imagePullPolicy: IfNotPresent
  nodeSelector:
    cloud.google.com/gke-nodepool: POOL_NAME

Weitere Informationen finden Sie unter Pods zu Knoten zuweisen.

Alternativ zur Knotenauswahl können Sie auch die Knotenaffinität verwenden. Verwenden Sie die Knotenaffinität, wenn Sie eine „weiche“ Regel wünschen, bei der der Pod versucht, die Einschränkung zu erfüllen, aber selbst dann geplant wird, wenn gegen die Einschränkung verstoßen wird. Weitere Informationen finden Sie unter Knotenaffinität. Sie können auch Ressourcenanfragen für die Container angeben.

Knotenpool löschen

Durch das Löschen eines Knotenpools werden dessen Knoten und Routen gelöscht. Alle auf diesen Knoten ausgeführten Pods werden entfernt und neu geplant. Wenn die Pods spezifische Knotenselektoren haben, bleiben die Pods womöglich in einem nicht-planbaren Zustand, wenn kein anderer Knoten im Cluster die Kriterien erfüllt.

gcloud

Führen Sie zum Löschen eines Knotenpools den Befehl gcloud container node-pools delete aus:

gcloud container node-pools delete POOL_NAME --cluster CLUSTER_NAME

Console

Zum Löschen eines Knotenpools mit der Cloud Console führen Sie die folgenden Schritte aus:

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

    Zum Google Kubernetes Engine-Menü

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

  3. Klicken Sie auf den Tab Knoten.

  4. Klicken Sie im Abschnitt Knotenpools neben dem zu löschenden Knotenpool auf .

  5. Wenn Sie zur Bestätigung aufgefordert werden, klicken Sie auf Löschen.

Nächste Schritte