Zonale Cluster erstellen

Auf dieser Seite wird beschrieben, wie Sie einen zonalen Cluster mit den aktivierten Standardfunktionen in Google Kubernetes Engine (GKE) erstellen. Zonale Cluster haben eine einzige Steuerungsebeneninstanz in einer einzelnen Zone. Je nach Verfügbarkeitsanforderungen können Sie die Knoten für den zonalen Cluster in einer einzigen Zone oder in mehreren Zonen verteilen.

Best Practice: Führen Sie Produktionsarbeitslasten mit regionalen Clustern aus, da sie eine höhere Verfügbarkeit als zonale Cluster bieten. In einem regionalen Cluster wird die Steuerungsebene über mehrere Zonen in einer Region repliziert.

Diese Seite richtet sich an Operatoren, Cloud-Architekten und Entwickler, die Cluster erstellen und konfigurieren und Arbeitslasten in GKE bereitstellen müssen. Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Google Cloud Inhalten verweisen, finden Sie unter Häufig verwendete GKE-Nutzerrollen und -Aufgaben.

Bevor Sie diese Seite lesen, sollten Sie mit den Clusterkonfigurationsoptionen vertraut sein.

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 diesen Task verwenden möchten, installieren und dann initialisieren Sie die gcloud CLI. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit dem gcloud components update Befehl ab. Ältere Versionen der gcloud CLI unterstützen möglicherweise nicht die Ausführung der Befehle in diesem Dokument.

IAM-Dienstkonten für GKE einrichten

GKE verwendet IAM-Dienstkonten, die an Ihre Knoten angehängt sind, um Systemaufgaben wie Logging und Monitoring auszuführen. Diese Knotendienstkonten müssen in Ihrem Projekt mindestens die Kubernetes Engine Default Node Service Account (roles/container.defaultNodeServiceAccount) Rolle haben. Standardmäßig verwendet GKE das Compute Engine-Standarddienstkonto, das automatisch in Ihrem Projekt erstellt wird, als Knotendienstkonto.

Führen Sie die folgenden Schritte aus, um dem Compute Engine-Standarddienstkonto die Rolle roles/container.defaultNodeServiceAccount zuzuweisen:

Console

  1. Rufen Sie die Seite Willkommen auf:

    Willkommen aufrufen

  2. Klicken Sie im Feld Projektnummer auf In die Zwischenablage kopieren.
  3. Rufen Sie die Seite IAM auf:

    IAM aufrufen

  4. Klicken Sie auf Zugriffsrechte erteilen.
  5. Geben Sie im Feld Neue Hauptkonten den folgenden Wert an:
    PROJECT_NUMBER-compute@developer.gserviceaccount.com
    Ersetzen Sie PROJECT_NUMBER durch die kopierte Projektnummer.
  6. Wählen Sie im Menü Rolle auswählen die Kubernetes Engine Default Node Service Account Rolle aus.
  7. Klicken Sie auf Speichern.

gcloud

  1. Suchen Sie Ihre Google Cloud Projektnummer:
    gcloud projects describe PROJECT_ID \
        --format="value(projectNumber)"

    Ersetzen Sie PROJECT_ID durch Ihre Projekt-ID.

    Die Ausgabe sieht etwa so aus:

    12345678901
    
  2. Weisen Sie dem Compute Engine-Standarddienstkonto die roles/container.defaultNodeServiceAccount Rolle zu:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \
        --role="roles/container.defaultNodeServiceAccount"

    Ersetzen Sie PROJECT_NUMBER durch die Projektnummer aus dem vorherigen Schritt.

Zonalen Cluster erstellen

Die Mindestinformationen, die Sie beim Erstellen eines neuen zonalen Clusters angeben müssen, sind ein Name, ein Projekt (in der Regel das aktuelle Projekt) und eine Zone (in der Regel der Standardspeicherort für Befehlszeilentools). Für alle anderen Werte werden die Standardeinstellungen verwendet. Es gibt jedoch weitere mögliche Konfigurationseinstellungen, von denen nur einige in diesem Abschnitt beschrieben werden. Einige können nach der Clustererstellung nicht mehr geändert werden. Sie müssen wissen, welche Einstellungen nach der Clustererstellung nicht mehr geändert werden können, und die richtige Einstellung beim Erstellen eines Clusters auswählen, wenn Sie ihn nicht noch einmal erstellen möchten.

Eine Übersicht über die Clusterkonfigurationsoptionen finden Sie unter Clusterkonfigurationsoptionen. Eine vollständige Liste der möglichen Optionen finden Sie in den Referenzleitfäden gcloud container clusters create und Terraform google_container_cluster.

Sie können einen zonalen Cluster mit der gcloud CLI, der Google Cloud Console oder Terraform erstellen.

Wenn Sie GKE-Anwendungen mit Cloud Code for VS Code entwickeln, können Sie Cluster mit Cloud Code erstellen.

gcloud

Verwenden Sie einen der folgenden Befehle, um einen zonalen Cluster mit der gcloud CLI zu erstellen.

Dabei gilt:

  • CLUSTER_NAME: Der Name des neuen Clusters.
  • CHANNEL: Der Typ der Release-Version, entweder rapid, regular, stable oder None. Standardmäßig wird der Cluster in der Release-Version regular registriert, es sei denn, mindestens eines der folgenden Flags ist angegeben: --cluster-version, --release-channel, --no-enable-autoupgrade und --no-enable-autorepair.
  • CONTROL_PLANE_LOCATION: Die Compute Engine Zone der Steuerungsebene Ihres Clusters.
  • VERSION: die Version die Sie für den Cluster angeben möchten.
  • COMPUTE_ZONE,COMPUTE_ZONE1,[...]: die Zonen, in denen Knoten erstellt werden. Sie können beliebig viele Zonen für Ihren Cluster angeben. Alle Zonen müssen sich in derselben Region befinden wie die Steuerungsebene des Clusters, die durch das Flag --location angegeben wird. Bei zonalen Clustern muss --node-locations die primäre Zone des Clusters enthalten.

Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben , das von Ihren Knoten anstelle des Compute Engine-Standarddienstkontos verwendet werden kann. Informationen zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.

Wenn Sie in der gcloud CLI ein benutzerdefiniertes Dienstkonto angeben möchten, fügen Sie Ihrem Befehl das folgende Flag hinzu:

--service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com

Ersetzen Sie SERVICE_ACCOUNT_NAME durch den Namen Ihres Dienstkontos mit minimalen Berechtigungen.

Verwendung einer bestimmten Release-Version :

Führen Sie den folgenden Befehl aus, um einen neuen Cluster mit einem bestimmten Release-Kanal zu erstellen:

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --location CONTROL_PLANE_LOCATION \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Bestimmte Version verwenden:

Führen Sie den folgenden Befehl aus, um einen neuen Cluster mit einer bestimmten Clusterversion zu erstellen:

gcloud container clusters create CLUSTER_NAME \
    --cluster-version VERSION \
    --location CONTROL_PLANE_LOCATION \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Standardversion für Cluster, die nicht in einer Release-Version registriert sind, verwenden :

Wenn Sie einen neuen Cluster mit der Standardversion für Cluster erstellen möchten, die nicht in einer Release-Version registriert ist, müssen Sie keine Clusterversion angeben. Sie müssen jedoch für die Release-Version None festlegen:

gcloud container clusters create CLUSTER_NAME \
    --release-channel None \
    --location CONTROL_PLANE_LOCATION \
    --node-locations COMPUTE_ZONE,COMPUTE_ZONE1

Beispiel

Mit dem folgenden Befehl wird ein multizonaler Cluster namens example-cluster erstellt, wobei sich die Steuerungsebene des Clusters in der Zone us-central-a befindet und es drei Knotenstandorte gibt. Der Cluster wird für die Release-Version regular registriert.

Wird das Flag --num-nodes weggelassen, werden vom Cluster standardmäßig drei Knoten pro Zone erstellt. Da drei Zonen angegeben wurden, erstellt dieser Befehl einen neun Knoten umfassenden Cluster mit jeweils drei Knoten in us-central1-a, us-central1-b und us-central1-c.

gcloud container clusters create example-cluster \
    --location us-central1-a \
    --node-locations us-central1-a,us-central1-b,us-central1-c

Console

Führen Sie die folgenden Aufgaben aus, um einen zonalen Cluster mit der Google Cloud Console zu erstellen:

  1. Rufen Sie in der Google Cloud Console die Seite Kubernetes-Cluster erstellen auf.

    Kubernetes-Cluster erstellen aufrufen

  2. Geben Sie im Bereich Clustergrundlagen Folgendes ein:

    1. Geben Sie den Namen für den Cluster ein.
    2. Wählen Sie als Standorttyp die Option Zonal und dann die gewünschte Zone für den Cluster aus.
    3. Wenn Sie einen multizonalen Cluster erstellen, klicken Sie das Kästchen Standardknotenstandorte angeben an und wählen Sie weitere Zonen aus, in denen die Knotenpools ausgeführt werden sollen.

    4. Release-Version auswählen Sie können optional Kein Versions-Kanal aus der Drop-down-Liste auswählen. Wir empfehlen Ihnen jedoch, sich den Vergleich zwischen Clustern, die in einer Release-Version registriert sind und solchen, die nicht registriert sind anzusehen, bevor Sie diese Option auswählen GKE aktualisiert Cluster, die sich nicht in einer Release-Version befinden, automatisch mit Versionen aus der Stable Channel.

    5. Optional: Geben Sie in der Drop-down-Liste Version eine Version der Steuerungsebene an.

  3. Optional: Konfigurieren Sie andere Einstellungen für den neuen Cluster.

  4. Optional: Wenn Sie Ihren neuen Cluster bei einer Flotte registrieren möchten, wechseln Sie zum Abschnitt Flottenregistrierung und folgen Sie der Google Cloud Console-Anleitung für Neuen Cluster erstellen und registrieren, um die Clusterregistrierung abzuschließen.

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

  6. Geben Sie im Bereich Knotenpooldetails Folgendes ein:

    1. Geben Sie einen Namen für den standardmäßigen Knotenpool ein.
    2. Optional: Wählen Sie die Knotenversion aus.
    3. Geben Sie die Anzahl der Knoten ein, die im Cluster erstellt werden sollen. Sie müssen verfügbare Ressourcenkontingente für die Knoten und ihre Ressourcen (z. B. Firewallrouten) haben.
    4. Optional: Sie können automatische Knotenupgrades deaktivieren. Wir empfehlen Ihnen jedoch, sich die Überlegungen zur Deaktivierung automatischer Knotenupgrades durchzulesen, bevor Sie diese Option wählen.
  7. Klicken Sie im Navigationsbereich unter Knotenpools auf Knoten.

  8. Wählen Sie in der Drop-down-Liste Image-Typ das gewünschte Knoten-Image aus.

  9. Wählen Sie die Maschinenkonfiguration aus, die standardmäßig für die Instanzen verwendet werden soll. Jeder Maschinentyp wird unterschiedlich abgerechnet. Der Standardmaschinentyp ist e2-medium. Informationen zu Preisen von Maschinentypen finden Sie in der Preisübersicht für Maschinentypen.

  10. Wählen Sie in der Drop-down-Liste Bootlaufwerktyp den gewünschten Laufwerktyp aus.

  11. Geben Sie die Größe des Bootlaufwerks ein.

  12. Optional: Klicken Sie im Navigationsbereich unter Knotenpools auf Sicherheit.

  13. Optional: Geben Sie ein benutzerdefiniertes IAM-Dienstkonto für Ihre Knoten an:
    1. Maximieren Sie auf der Seite Erweiterte Einstellungen den Abschnitt Sicherheit.
    2. Wählen Sie im Menü Dienstkonto das gewünschte Dienstkonto aus.

    Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben , das von Ihren Knoten anstelle des Compute Engine-Standarddienstkontos verwendet werden kann. Informationen zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.

  14. Klicken Sie auf Erstellen.

Terraform

Informationen zum Erstellen eines zonalen Clusters mit einem Einzelzonen-Knotenpool mit Terraform finden Sie im folgenden Beispiel:

resource "google_container_cluster" "default" {
  name               = "gke-standard-zonal-single-zone"
  location           = "us-central1-a"
  initial_node_count = 1
}

Informationen zum Erstellen eines zonalen Clusters mit einem Knotenpool mit mehreren Zonen mit Terraform finden Sie im folgenden Beispiel:

resource "google_container_cluster" "default" {
  name               = "gke-standard-zonal-multi-zone"
  location           = "us-central1-a"
  node_locations     = ["us-central1-b", "us-central1-c"]
  initial_node_count = 2
}

Weitere Informationen zur Verwendung von Terraform finden Sie unter Terraform-Unterstützung für GKE.

Mit kubectl mit einem Cluster interagieren

Nachdem Sie einen Cluster erstellt haben, müssen Sie kubectl konfigurieren, bevor Sie über die Befehlszeile mit dem Cluster interagieren können.

Clustervorlagen

GKE unterstützte zuvor Vorlagen für Cluster. Diese Vorlagen wurden aus der Google Cloud Console entfernt, sind aber weiterhin über die folgenden Links zugänglich:

Nächste Schritte

Jetzt testen

Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit von GKE in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.

GKE kostenlos testen