Auf dieser Seite wird erläutert, wie Sie einen GKE-Standardcluster oder einen Knotenpool mit Arm-Knoten erstellen, damit Sie Arm-Arbeitslasten in Google Kubernetes Engine (GKE) ausführen können. Informationen zum Bereitstellen von ARM-Arbeitslasten auf Autopilot-Clustern finden Sie unter Autopilot-Arbeitslasten in der ARM-Architektur bereitstellen.
Sie können Cluster mit Arm-Knoten mit der C4A-Maschinenserie oder der Tau T2A-Maschinenserie erstellen. Weitere Informationen zu den Vorteilen von Arm und zur Auswahl der besten Maschinenreihe für Ihre Arbeitslasten finden Sie unter Arm-VMs in Compute.
Mit GKE können Sie einen Cluster erstellen, der Knotenpools mit einem Architekturtyp (z. B. Arm) oder mehreren Architekturtypen (z. B. Arm und x86) enthält. Wenn Sie Knoten mit mehreren Architekturtypen ausführen, können Sie Arbeitslasten architekturübergreifend im selben Cluster bereitstellen.
Diese Seite richtet sich an Betreiber und Entwickler, die Cloud-Ressourcen bereitstellen und konfigurieren und Arbeitslasten bereitstellen. Weitere Informationen zu gängigen Rollen finden Sie unter Häufig verwendete GKE-Nutzerrollen und ‑Aufgaben.
Machen Sie sich vor dem Lesen dieser Seite mit Arm-Arbeitslasten in GKE vertraut.
Hinweise
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, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit dem Befehl
gcloud components update
ab. In früheren gcloud CLI-Versionen werden die Befehle in diesem Dokument möglicherweise nicht unterstützt.
- Sehen Sie sich die Anforderungen und Einschränkungen für C4A- und T2A-Knoten an.
- Prüfen Sie, ob Sie die erforderlichen Berechtigungen zum Erstellen von Clustern haben. Sie sollten mindestens ein Kubernetes Engine-Cluster-Administrator sein.
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 Knoten-Dienstkonten müssen in Ihrem Projekt mindestens die Rolle Kubernetes Engine Default Node Service Account (roles/container.defaultNodeServiceAccount
) haben. Standardmäßig verwendet GKE das Compute Engine-Standarddienstkonto, das automatisch in Ihrem Projekt erstellt wird, als Knotendienstkonto.
So weisen Sie dem Compute Engine-Standarddienstkonto die Rolle roles/container.defaultNodeServiceAccount
zu:
Console
- Rufen Sie die Seite Willkommen auf:
- Klicken Sie im Feld Projektnummer auf In die Zwischenablage kopieren.
- Rufen Sie die IAM-Seite auf.
- Klicken Sie auf Zugriffsrechte erteilen.
- Geben Sie im Feld Neue Hauptkonten den folgenden Wert an:
Ersetzen SiePROJECT_NUMBER-compute@developer.gserviceaccount.com
PROJECT_NUMBER
durch die kopierte Projektnummer. - Wählen Sie im Menü Rolle auswählen die Rolle Kubernetes Engine Default Node Service Account aus.
- Klicken Sie auf Speichern.
gcloud
- So finden 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
- Weisen Sie dem Compute Engine-Standarddienstkonto die Rolle
roles/container.defaultNodeServiceAccount
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.
Cluster mit Arm-Knotenpool erstellen
In der folgenden Anleitung wird erläutert, wie Sie einen neuen Cluster mit einem Knotenpool erstellen, der ARM-Knoten aus der C4A-Maschinenserie oder der Tau T2A-Maschinenserie ausführt.
Sie können den Cluster mit der gcloud CLI, der Google Cloud -Konsole oder Terraform erstellen.
gcloud
Erstellen Sie mit ARM-Knoten einen neuen zonalen Cluster mit dem Standardknotenpool:
gcloud container clusters create CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations NODE_LOCATIONS \
--machine-type ARM_MACHINE_TYPE \
--num-nodes NUM_NODES
Dabei gilt:
CLUSTER_NAME
: Name des neuen Clusters mit einem Armor-KnotenpoolCONTROL_PLANE_LOCATION
: Der Compute Engine-Standort der Steuerungsebene des Clusters. Geben Sie für regionale Cluster eine Region und für zonale Cluster eine Zone an. Die ausgewählte Region oder Zone muss einer der verfügbaren Standorte für die ausgewählte Arm-Maschinenreihe sein.NODE_LOCATIONS
sind die Zonen für Ihren Knotenpool, z. B.us-central1-a
Sie müssen eine der verfügbaren Zonen auswählen, damit die Arm-Maschinenreihe oder die Knotenpoolerstellung fehlschlagen kann.ARM_MACHINE_TYPE
: Eine der verfügbaren C4A-Maschinenformen oder T2A-Maschinenformen, z. B.c4a-standard-8
odert2a-standard-16
.NUM_NODES
ist die Anzahl der Knoten für Ihren Arm-Knotenpool.
Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben, das Ihre Knoten anstelle des Compute Engine-Standarddienstkontos verwenden können. Eine Anleitung zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.
Wenn Sie ein benutzerdefiniertes Dienstkonto in der gcloud CLI 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.
Wenn Sie zusätzliche Einstellungen für Ihren Cluster festlegen möchten, finden Sie in der Referenz zu gcloud container clusters create
eine vollständige Liste der verfügbaren Einstellungen beim Erstellen von Clustern.
Console
Rufen Sie in der Google Cloud Console die Seite Kubernetes-Cluster erstellen auf.
Konfigurieren Sie den Cluster. Weitere Informationen finden Sie in der Anleitung Zonalen Cluster erstellen oder Regionalen Cluster erstellen.
Wählen Sie einen Standort aus, an dem ARM-Knoten verfügbar sind.
- Wählen Sie im Abschnitt Clustergrundlagen unter Standorttyp die Option "Zonal" oder "Regional" aus:
- Wählen Sie im Drop-down-Menü eine Zone oder Region aus, in der Arm-Knoten verfügbar sind.
- Klicken Sie auf das Kästchen Standardknotenstandorte angeben. Wählen Sie die Zonen aus, in denen Arm-Knoten verfügbar sind.
So wählen Sie einen Arm-Maschinentyp aus: Knoten Unterabschnitt unter Knoteneinstellungen konfigurieren > Maschinenkonfiguration > Maschinenfamilie, Select FÜR ALLGEMEINE ZWECKE abgeschlossen. Wählen Sie im Drop-down-Menü Reihe die Option „C4A“ oder „T2A“ aus. Wählen Sie im Drop-down-Menü Maschinentyp eine der verfügbaren Optionen aus.
- Optional: Geben Sie ein benutzerdefiniertes IAM-Dienstkonto für Ihre Knoten an:
- Maximieren Sie auf der Seite Erweiterte Einstellungen den Abschnitt Sicherheit.
- Wählen Sie im Menü Dienstkonto das gewünschte Dienstkonto aus.
Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben, das Ihre Knoten anstelle des Compute Engine-Standarddienstkontos verwenden können. Eine Anleitung zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.
Klicken Sie auf Erstellen.
Terraform
Informationen zum Erstellen eines zonalen Clusters mit dem Standard-Knotenpool mit Arm-Knoten mit Terraform finden Sie im folgenden Beispiel:
Weitere Informationen zur Verwendung von Terraform finden Sie unter Terraform-Unterstützung für GKE.
Einem GKE-Cluster einen Knotenpool hinzufügen
Sie können einem GKE Standard-Cluster mithilfe der gcloud CLI, der Google Cloud Console oder Terraform einen neuen Knotenpool hinzufügen.
Als Best Practice zum Erstellen eines GKE-Cluster mit einem beliebigen Knotentyp empfehlen wir, dass Sie ein IAM-Dienstkonto (Identity and Access Management) mit minimalen Berechtigungen erstellen und verwenden, das von Ihren Knotenpools anstelle des Compute Engine-Standarddienstkontos verwendet wird.
Eine Anleitung zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Sicherheit von Clustern erhöhen.
gcloud
Fügen Sie einem vorhandenen Cluster einen Arm-Knotenpool hinzu:
gcloud container node-pools create NODE_POOL_NAME \
--cluster CLUSTER_NAME \
--location CONTROL_PLANE_LOCATION \
--node-locations NODE_LOCATIONS \
--machine-type ARM_MACHINE_TYPE \
--num-nodes NUM_NODES \
--service-account SERVICE_ACCOUNT
Dabei gilt:
NODE_POOL_NAME
ist der Name des neuen Arm-Knotenpools für Ihren vorhandenen Cluster.CONTROL_PLANE_LOCATION
: Der Compute Engine-Standort der Steuerungsebene des Clusters. Geben Sie für regionale Cluster eine Region und für zonale Cluster eine Zone an.CLUSTER_NAME
ist der Name des Clusters, dem Sie einen Arm-Knotenpool hinzufügen möchten.NODE_LOCATIONS
sind die Zonen für Ihren Knotenpool, z. B.us-central1-a
Sie müssen eine der verfügbaren Zonen auswählen, damit die Arm-Maschinenreihe oder die Knotenpoolerstellung fehlschlagen kann.ARM_MACHINE_TYPE
: Eine der verfügbaren C4A-Maschinenformen oder T2A-Maschinenformen, z. B.c4a-standard-8
odert2a-standard-16
.NUM_NODES
ist die Anzahl der Knoten für Ihren Arm-Knotenpool.
Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben, das Ihre Knoten anstelle des Compute Engine-Standarddienstkontos verwenden können. Eine Anleitung zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.
Wenn Sie ein benutzerdefiniertes Dienstkonto in der gcloud CLI 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.
Wenn Sie zusätzliche Einstellungen für Ihren Knotenpool festlegen möchten, finden Sie in der Referenz zu gcloud container node-pools create
eine vollständige Liste der verfügbaren Einstellungen für die Erstellung von Knotenpools.
Console
Führen Sie die folgenden Schritte aus, um einem vorhandenen Cluster einen Arm-Knotenpool hinzuzufügen:
Öffnen Sie in der Google Cloud Console die Seite Google Kubernetes Engine.
Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie auf Knotenpool hinzufügen add_box.
Konfigurieren Sie den Knotenpool.
Wählen Sie Knotenstandorte aus, an denen ARM-Knoten verfügbar sind.
- Klicken Sie im Abschnitt Knotenpooldetails das Kästchen Knotenstandorte angeben an.
- Wählen Sie die Zonen aus, in denen Arm-Knoten verfügbar sind.
So wählen Sie einen Arm-Maschinentyp aus: Knoten Unterabschnitt unter Knoteneinstellungen konfigurieren > Maschinenkonfiguration > Maschinenfamilie, Select FÜR ALLGEMEINE ZWECKE abgeschlossen. Wählen Sie im Drop-down-Menü Reihe die Option „C4A“ oder „T2A“ aus. Wählen Sie im Drop-down-Menü Maschinentyp eine der verfügbaren Optionen aus.
Klicken Sie im Navigationsmenü auf Sicherheit.
- Optional: Geben Sie ein benutzerdefiniertes IAM-Dienstkonto für Ihre Knoten an:
- Maximieren Sie auf der Seite Erweiterte Einstellungen den Abschnitt Sicherheit.
- Wählen Sie im Menü Dienstkonto das gewünschte Dienstkonto aus.
Wir empfehlen dringend, ein IAM-Dienstkonto mit minimalen Berechtigungen anzugeben, das Ihre Knoten anstelle des Compute Engine-Standarddienstkontos verwenden können. Eine Anleitung zum Erstellen eines Dienstkontos mit minimalen Berechtigungen finden Sie unter Dienstkonto mit minimalen Berechtigungen verwenden.
Klicken Sie auf Erstellen, um den Knotenpool hinzuzufügen.
Terraform
Informationen zum Hinzufügen eines Knotenpools, der Arm-Knoten verwendet, zu einem vorhandenen Cluster mit Terraform finden Sie im folgenden Beispiel:
Ersetzen Sie google_container_cluster.default.id
durch den Namen Ihres Clusters.
Weitere Informationen zur Verwendung von Terraform finden Sie unter Terraform-Unterstützung für GKE.
Nächste Schritte
- Images mit mehreren Architekturen für ARM-Arbeitslasten erstellen
- Arm-Arbeitslast für die Bereitstellung vorbereiten
- Anwendung „x86“ in GKE für mehrere Architekturen mit Arm migrieren