Cluster konfigurieren, der von der GKE On-Prem API verwaltet werden soll

Die GKE On-Prem API ist eine von Google Cloud gehostete API, mit der Sie den Lebenszyklus Ihrer lokalen Cluster mithilfe von Standardtools verwalten können: die Google Cloud Console, die Google Cloud CLI oder Terraform. Wenn Sie einen Cluster mit einem dieser Tools erstellen, speichert die API Metadaten zum Status Ihres Clusters in der Google Cloud Region, die Sie beim Erstellen des Clusters angegeben haben. Mit diesen Metadaten können Sie den Lebenszyklus des Clusters mithilfe der Standardtools verwalten. Wenn Sie mit diesen Tools Clusterdetails aufrufen oder den Lebenszyklus von Clustern verwalten möchten, die mit gkectl erstellt wurden, müssen Sie die Cluster in der GKE On-Prem API registrieren.

Terminologie

Wenn Sie einen Cluster anmelden, können Sie den Clusterlebenszyklus über die Console, die gcloud CLI oder Terraform verwalten.

Die Anmeldung eines Clusters ist ein separater Vorgang, der sich von der Registrierung eines Clusters bei einer Flotte unterscheidet. Eine Flotte ist eine logische Gruppierung von Kubernetes-Clustern, die Sie zusammen verwalten können. Alle Google Distributed Cloud-Cluster werden beim Erstellen des Clusters bei einer Flotte registriert. Wenn Sie einen Cluster mit gkectl erstellen, wird er bei dem Google Cloud Projekt registriert, das Sie im gkeConnect.projectID Feld in der Clusterkonfigurationsdatei angeben. Dieses Projekt wird auch als das Flotten-Hostprojektbezeichnet. Weitere Informationen zu Flotten, darunter Anwendungsfälle, Best Practices und Beispiele, finden Sie in der Dokumentation zur Flottenverwaltung.

Registrierte Cluster ansehen

Alle Ihre Flottencluster werden auf den GKE-Cluster-Seiten in der Console angezeigt. So erhalten Sie einen Überblick über Ihre gesamte Flotte und können für Google Distributed Cloud sehen, welche Cluster von der GKE On-Prem API verwaltet werden.

So rufen Sie Ihre Flottencluster auf:

  1. Rufen Sie in der Console die Seite der GKE-Cluster auf.
    Zu GKE-Clustern
  2. Wählen Sie das Google Cloud Projekt aus.
    • Wenn in der Spalte Typ VMware angezeigt wird, wird der Cluster von der GKE On-Prem API verwaltet.
    • Wenn in der Spalte Typ Extern angezeigt wird, wird der Cluster nicht von der GKE On-Prem API verwaltet.

Voraussetzungen

  • Nutzercluster müssen mindestens Version 1.11 haben.
  • Administratorcluster müssen mindestens Version 1.13 haben.

  • Wenn Sie kein Projektinhaber sind, müssen Sie mindestens Identity and Access Management-Rolle roles/gkeonprem.admin für das Projekt haben. Weitere Informationen zu den in dieser Rolle enthaltenen Berechtigungen finden Sie in der IAM-Dokumentation unter GKE On-Prem-Rollen.

Vorbereitung

  1. Richten Sie bei Bedarf die gcloud CLI ein.

    1. Wenn Sie die gcloud CLI installieren müssen, lesen Sie die Dokumentation zur gcloud CLI.

    2. Aktualisieren Sie bei Bedarf die gcloud CLI-Komponenten:

      gcloud components update
      
  2. Führen Sie die folgenden Schritte aus, um die GKE On-Prem API zu aktivieren und zu verwenden:

    1. Aktivieren Sie die API in Ihrem Projekt:

      gcloud services enable \
          --project PROJECT_ID \
          gkeonprem.googleapis.com
      

      Ersetzen Sie PROJECT_ID durch die Projekt-ID des Flotten-Hostprojekts. Dies ist die Projekt-ID, die im gkeconnect Abschnitt der Konfigurationsdatei für den Administratorcluster oder der Konfigurationsdatei für den Nutzercluster konfiguriert wurde.

      Wenn Sie den PERMISSION_DENIED-Fehler erhalten, prüfen Sie die eingegebene Projekt-ID. Wenn die Projekt-ID korrekt ist, führen Sie gcloud auth login aus, um sich mit dem Konto, das Zugriff auf das Projekt hat, in der Google Cloud CLI anzumelden.

    2. Wenn Sie die GKE On-Prem API zum ersten Mal in Ihrem Projekt aktivieren, müssen Sie die API initialisieren. Dazu können Sie einen gcloud CLI-Befehl aufrufen, mit dem die verfügbaren Versionen angezeigt werden, mit denen Sie einen Cluster erstellen können:

      gcloud container vmware clusters query-version-config \
          --project=PROJECT_ID \
          --location=REGION
      

      Ersetzen Sie REGION durch us-west1 oder eine andere unterstützte Region.

  3. Wenn Ihre Organisation eine Zulassungsliste eingerichtet hat, mit der Traffic von Google APIs und anderen Adressen über Ihren Proxyserver geleitet werden kann, fügen Sie der Zulassungs-Liste Folgendes hinzu:

    • gkeonprem.googleapis.com
    • gkeonprem.mtls.googleapis.com

    Dies sind die Dienstnamen für die GKE On-Prem API.

Nutzercluster registrieren

gcloud CLI

  1. Listen Sie die Flottenmitgliedschaften registrierter Cluster auf:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Ersetzen Sie PROJECT_ID durch die Projekt-ID des Flotten-Hostprojekts.

    Notieren Sie sich die Region, in der der Administratorcluster, der den Nutzercluster verwaltet, Mitglied ist. Sie benötigen diese Informationen im nächsten Schritt.

  2. Registrieren Sie den Cluster in der GKE On-Prem API:

    gcloud container vmware clusters enroll USER_CLUSTER_NAME \
        --project=<var>PROJECT_ID</var> \
        --admin-cluster-membership=projects/PROJECT_ID/locations/MEMBERSHIP_REGION/memberships/ADMIN_CLUSTER_NAME \
        --location=REGION
    

    Ersetzen Sie Folgendes:

    • USER_CLUSTER_NAME: Name des Nutzerclusters, den Sie registrieren möchten.

    • PROJECT_ID: Projekt-ID des Flotten-Hostprojekts.

    • MEMBERSHIP_REGION: Region, in der der Administratorcluster, der den Nutzercluster verwaltet, Mitglied ist. Dies kann global oder eine Google Cloud Region sein.

    • ADMIN_CLUSTER_NAME: Name des Administratorclusters, der den Nutzercluster verwaltet.

      Die Werte für ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION und PROJECT_ID bilden den vollständig angegebenen Clusternamen für das Flag --admin-cluster-membership.

    • REGION: die Google Cloud Region, in der die GKE On-Prem API ausgeführt wird und Clustermetadaten speichert. Geben Sie us-west1 oder eine andere unterstützte Region an. Die Region kann nach der Anmeldung des Clusters nicht mehr geändert werden.

gkectl

Führen Sie die folgenden Schritte auf Ihrer Administratorworkstation aus.

  1. Fügen Sie der Konfigurationsdatei für den Nutzercluster folgenden Abschnitt hinzu:

    gkeOnPremAPI:
      enabled:true
      location:REGION
    

    Ersetzen Sie REGION durch die Google Cloud Region, in der die GKE On-Prem API ausgeführt wird und Clustermetadaten speichert. Geben Sie us-west1 oder eine andere unterstützte Region an. Die Region kann nach der Anmeldung des Clusters nicht mehr geändert werden.

  2. Aktualisieren Sie den Cluster:

    gkectl update cluster --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config USER_CLUSTER_CONFIG_FILE
    

    Ersetzen Sie Folgendes:

    • ADMIN_CLUSTER_KUBECONFIG: Pfad der kubeconfig-Datei des Administratorclusters.

    • USER_CLUSTER_CONFIG_FILE: Pfad Ihrer Nutzercluster-Konfigurationsdatei.

Administratorcluster registrieren

gcloud CLI

  1. Listen Sie die Flottenmitgliedschaften registrierter Cluster auf:

    gcloud container fleet memberships list \
        --project=PROJECT_ID
    

    Ersetzen Sie PROJECT_ID durch die Projekt-ID des Flotten-Hostprojekts.

    Notieren Sie sich die Region, in der der Administratorcluster Mitglied ist. Sie benötigen diese Informationen im nächsten Schritt.

  2. Registrieren Sie den Administratorcluster in der GKE On-Prem API:

    gcloud container vmware admin-clusters enroll ADMIN_CLUSTER_NAME \
        --project=PROJECT_ID \
        --admin-cluster-membership=projects/PROJECT_ID/locations/MEMBERSHIP_REGION/memberships/ADMIN_CLUSTER_NAME \
        --location=REGION
    

Ersetzen Sie Folgendes:

  • ADMIN_CLUSTER_NAME: Name des Administratorclusters, den Sie registrieren möchten.

  • PROJECT_ID: Projekt-ID des Flotten-Hostprojekts.

  • MEMBERSHIP_REGION: Region, in der der Administratorcluster Mitglied ist. Dies kann global oder eine Google Cloud Region sein.

    Die Werte für ADMIN_CLUSTER_NAME, MEMBERSHIP_REGION und PROJECT_ID bilden den vollständig angegebenen Clusternamen für das Flag --admin-cluster-membership.

  • REGION: die Google Cloud Region, in der die GKE On-Prem API ausgeführt wird und Clustermetadaten speichert. Geben Sie us-west1 oder eine andere unterstützte Region an. Wir empfehlen, dass Sie dieselbe Region verwenden, die in stackdriver.clusterLocation in der Konfigurationsdatei für den Administratorcluster konfiguriert ist. Die Region kann nach der Anmeldung des Clusters nicht mehr geändert werden.

gkectl

Führen Sie die folgenden Schritte auf Ihrer Administratorworkstation aus.

  1. Fügen Sie der Konfigurationsdatei für den Administratorcluster folgenden Abschnitt hinzu:

    gkeOnPremAPI:
      enabled:true
      location:REGION
    

    Ersetzen Sie REGION durch die Google Cloud Region, in der die GKE On-Prem API ausgeführt wird und Clustermetadaten speichert. Geben Sie us-west1 oder eine andere unterstützte Region an. Wir empfehlen, dass Sie dieselbe Region verwenden, die in stackdriver.clusterLocation konfiguriert ist. Die Region kann nach der Anmeldung des Clusters nicht mehr geändert werden.

  2. Aktualisieren Sie den Cluster:

    gkectl update admin --kubeconfig ADMIN_CLUSTER_KUBECONFIG --config ADMIN_CLUSTER_CONFIG_FILE
    

    Ersetzen Sie Folgendes:

    • ADMIN_CLUSTER_KUBECONFIG: Pfad der kubeconfig-Datei des Administratorclusters.

    • ADMIN_CLUSTER_CONFIG_FILE: Pfad Ihrer Konfigurationsdatei für den Administratorcluster.

Informationen zu Ihrem Cluster abrufen

Nachdem der Cluster registriert wurde, können Sie mit den folgenden Befehlen Informationen zu Ihren Clustern abrufen:

Nutzercluster

  • So rufen Sie eine Beschreibung eines Nutzerclusters auf:
gcloud container vmware clusters describe USER_CLUSTER_NAME \
  --project=PROJECT_ID \
  --location=REGION
  • So rufen Sie eine Liste Ihrer Nutzercluster auf:
gcloud container vmware clusters list \
  --project=PROJECT_ID \
  --location=-

Wenn Sie --location=- festlegen, bedeutet dies, dass alle Cluster in allen Regionen aufgelistet werden. Wenn Sie den Bereich in der Liste verkleinern möchten, legen Sie --location auf die Region fest, die Sie bei der Clusterregistrierung angegeben haben.

Administratorcluster

  • So rufen Sie eine Beschreibung eines Administratorclusters auf:
gcloud container vmware admin-clusters describe ADMIN_CLUSTER_NAME \
  --project=PROJECT_ID \
  --location=REGION
  • So rufen Sie eine Liste Ihrer Administratorcluster auf:
gcloud container vmware admin-clusters list \
  --project=PROJECT_ID \
  --location=-

Wenn Sie --location=- festlegen, bedeutet dies, dass alle Cluster in allen Regionen aufgelistet werden. Wenn Sie den Bereich in der Liste verkleinern möchten, legen Sie --location auf die Region fest, die Sie bei der Clusterregistrierung angegeben haben.

Mit dem Cluster verbinden

Nachdem der Cluster bei der GKE On-Prem API registriert wurde, müssen Sie eine Authentifizierungsmethode auswählen und konfigurieren, damit Sie den Cluster über die Google Cloud Console verwalten können. Die von Ihnen ausgewählte Authentifizierungsmethode steuert auch den Zugriff auf den Cluster über die Befehlszeile. Hier finden Sie weitere Informationen: