Cluster registrieren

Auf dieser Seite erhalten Sie einen Überblick über die Registrierung Ihrer Kubernetes-Cluster in einer Google Cloud-Flotte. Weitere Informationen zum logischen Gruppieren von Clustern in Gruppen erhalten Sie unter Einführung in Flotten. Dort erfahren Sie auch, wie Sie die Infrastruktur und Anwendungen leichter verwalten können.

Anthos-Cluster in VMware, Anthos-Cluster in Bare-Metal und Anthos-Cluster in AWS werden automatisch zum Zeitpunkt der Clustererstellung in Ihrer Projektflotte registriert, auch wenn Sie möglicherweise sehr selten eine Clusterregistrierung aktualisieren müssen. GKE-Cluster in Google Cloud und angehängten Clustern müssen manuell registriert werden. Folgen Sie dazu der Anleitung auf dieser Seite.

Hinweis

Prüfen Sie die Voraussetzungen für den ausgewählten Clustertyp. Eine ausführliche Anleitung finden Sie in unserem Leitfaden zu Voraussetzungen.

Alle Registrierungen

  1. Prüfen Sie, ob die folgenden Befehlszeilentools installiert sind:
  2. Aktivieren Sie die erforderlichen APIs in Ihrem Google Cloud-Projekt:
  3. Weisen Sie dem Nutzer, der den Cluster registriert, die erforderlichen Google Cloud IAM-Rollen zu.
  4. Weisen Sie dem Nutzer, der den Cluster registriert, die RBAC-Rolle Clusteradministrator zu.

GKE-Cluster

Für GKE-Clusterregistrierungen kann auch Folgendes erforderlich sein:

Cluster außerhalb von Google Cloud

Alle manuellen Registrierungen außerhalb von Google Cloud, z. B. angehängte Cluster, erfordern auch Folgendes:

  1. Sorgen Sie für die Netzwerkverbindung für den Zugriff auf die Google Cloud API und die Dienstendpunkte.
  2. Richten Sie die Identität ein, die der Connect Agent zur Authentifizierung bei Google Cloud verwenden soll.

Für einige angehängte Clustertypen gelten möglicherweise spezielle Anforderungen.

Informationen zur Workload Identity von Flotten

Mit GKE können Sie Ihre Cluster für die Verwendung von Workload Identity konfigurieren, wenn Sie sich bei Google Cloud APIs und -Diensten authentifizieren. Mit GKE Workload Identity können sich die Arbeitslasten in Ihrem Cluster bei Google authentifizieren, ohne dass Sie Google Cloud-Dienstkontoschlüssel herunterladen, manuell rotieren und verwalten müssen. Stattdessen werden die Arbeitslasten mithilfe der vom Cluster generierten kurzlebigen Tokens authentifiziert. Alle Cluster mit aktivierter GKE Workload Identity verwenden den Workload Identity-Pool ihres Projekts, wenn IDs ausgestellt werden. Dadurch kann Identity and Access Management die Anmeldedaten von Kubernetes-Dienstkonten vertrauen und sie verstehen. Weitere Informationen zu GKE Workload Identity finden Sie unter Workload Identity verwenden.

Bei Flotten können registrierte Cluster den zusätzlichen Vorteil der Verwendung von fltet Workload Identity erhalten. Registrierte Cluster, für die Workload Identity aktiviert ist, können den flächendeckenden Flotten-Workload Identity-Pool verwenden, der die Authentifizierung bei Google APIs und anderen Diensten in Ihrer gesamten Flotte und in mehreren Projekten vereinfacht. Fleet Workload Identity kann auch von dem Connect-Agent auf einigen Clustertypen verwendet werden, um sich im Rahmen der Flotte-Mitgliedschaft bei Google zu authentifizieren. Außerdem ist dies erforderlich, um einige projektübergreifend Anthos-Features wie Anthos Service Mesh zu nutzen. Weitere Informationen zur Verwendung von Workload Identity mit Ihren registrierten Clustern (z. B. zur Authentifizierung bei Google APIs) finden Sie unter Fleet Workload Identity.

Wir empfehlen, den Cluster nach Möglichkeit mit aktivierter Workload Identity-Workload zu registrieren. Derzeit ist Workload Identity für GKE-Cluster, einige angehängte Clustertypen sowie Anthos-Cluster außerhalb von Google Cloud ab Anthos 1.8 verfügbar. Einzelheiten finden Sie in der folgenden Registrierungsanleitung.

Cluster registrieren

Ihre Optionen zur Registrierung von Clustern hängen vom Clustertyp und Ihren spezifischen Projekt- und Anwendungsanforderungen ab.

GKE-Cluster registrieren

Mit allen diesen Optionen können Sie bei Bedarf die Workload Identity für den Gerätepool aktivieren.

  • Die einfachste und schnellste Möglichkeit, einen GKE-Cluster in einem Anthos-fähigen Projekt in Ihrer Projektflotte zu registrieren, besteht darin, ihn auf der Seite "Anthos-Cluster" in der Cloud Console zu registrieren. Mit diesem Ansatz können Sie Ihren Cluster sofort als Teil Ihrer Flotte in der Console aufrufen und Flotten-fähige Funktionen wie Anthos Config Management verwenden

  • Sie können einen GKE-Cluster (mit oder ohne Anthos) mithilfe von Terraform oder Config Connector erstellen und registrieren.

  • Sie können einen GKE-Cluster (mit oder ohne Anthos) mit dem gcloud-Befehlszeilentool registrieren. Wenn Sie sich mit dem gcloud-Befehlszeilentool registrieren, wird der Connect Agent auf Ihrem Cluster installiert. Dadurch können Sie mit der Connect Gateway die Authentifizierung umgebungsübergreifend mit Google IDs standardisieren.

So registrieren Sie einen GKE-Cluster:

Console

So registrieren Sie einen Cluster:

  1. (Optional) Wenn der registrierte Cluster Workload Identity verwenden soll, muss im Cluster GKE Workload Identity aktiviert sein. Bei Clustern mit GKE Workload Identity ist Workload Identity automatisch aktiviert, wenn Sie sie über die Cloud Console registrieren.
  2. Rufen Sie in der Cloud Console die Anthos-Seite Produkte auf. Auf dieser Seite werden alle registrierten Cluster angezeigt.

    Zur Seite „Anthos-Cluster”

  3. Klicken Sie auf Vorhandenen Cluster registrieren.

  4. Klicken Sie neben dem nicht registrierten Cluster auf Registrieren, um ihn Ihrer Flotte hinzuzufügen.

Terraform

Sie können GKE-Cluster über den Anbieter google-beta bei Terraform registrieren. Eine vollständige Referenz für die Ressource gke_hub_membership, die zum Konfigurieren der Registrierung verwendet wird, finden Sie in der Terraform-Registry.

GKE-Cluster registrieren

Verwenden Sie folgende Blöcke in Ihrer Konfiguration, um den Cluster zu registrieren.

  1. Geben Sie den google-beta-Anbieter als erforderlichen Anbieter an, wie im folgenden Snippet dargestellt. Die Version sollte höher als 3.62.0 sein.

    terraform {
      required_providers {
        google-beta = {
          source = "hashicorp/google-beta"
          version = "3.67.0"
        }
      }
    }
    

    Dieser Anbieter ist erforderlich, wenn Sie gke_hub_membership verwenden möchten.

  2. Legen Sie für den Anbieter folgende Standardwerte fest:

    provider "google-beta" {
      credentials = file("SERVICE_ACCOUNT_KEY_PATH")
      project = "PROJECT_ID"
    }
    

    Dabei gilt:

    • SERVICE_ACCOUNT_KEY_PATH ist der lokale Dateipfad zur JSON-Datei des privaten Schlüssels des Dienstkontos, die als Teil der Voraussetzungen heruntergeladen wurde. Dieser Dienstkontoschlüssel wird als Secret mit dem Namen creds-gcp im Namespace gke-connect gespeichert. Mit diesem Dienstkontoschlüssel kann Terraform auf Ihr Google Cloud-Konto zugreifen.
    • PROJECT_ID ist das Standardprojekt, das Sie für die Bereitstellung Ihrer Terraform-Ressourcen auswählen.
  3. GKE-Cluster erstellen (optional)

    Wenn Sie einen vorhandenen GKE-Cluster registrieren möchten, überspringen Sie diesen Schritt.

    resource "google_container_cluster" "TF_CLUSTER_RESOURCE_NAME" {
      provider = google-beta
      name               = "CLUSTER_NAME"
      location           = "ZONE"
      initial_node_count = 1
    }
    

    Dabei gilt:

    • TF_CLUSTER_RESOURCE_NAME ist der Name, den Sie auswählen, um die von diesem Block erstellte Terraform-Ressource google_container_cluster klar zu identifizieren.
    • CLUSTER_NAME ist der Name, den Sie auswählen, um den von Ihnen erstellten Cluster klar darzustellen.
    • ZONE ist die Standardzone, die Sie zum Bereitstellen der GKE-Clusterressource auswählen. Beispiel: us-central1-a.
  4. Registrieren Sie eine Mitgliedschaft für den GKE-Cluster.

    resource "google_gke_hub_membership" "TF_MEMBERSHIP_RESOURCE_NAME" {
      provider = google-beta
      project_id = "HUB_PROJECT_ID"
      membership_id = "MEMBERSHIP_NAME"
      endpoint {
        gke_cluster {
         resource_link = "//container.googleapis.com/CLUSTER_RESOURCE_NAME"
        }
      }
    }
    

    Dabei gilt:

    • TF_MEMBERSHIP_RESOURCE_NAME ist der Name, den Sie auswählen, um die von diesem Block erstellte Terraform-Ressource google_gke_hub_membership klar zu identifizieren.
    • MEMBERSHIP_NAME ist der Name der Mitgliedschaft, den Sie für den Cluster festlegen, der für eine Flotte registriert wird.
    • CLUSTER_RESOURCE_NAME ist der Name der Google Cloud-Ressource für den GKE-Cluster. Beispiel: projects/my-project/zones/us-west1-a/clusters/my-cluster. Wenn der Cluster mit Terraform bereitgestellt wird, ist dies ${google_container_cluster.TF_CLUSTER_RESOURCE_NAME.id}.
    • HUB_PROJECT_ID: Wenn dies nicht festgelegt ist, wird die Mitgliedschaft des Clusters im Standardprojekt erstellt, das Sie zuvor angegeben haben (PROJECT_ID). Legen Sie dieses Feld fest, wenn Sie den GKE-Cluster in einem anderen Projekt registrieren möchten.

Workload Identity für einen registrierten GKE-Cluster aktivieren

Das Aktivieren von Workload Identity verwendet dieselbe Konfiguration wie die Registrierung eines Clusters, mit folgenden zusätzlichen Schritten.

  1. Aktivieren Sie GKE Workload Identity. Dazu fügen Sie im entsprechenden Ressourcenblock google_container_cluster Folgendes hinzu: Dies gilt sowohl für neue als auch für bestehende Cluster.

    workload_identity_config {
      identity_namespace = "PROJECT_ID.svc.id.goog"
    }
    

    Dabei gilt:

    • PROJECT_ID ist das Standardprojekt, das Sie für die Bereitstellung Ihrer Terraform-Ressourcen auswählen.
  2. Aktivieren Sie Fleet Workload Identity. Dazu fügen Sie im entsprechenden Ressourcenblock google_gke_hub_membership Folgendes hinzu:

    authority {
      issuer = "https://container.googleapis.com/v1/CLUSTER_RESOURCE_NAME"
    }
    

    Dabei gilt:

    • CLUSTER_RESOURCE_NAME: Die Google Cloud-Ressource für den GKE-Cluster. Beispiel: projects/my-project/zones/us-west1-a/clusters/my-cluster Wenn der Cluster mit Terraform bereitgestellt wird, ist dies ${google_container_cluster.TF_CLUSTER_RESOURCE_NAME.id}.

Config Connector

Wenn Sie das Config Connector-Add-on installiert haben, können Sie zum Registrieren von GKE-Clustern Config Connector verwenden. Prüfen Sie, ob Sie eine Version von Config Connector 1.47.0 haben: Eine vollständige Referenz für die Ressource GKEHubMembership finden Sie in der Config Connector-Referenz.

GKE-Cluster registrieren

Um den Cluster zu registrieren, geben Sie zuerst an, wo Sie Ihre Ressourcen erstellen möchten. Folgen Sie dazu der Anleitung im Config Connector-Leitfaden. Erstellen Sie dann eine YAML-Datei, um einen Cluster zu registrieren und optional einen zu erstellen:

GKE-Cluster erstellen und registrieren

  1. Erstellen Sie einen GKE-Cluster.

    apiVersion: container.cnrm.cloud.google.com/v1beta1
    kind: ContainerCluster
    metadata:
      name: CLUSTER_NAME
    spec:
      location: ZONE
      initialNodeCount: 1
    

    Dabei gilt:

    • CLUSTER_NAME: Der Name, den Sie ausgewählt haben, um den mit Config Connector erstellten Cluster eindeutig darzustellen.
    • ZONE: Die Zone, die Sie für die Bereitstellung der GKE-Clusterressource ausgewählt haben. Beispiel: us-central1-a.
  2. Registrieren Sie eine Mitgliedschaft für den GKE-Cluster.

    apiVersion: gkehub.cnrm.cloud.google.com/v1beta1
    kind: GKEHubMembership
    metadata:
      name: MEMBERSHIP_NAME
    spec:
      location: global
      endpoint:
        gkeCluster:
          resourceRef:
            name: CLUSTER_NAME
    

    Dabei gilt:

    • MEMBERSHIP_NAME: Der Name der Mitgliedschaft, den Sie für den Cluster ausgewählt haben, der für die Flotte registriert wird.
    • CLUSTER_NAME: Der Name, den Sie ausgewählt haben, um den mit Config Connector erstellten Cluster eindeutig darzustellen.

Cluster in einem anderen Projekt registrieren

Fügen Sie dem Feld metadata der Ressource GKEHubMembership Folgendes hinzu:

   metadata:
     annotations:
       cnrm.cloud.google.com/project-id: HUB_PROJECT_ID

Dabei gilt:

  • HUB_PROJECT_ID: Das andere Projekt, das Sie zum Registrieren des GKE-Clusters ausgewählt haben.

Vorhandenen Cluster registrieren

Verwenden Sie die folgende Konfiguration, wenn Sie einen vorhandenen Cluster registrieren möchten, unabhängig davon, wie er erstellt wurde. In diesem Fall müssen Sie den vollständigen Ressourcennamen des Clusters angeben, damit Config Connector ihn finden kann. Ersetzen Sie das Feld resourceRef der Ressource GKEHubMembership durch:

   resourceRef:
     external: //container.googleapis.com/CLUSTER_RESOURCE_NAME

Dabei gilt:

  • CLUSTER_RESOURCE_NAME ist der Name der Google Cloud-Ressource für den GKE-Cluster. Beispiel: projects/my-project/zones/us-west1-a/clusters/my-cluster

Workload Identity für einen registrierten GKE-Cluster aktivieren

Das Aktivieren von Workload Identity verwendet dieselbe Konfiguration wie die Registrierung eines Clusters, mit folgenden zusätzlichen Schritten.

  1. Aktivieren Sie GKE Workload Identity. Fügen Sie dazu im Feld spec der Ressource ContainerCluster Folgendes hinzu: Dies gilt sowohl für neue als auch für bestehende Cluster.

    spec:
      workloadIdentityConfig:
        identityNamespace: PROJECT_ID.svc.id.goog
    

    Dabei gilt:

  2. Aktivieren Sie Fleet Workload Identity. Fügen Sie dazu im Feld spec des Ressourcenblocks GKEHubMembership Folgendes hinzu:

    spec:
      authority:
        issuer: https://container.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/clusters/CLUSTER_NAME
    }
    

    Dabei gilt:

    • PROJECT_ID: Das Standardprojekt, das Sie über die Namespace-Annotation ausgewählt haben, um Ihre GKE-Clusterressource zu erstellen.
    • ZONE: Die Zone, die Sie für die Bereitstellung der GKE-Clusterressource ausgewählt haben. Beispiel: us-central1-a.
    • CLUSTER_NAME Der Name, den Sie ausgewählt haben, um den von Ihnen erstellten Cluster eindeutig darzustellen.

gcloud

Für die Registrierung eines Clusters mit dem gcloud-Befehlszeilentool ist dieCloud SDK Version 281.0.0 oder höher erforderlich.

Wenn Sie den Cluster über die Befehlszeile registrieren, wird der Connect-Agent auf dem Cluster installiert. Dieser kann entweder Workload Identity oder ein Google Cloud-Dienstkonto zur Authentifizierung verwenden.

GKE-Cluster mit Workload Identity für Geräte registrieren (empfohlen)

  1. Achten Sie darauf, dass GKE Workload Identity aktiviert ist. Folgen Sie dazu der Anleitung unter Voraussetzungen.

  2. Führen Sie einen der folgenden Befehle aus, um den Cluster zu registrieren:

    gcloud container hub memberships register MEMBERSHIP_NAME \
     --gke-uri=GKE_URI \
     --enable-workload-identity
    

    oder

    gcloud container hub memberships register MEMBERSHIP_NAME \
     --gke-cluster=GKE_CLUSTER \
     --enable-workload-identity
    

    Dabei gilt:

    • MEMBERSHIP_NAME ist der Name der Mitgliedschaft, den Sie für den Cluster festlegen, der für eine Flotte registriert wird.
    • GKE_URI ist der URI des GKE-Clusters, z. B. https://container.googleapis.com/v1/projects/my-gke-project/locations/us-central1-a/clusters/my-gke-cluster. Sie können den URI durch Ausführen von gcloud container clusters list --uri abrufen.
    • GKE_CLUSTER: location/name des GKE-Clusters aus dem aktuellen Projekt. Der Speicherort kann eine Zone oder Region sein, z. B. us-central1-a/my-gke-cluster.

GKE-Cluster mit einem Dienstkonto registrieren

  1. Sie müssen ein Dienstkonto erstellt haben, das vom Connect Agent verwendet werden soll. Weitere Informationen finden Sie in den Voraussetzungen.

  2. Führen Sie einen der folgenden Befehle aus:

    gcloud container hub memberships register MEMBERSHIP_NAME \
     --gke-uri=GKE_URI \
     --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH
    

    oder

    gcloud container hub memberships register MEMBERSHIP_NAME \
     --gke-cluster=GKE_CLUSTER \
     --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH
    

    Dabei gilt:

    • MEMBERSHIP_NAME ist der Name der Mitgliedschaft, den Sie für den Cluster festlegen, der für eine Flotte registriert wird.
    • SERVICE_ACCOUNT_KEY_PATH ist der lokale Dateipfad zur JSON-Datei des privaten Schlüssels des Dienstkontos, die als Teil der Voraussetzungen heruntergeladen wurde. Dieser Dienstkontoschlüssel wird als Secret mit dem Namen creds-gcp im Namespace gke-connect gespeichert.
    • GKE_URI ist der URI des GKE-Clusters, z. B. https://container.googleapis.com/v1/projects/my-gke-project/locations/us-central1-a/clusters/my-gke-cluster. Sie können den URI durch Ausführen von gcloud container clusters list --uri abrufen.
    • GKE_CLUSTER: location/name des GKE-Clusters aus dem aktuellen Projekt. Der Speicherort kann eine Zone oder Region sein, z. B. us-central1-a/my-gke-cluster.

Cluster außerhalb von Google Cloud registrieren

Wenn Sie Cluster außerhalb von Google Cloud registrieren, wird der Connect Agent im Cluster installiert, um die Verbindung des Clusters zu seiner Flotte zu verwalten. Der Agent benötigt eine Identität, um sich bei Google zu authentifizieren. Das kann ein Google Cloud-Dienstkonto oder (empfohlen) Flottenidentität von Flottenidentitäten sein (empfohlen). Weitere Informationen zum Connect-Agent finden Sie in der Connect-Übersicht.

  • Angehängte Cluster müssen gemäß den Anleitungen in diesem Abschnitt manuell registriert werden. Sie können mit aktiviertem Workload Identity-Abo registriert werden, wenn sie die entsprechenden Anforderungen erfüllen. Registrieren Sie andernfalls angehängte Cluster bei einem Google Cloud-Dienstkonto, um sich zu authentifizieren.

  • Anthos-Cluster in Azure müssen derzeit manuell registriert werden. Folgen Sie dazu der Anleitung unter Cluster bei Connect registrieren. Mit dieser Anleitung wird Workload Identity der Flotte standardmäßig aktiviert.

  • Anthos-Cluster auf VMware, Anthos-Cluster auf Bare Metal und Anthos-Cluster auf AWS werden beim Erstellen des Clusters automatisch in Ihrer Projektflotte registriert. In sehr seltenen Fällen kann es erforderlich sein, die Registrierung eines Clusters zu aktualisieren, z. B. wenn Sie die Registrierung versehentlich aufgehoben haben. Ab Anthos 1.8 aktivieren alle diese Clustertypen Workload Identity der Flotte automatisch, wenn sie registriert sind. Vorhandene registrierte Cluster werden bei der Aktualisierung auf Anthos 1.8 so aktualisiert, dass Workload Identity der Flotte verwendet wird. Beachten Sie, dass Sie für diese Clustertypen weiterhin ein Dienstkonto für die Registrierung einrichten müssen. Nach der ersten Registrierung verwendet der Connect Agent Workload Identity für die Authentifizierung bei Google.

So registrieren oder aktualisieren Sie eine Registrierung beim Connect-Agent:

gcloud

Für die Registrierung eines Clusters mit dem gcloud-Befehlszeilentool ist dieCloud SDK Version 281.0.0 oder höher erforderlich.

Diese Anleitung gilt für angehängte Cluster. Sie können jedoch auch verwendet werden, um die Registrierung für Anthos-Cluster in AWS, Anthos-Cluster in VMware Version 1.7 und früheren Versionen, Anthos-Cluster auf Bare-Metal und anderen Anthos-Clustern zu aktualisieren.

Führen Sie dazu diesen Befehl aus:

 gcloud container hub memberships register MEMBERSHIP_NAME \
   --context=KUBECONFIG_CONTEXT \
   --kubeconfig=KUBECONFIG_PATH \
   --service-account-key-file=SERVICE_ACCOUNT_KEY_PATH

Dabei gilt:

  • MEMBERSHIP_NAME ist der Name der Mitgliedschaft, den Sie auswählen und der eindeutig dem Cluster entspricht, der für die Flotte registriert wird.
  • SERVICE_ACCOUNT_KEY_PATH ist der lokale Dateipfad zur JSON-Datei des privaten Schlüssels des Dienstkontos, die als Teil der Voraussetzungen heruntergeladen wurde. Dieser Dienstkontoschlüssel wird als Secret mit dem Namen creds-gcp im Namespace gke-connect gespeichert.
  • KUBECONFIG_CONTEXT: der Clusterkontext des zu registrierenden Clusters, wie er in der Datei "kubeconfig" angezeigt wird. Sie erhalten diesen Wert über die Befehlszeile, indem Sie kubectl config current-context ausführen.
  • KUBECONFIG_PATH ist der lokale Dateipfad, in dem das kubeconfig mit einem Eintrag für den registrierten Cluster gespeichert ist. Dies ist der Standardwert $KUBECONFIG, wenn diese Umgebungsvariable gesetzt ist; andernfalls ist dies der Standardwert für $HOME/.kube/config.

Zugewiesenen Cluster mit Workload Identity der Flotte registrieren

Führen Sie einen der folgenden Befehle aus, um einen angehängten Cluster mit aktivierter Workload Identity der Flotte zu registrieren. Weitere Informationen dazu, welche angehängten Clustertypen dieses Feature verwenden können, sowie zusätzliche Anforderungen finden Sie unter Voraussetzungen für angehängte Cluster.

kind, OpenShift-Cluster:

 gcloud container hub memberships register MEMBERSHIP_NAME \
   --context=KUBECONFIG_CONTEXT \
   --kubeconfig=KUBECONFIG_PATH \
   --enable-workload-identity \
   --has-private-issuer

EKS-Cluster:

  1. Rufen Sie die OIDC-Anbieter-URL für Ihren Cluster ab und prüfen Sie, ob sie öffentlich sichtbar ist. Wenn kein Anbieter vorhanden ist, folgen Sie der Anleitung unter IAM-OIDC-Anbieter für Ihren Cluster erstellen und führen Sie den Befehl noch einmal aus.

    aws eks describe-cluster --name MEMBERSHIP_NAME --query "cluster.identity.oidc.issuer" --output text
    
  2. Führen Sie den folgenden Befehl aus. Ersetzen Sie dabei OIDC_URL durch die vom vorherigen Befehl zurückgegebene URL:

     gcloud container hub memberships register MEMBERSHIP_NAME \
      --context=KUBECONFIG_CONTEXT \
      --kubeconfig=KUBECONFIG_PATH \
      --enable-workload-identity \
      --public-issuer-url=OIDC_URL
    

gkectl

Anthos-Cluster bei der VMware-Registrierung aktualisieren

In Anthos 1.8 können Sie Anthos-Cluster nur bei der Registrierung von VMware aktualisieren, indem Sie Ihre Clusterkonfigurationsdatei mit gkectl aktualisieren. Wenn Sie einen Cluster nach dem Erstellen noch einmal registrieren möchten, prüfen Sie, ob der Abschnitt gkeConnect der Clusterkonfigurationsdatei einen richtigen Wert enthält, und führen Sie gkectl update cluster aus.

Console

Registrierungsbefehl generieren

Mit der Cloud Console können Sie einen gcloud-Registrierungsbefehl zum manuellen Registrieren von Clustern generieren. Diese Anleitung gilt für angehängte Cluster sowie für das Aktualisieren der Registrierung für Anthos-Cluster auf AWS, für Anthos-Cluster auf VMware Version 1.7 und früheren Versionen sowie für alle anderen Anthos-Cluster.

So registrieren Sie einen Cluster:

  1. Rufen Sie in der Google Cloud Console die Seite Anthos-Cluster auf. Auf dieser Seite werden alle registrierten Cluster angezeigt.

    Zur Seite „Anthos-Cluster”

  2. Klicken Sie auf Vorhandenen Cluster registrieren.

  3. Klicken Sie auf Externen Cluster hinzufügen.

  4. Geben Sie im Feld Clustername den Namen des Clusters ein, den Sie registrieren möchten.

  5. Optional: Google Cloud-Labels zum Cluster hinzufügen.

  6. Klicken Sie auf Anmeldebefehl generieren.

  7. Bearbeiten Sie den Befehl gcloud, der auf der Seite angezeigt wird, in Cloud Shell oder wo Sie die Anmeldedaten für Ihr Dienstkonto gespeichert haben. Sie müssen die folgenden Werte angeben:

    • CLUSTER_CONTEXT ist der Kontext des Clusters, wie er in der Datei "kubeconfig" angezeigt wird. Sie erhalten diesen Wert über die Befehlszeile, indem Sie kubectl config current-context ausführen.
    • KUBECONFIG_PATH der lokale Dateipfad ist, in dem Ihre "kubeconfig"-Datei gespeichert ist. Dies ist der Standardwert $KUBECONFIG, wenn diese Umgebungsvariable gesetzt ist; andernfalls ist dies der Standardwert für $HOME/.kube/config.
    • LOCAL_KEY_PATH ist der Pfad zu Ihrer Dienstkonto-Schlüsseldatei.

    Mit diesem Befehl wird der Connect Agent in Ihrem Nutzercluster bereitgestellt. Wenn der Connect Agent eine Verbindung zu Google Cloud herstellt und Ihr Cluster registriert ist, wird eine Bestätigungsmeldung auf der Seite angezeigt.

  8. Klicken Sie auf Labels festlegen oder auf Überspringen, wenn Sie keine Labels festgelegt haben.

Erweiterte Registrierungsoptionen (nur Befehlszeile)

Connect Agent-Manifest herunterladen

Wenn Sie das Connect Agent-Installationsmanifest herunterladen möchten, ohne den Agent bereitzustellen, übergeben Sie zum Beispiel das Flag --manifest-output-file an den Befehl gcloud container hub memberships register, um das Manifest vor der Installation zu prüfen oder zu bearbeiten. Beispiel:

--manifest-output-file=[MANIFEST_FILE_PATH]

Dabei ist [MANIFEST_FILE_PATH] der lokale Dateipfad, in dem das Connect Agent-Installationsmanifest gespeichert werden soll.

Wenn Sie diese Option verwenden, wird der Connect Agent nicht im Cluster bereitgestellt. Wenden Sie das heruntergeladene Manifest manuell auf Ihren Cluster an, um den Connect-Agent bereitzustellen.

Proxyserver verwenden

Um einen Proxyserver zu konfigurieren, übergeben Sie das Flag --proxy an den Befehl gcloud container hub memberships register. Beispiele:

--proxy=[URL]

Dabei ist [URL] die Proxyadresse.

Der Connect-Agent unterstützt nur CONNECT-basierte HTTP- und HTTPS-Proxys und akzeptiert IP-Adressen und Hostnamen. Achten Sie darauf, das Protokoll anzugeben, das dem Proxytyp in der URL entspricht. So übergeben Sie beispielsweise einen HTTPS-Hostnamen:

--proxy=https://mycorpproxy.com:443

Wenn Sie nichts anderes angeben, verwendet der Connect Agent Port 3128 für den Proxy.

Wenn Ihr Proxy eine Autorisierung erfordert, achten Sie darauf, Ihre Anmeldedaten zu übergeben. Beispiel:

--proxy=http://user:password@10.10.10.10:8888

Connect Agent in einem Cluster mit Windows- und Linux-Knoten installieren

Der Connect Agent muss auf einem Linux-Knoten ausgeführt werden. Bei der Installation in einem gemischten Cluster mit Linux- und Windows-Knoten können Sie sicherstellen, dass der Connect Agent auf einem Linux-Knoten bereitgestellt wird, indem Sie der Deployment-Definition einen entsprechenden Knotenselektor hinzufügen.

Führen Sie den folgenden Befehl aus, um das Deployment mit dem entsprechenden Knotenselektor zu aktualisieren:

kubectl patch deployment \
$(kubectl get deployment -o=jsonpath='{.items[*].metadata.name}' -n gke-connect) \
-p '{"spec":{"template":{"spec":{"nodeSelector":{"kubernetes.io/os":"linux"}}}}}' -n gke-connect

Mit dem folgenden Befehl können Sie prüfen, ob die Aktualisierung erfolgreich war:

kubectl get deployment -o=jsonpath='{.items[].spec.template.spec.nodeSelector}' -n gke-connect

Der Befehl sollte Folgendes zurückgeben:

{"kubernetes.io/os":"linux"}

Nächste Schritte