Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Mit dem GKE-Add-on installieren


Auf dieser Seite wird beschrieben, wie Sie Config Connector mit dem Config-Add-on in einem Google Kubernetes Engine-Cluster (GKE) installieren.

Wenn Sie GKE in Google Cloud verwenden, empfehlen wir, Config Connector mit diesem Add-on zu installieren. Informationen zu weiteren Installationsoptionen finden Sie unter Installationstyp wählen.

Hinweis

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 standardmäßige Compute Engine-Zone für zonale Cluster oder eine Region für regionale Cluster 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
  • Wählen Sie ein Google Cloud-Projekt aus oder erstellen Sie eines, um den Config Connector zu installieren.

Config Connector-Add-ons installieren

Sie wenden das Config Connector-Add-on durch Erstellen eines neuen GKE Clusters oder durch Aktivieren eines vorhandenen Clusters an. Nach der Installation des Config Connector-Add-ons konfigurieren Sie die Config Connector-Installation mit Ihren Google-Dienstkonten und Ihren Namespaces.

Voraussetzungen

Das Config Connector-Add-on hat folgende Anforderungen:

  • Sie benötigen eine der folgenden GKE-Versionen:

    • 1.15.11-gke.5 und höher
    • 1.16.8-gke.8 und höher
    • 1.17.4-gke.5 und höher
  • Sie müssen einen Workload Identity-Pool und das Kubernetes Engine Monitoring für die Clustern aktivieren, in denen Sie Config Connector aktivieren.

Einen GKE-Cluster einrichten

Sie können das Config Connector-Add-on für neue oder vorhandene Cluster verwenden.

Neuen Cluster mit aktiviertem Config Connector-Add-on erstellen

Sie können GKE-Cluster mit dem gcloud-Tool oder der Google Cloud Console erstellen.

gcloud

Führen Sie folgenden Befehl aus, um einen Cluster mit dem gcloud-Befehlszeilentool zu erstellen:

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --addons ConfigConnector \
    --workload-pool=PROJECT_ID.svc.id.goog \
    --enable-stackdriver-kubernetes

Dabei gilt:

  • CLUSTER_NAME ist der Name des GKE-Clusters.
  • CHANNEL ist ein GKE-Releasekanal, rapid und regular werden unterstützt.
  • PROJECT_ID durch Ihre Google Cloud-Projekt-ID.

Cloud Console

So erstellen Sie einen Cluster mit der Google Cloud Console:

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

    Zum Google Kubernetes Engine-Menü

  2. Klicken Sie auf Erstellen. Die Seite Kubernetes-Cluster erstellen wird angezeigt.

  3. Geben Sie einen Namen für Ihren Cluster ein.

  4. Wählen Sie eine unterstützte Masterversion aus.

  5. Konfigurieren Sie Ihre weiteren Cluster nach Bedarf.

  6. Klicken Sie im Navigationsbereich unter Cluster auf Sicherheit.

  7. Klicken Sie das Kästchen Workload Identity aktivieren an.

  8. Klicken Sie im Navigationsbereich links unter Cluster auf Features.

  9. Klicken Sie auf das Kästchen Config Connector aktivieren.

  10. Klicken Sie auf Erstellen.

Nachdem Sie den Cluster erstellt haben, fahren Sie mit Identität erstellen fort.

Config Connector-Add-on für einen vorhandenen Cluster aktivieren

Sie können das Config Connector-Add-on in einem vorhandenen GKE-Cluster mit gcloud oder mit der Google Cloud Console aktivieren.

Vorbereitung

Das Aktivieren des Config Connector-Add-ons in einem vorhandenen Cluster hat folgende Voraussetzungen:

  • Sie benötigen einen Cluster, der die Anforderungen für das Config Connector-Add-ons erfüllt.
  • Richten Sie Workload Identity auf dem Cluster ein, in dem Sie Config Connector installieren möchten.

Zum Aktivieren von GKE-Metadaten in Ihrem Knotenpool verwenden Sie das gcloud-Befehlszeilentool:

gcloud container node-pools update NODE_POOL --workload-metadata=GKE_METADATA \
--cluster CLUSTER_NAME

Dabei gilt:

  • NODE_POOL durch den Namen Ihres Knotenpools ersetzen
  • Ersetzen Sie CLUSTER_NAME durch den Namen Ihres Clusters.
Config Connector-Add-on aktivieren

Sie können das Config Connector-Add-on in einem vorhandenen GKE-Cluster mit dem gcloud-Befehlszeilentool oder der Google Cloud Console aktivieren.

gcloud

So aktivieren Sie das Config Connector-Add-on in einem vorhandenen GKE-Cluster mit dem gcloud-Befehlszeilentool:

gcloud container clusters update CLUSTER_NAME \
--update-addons ConfigConnector=ENABLED

Ersetzen Sie dabei CLUSTER_NAME durch den Namen Ihres GKE-Clusters.

Cloud Console

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

    Zum Google Kubernetes Engine-Menü

  2. Wählen Sie den Cluster aus, auf dem Sie Config Connector installieren möchten. Die Seite Clusterdetails wird angezeigt.

  3. Suchen Sie im Abschnitt Features nach der Zeile mit dem Config Connector und klicken Sie auf Bearbeiten.

  4. Klicken Sie auf das Kästchen Config Connector aktivieren und dann auf Änderungen speichern, um den Cluster zu aktualisieren.

Identität erstellen

Config Connector erstellt und verwaltet Google Cloud-Ressourcen. Dabei erfolgt die Authentifizierung über ein IAM-Dienstkonto (Identity and Access Management). Die Verknüpfung der IAM-Dienstkonten mit Kubernetes-Dienstkonten erfolgt per Workload Identity.

Führen Sie zum Erstellen der Identität folgende Schritte aus:

  1. IAM-Dienstkonto erstellen. Wenn Sie ein vorhandenes Dienstkonto verwenden möchten, können Sie dieses Konto verwenden und diesen Schritt überspringen.

    Mit dem folgenden Befehl erstellen Sie das Dienstkonto:
      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
    Ersetzen Sie SERVICE_ACCOUNT_NAME mit einem Namen für das Dienstkonto.
  2. Weitere Informationen zum Erstellen von Dienstkonten finden Sie unter Dienstkonten erstellen und verwalten.

  3. Gewähren Sie dem IAM-Dienstkonto erweiterte Berechtigungen für Ihr Projekt:
    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" \
        --role="roles/owner"
    Ersetzen Sie Folgendes:
    • PROJECT_ID durch Ihre Projekt-ID,
    • SERVICE_ACCOUNT_NAME durch den Namen Ihres Dienstkontos.
  4. Erstellen Sie eine IAM-Richtlinienbindung zwischen dem IAM-Dienstkonto und dem vordefinierten Kubernetes-Dienstkonto, das von Config Connector ausgeführt wird:
    gcloud iam service-accounts add-iam-policy-binding \
    SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com \
        --member="serviceAccount:PROJECT_ID.svc.id.goog[cnrm-system/cnrm-controller-manager]" \
        --role="roles/iam.workloadIdentityUser"
    Ersetzen Sie Folgendes:
    • SERVICE_ACCOUNT_NAME durch den Namen Ihres Dienstkontos.
    • PROJECT_ID durch Ihre Projekt-ID,

Config Connector konfigurieren

Um die Installation abzuschließen, erstellen Sie eine Konfigurationsdatei für die CustomResource-ConfigConnector und wenden diese dann mit dem Befehl kubectl apply an. Der Config Connector-Operator installiert CRDs und Config Connector-Komponenten von Google Cloud in Ihrem Cluster.

Führen Sie folgende Schritte aus, um den Operator zu konfigurieren:

  1. Kopieren Sie folgende YAML-Datei in eine Datei mit dem Namen configconnector.yaml:
    # configconnector.yaml
    apiVersion: core.cnrm.cloud.google.com/v1beta1
    kind: ConfigConnector
    metadata:
      # the name is restricted to ensure that there is only one
      # ConfigConnector resource installed in your cluster
      name: configconnector.core.cnrm.cloud.google.com
    spec:
     mode: cluster
     googleServiceAccount: "SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com"
    
    Ersetzen Sie Folgendes:
    • SERVICE_ACCOUNT_NAME durch den Namen Ihres Dienstkontos.
    • PROJECT_ID durch Ihre Projekt-ID,
  2. Wenden Sie die Konfiguration mit kubectl apply auf Ihren Cluster an:
      kubectl apply -f configconnector.yaml

Speicherort für Ressourcen angeben

Config Connector kann Ressourcen nach Projekt, Ordner oder Organisation organisieren. Dies entspricht dem Organisieren von Ressourcen mit Google Cloud.

Bevor Sie mit Config Connector Ressourcen erstellen, müssen Sie festlegen, wo die Ressourcen angelegt werden sollen. Um zu ermitteln, wo eine Ressource erstellt werden soll, nutzt Config Connector eine Annotation in der Ressourcenkonfiguration oder in einem vorhandenen Namespace. Weitere Informationen finden Sie unter Ressourcen organisieren.

Wenn Sie zu diesem Zweck keinen Namespace haben, erstellen Sie einen mit kubectl.
kubectl create namespace NAMESPACE

Ersetzen Sie dabei NAMESPACE durch Ihren Namespace-Namen. Beispiel: config-connector.

Wählen Sie den Tab aus, in dem Config Connector Ressourcen anlegen soll.

Projekt

Führen Sie folgenden Befehl aus, um Ressourcen in einem bestimmten Projekt zu erstellen:

    kubectl annotate namespace \
    NAMESPACE cnrm.cloud.google.com/project-id=PROJECT_ID

Ersetzen Sie Folgendes:

  • NAMESPACE durch Ihren Namespace-Namen.
  • PROJECT_ID durch Ihre Google Cloud-Projekt-ID.

Ordner

Führen Sie folgenden Befehl aus, um Ressourcen in einem bestimmten Ordner zu erstellen:

    kubectl annotate namespace \
    NAMESPACE cnrm.cloud.google.com/folder-id=FOLDER_ID

Ersetzen Sie Folgendes:

  • NAMESPACE durch Ihren Namespace-Namen.
  • FOLDER_ID mit Ihrer Google Cloud-Ordner-ID.

Organisation

Führen Sie folgenden Befehl aus, um Ressourcen in einer bestimmten Organisation zu erstellen:

    kubectl annotate namespace \
    NAMESPACE cnrm.cloud.google.com/organization-id=ORGANIZATION_ID

Ersetzen Sie Folgendes:

  • NAMESPACE durch Ihren Namespace-Namen.
  • ORGANIZATION_ID durch Ihre Google Cloud-Organisations-ID.

Wenn Sie Ihren Namespace mit Annotationen versehen, erstellt Config Connector Ressourcen im entsprechenden Projekt, im entsprechenden Ordner oder in der entsprechenden Organisation. Weitere Informationen dazu, wie Config Connector Kubernetes-Namespaces nutzt, finden Sie unter Kubernetes-Namespaces und Google Cloud-Projekte.

Installation prüfen

Config Connector führt alle seine Komponenten in einem Namespace mit dem Namen cnrm-system aus. Mit dem folgenden Befehl können Sie prüfen, ob die Pods bereit sind:

kubectl wait -n cnrm-system \
      --for=condition=Ready pod --all

Wenn Config Connector korrekt installiert ist, sieht die Ausgabe etwa so aus:

pod/cnrm-controller-manager-0 condition met

Config Connector aktualisieren

Das Add-on für Ihren Config Connector wird zusammen mit Ihrem GKE-Cluster auf eine neue Nebenversion aktualisiert. Die Ressourcen in Ihrem Cluster bleiben bei jedem Upgrade erhalten.

Config Connector deinstallieren

So deinstallieren Sie Config Connector:

  1. Entfernen Sie mit kubectl delete die Config Connector-CRDs und die Controllerkomponenten:

    kubectl delete ConfigConnector configconnector.core.cnrm.cloud.google.com --wait=true
    
  2. Deaktivieren Sie das Config Connector-Add-on in Ihrem Cluster mit dem gcloud-Tool oder der Google Cloud Console:

    gcloud

    Zum Deaktivieren des Config Connector-Add-ons mit gcloud führen Sie folgenden Befehl aus:

    gcloud container clusters update CLUSTER_NAME --update-addons ConfigConnector=DISABLED
    

    Ersetzen Sie dabei CLUSTER_NAME durch den Namen des Clusters, in dem das Config Connector-Add-on installiert ist.

    Cloud Console

    Mit den im Folgenden aufgeführten Schritten deaktivieren Sie das Config Connector-Add-on über die Google Cloud Console.

    1. Rufen Sie in der Google Cloud Console die Seite für die Google Kubernetes Engine-Cluster auf und wählen Sie den Cluster aus, den Sie aktualisieren möchten.

      Zum Google Kubernetes Engine-Menü

    2. Klicken Sie auf Bearbeiten. Der Bildschirm Cluster bearbeiten wird angezeigt.

    3. Klicken Sie auf Add-ons.

    4. Wählen Sie Config Connector und dann Deaktiviert aus.

    5. Klicken Sie auf Speichern, um Ihren Cluster zu aktualisieren.

Fehlerbehebung

In folgenden Abschnitten finden Sie Tipps zur Fehlerbehebungen bei der Installation von Config Connector.

Fehlerbehebung bei Config Connector-Add-on-Installationen

Wenn Sie das Config Connector-Add-on nicht aktivieren können, wird folgende Fehlermeldung angezeigt: Node version 1.15.x-gke.x s unsupported. Prüfen Sie, ob die Version des GKE-Clusters die erforderlichen Anforderungen erfüllt, um diesen Fehler zu beheben. Führen Sie folgenden Befehl aus, um alle gültigen Versionen für Ihre Cluster abzurufen:

gcloud container get-server-config --format "yaml(validMasterVersions)" \
    --zone ZONE"

Ersetzen Sie ZONE durch die Compute Engine-Zone.

Wählen Sie eine Version aus der Liste aus, die die Anforderungen erfüllt. Die Fehlermeldung wird auch angezeigt, wenn Workload Identity oder Kubernetes Engine Monitoring deaktiviert sind. Aktivieren Sie die Funktionen, um den Fehler zu beheben.

Fehler bei Berechtigungen für Ressourcenabgleiche beheben

Wenn Google Cloud Ressourcen nicht erfolgreich abgleichen kann, enthalten die Logs folgende Fehlermeldung: The caller does not have permission, forbidden.

Führen Sie folgende Schritte aus, um diesen Fehler zu untersuchen:

  1. Öffnen Sie eine Shell mit dem cloud-sdk-Image:
    kubectl run -it \
        --image google/cloud-sdk:slim \
        --serviceaccount cnrm-controller-manager \
        --namespace cnrm-system \
        workload-identity-test
  2. Listen Sie Ihre Identität auf:
    gcloud auth list
  3. Prüfen Sie, ob die aufgeführte Identität mit dem Google-Dienstkonto übereinstimmt, das an Ihre Ressourcen gebunden ist.
  4. Prüfen Sie, ob das Google-Dienstkonto die erforderlichen Rollen zum Verwalten der Google Cloud-Ressourcen hat.

Nächste Schritte