Installation mit dem GKE-Add-on


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

Weitere Informationen zu den einzelnen Installationsoptionen mit ihren Vor- und Nachteilen finden Sie unter Installationstyp auswählen.

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 diese Aufgabe verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialize. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit gcloud components update ab.

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 einen GKE-Cluster mit der gcloud CLI oder der Google Cloud Console erstellen.

gcloud

Führen Sie den folgenden Befehl aus, um einen Cluster mit der Google Cloud CLI zu erstellen:

gcloud container clusters create CLUSTER_NAME \
    --release-channel CHANNEL \
    --addons ConfigConnector \
    --workload-pool=PROJECT_ID.svc.id.goog \
    --logging=SYSTEM \
    --monitoring=SYSTEM

Ersetzen Sie Folgendes:

  • 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.

Google Cloud Console

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

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

    Google Kubernetes Engine-Menü aufrufen

  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, müssen Sie eine Identität erstellen.

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

Sie können das Config Connector-Add-on auf einem vorhandenen GKE-Cluster mit gcloud oder 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 in dem Cluster ein, in dem Sie Config Connector installieren möchten.

Verwenden Sie das gcloud-Befehlszeilentool, um Workload Identity für einen Knotenpool zu aktivieren:

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

Ersetzen Sie Folgendes:

  • 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 der Google Cloud CLI oder der Google Cloud Console aktivieren.

gcloud

Verwenden Sie die Google Cloud CLI, um das Config Connector-Add-on in einem vorhandenen GKE-Cluster zu aktivieren:

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

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

Google Cloud Console

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

    Google Kubernetes Engine-Menü aufrufen

  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 das tun und diesen Schritt überspringen.

    Erstellen Sie mit folgendem Befehl das Dienstkonto:
      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME
    Ersetzen Sie SERVICE_ACCOUNT_NAME durch einen Namen für Ihr Dienstkonto.
  2. Weitere Informationen zum Erstellen von Dienstkonten finden Sie unter Dienstkonten erstellen und verwalten.

  3. Gewähren Sie dem IAM-Dienstkonto erhöhte 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/editor"
    Ersetzen Sie dabei 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 Config Connector ausführt:
    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 dabei 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 Google Cloud-Ressourcen-CRDs und Config Connector-Komponenten in Ihrem Cluster.

Führen Sie die folgenden Schritte aus, um den Operator für den Clustermodus zu konfigurieren:

  1. Kopieren Sie die 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 dabei 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 keinen für diesen Zweck geeigneten 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 durch Ihre 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 richtig installiert ist, sieht die Ausgabe in etwa so aus:

pod/cnrm-controller-manager-0 condition met

Config Connector aktualisieren

Upgrades auf das Config Connector-Add-on Ihres Clusters werden von Google Cloud verwaltet.

Die Ressourcen in Ihrem Cluster werden bei einem Upgrade beibehalten.

Lesen Sie, wie Google Cloud Config Connector-Add-on-Upgrades verwaltet, oder fahren Sie mit dem Aktualisieren der neuesten Config Connector-Version fort.

So verwaltet Google Cloud Config Connector-Add-on-Upgrades

Die Config Connector-Version, die ein GKE-Cluster erhält, hängt vollständig von der GKE-Nebenversion des Clusters ab. Beispiel:

GKE-Nebenversion Config Connector-Version
1.20 1.69.0
1.21 1.69.0
1.22 1.71.0
1.23 1.82.0
1.24 1.89.0

Wenn sich Versionen qualifizieren, ordnet Google Cloud die neuesten GKE-Nebenversionen einer neu veröffentlichten Config Connector-Version zu. Dies geschieht für alle GKE-Nebenversionen, die so neu sind, dass sie nicht auf der Release-Version „Regular“ oder „Stabil“ verfügbar sind.

Da die Config Connector-Version, die ein Cluster erhält, von der GKE-Nebenversion des Clusters abhängt, gibt es zwei Fälle, in denen das Config Connector-Add-on eines Clusters automatisch von Google Cloud aktualisiert wird:

  1. Der Cluster wird auf eine neue GKE-Nebenversion aktualisiert, die einer neueren Config Connector-Version zugeordnet ist.

  2. Der Cluster verwendet eine GKE-Nebenversion, die so neu ist, dass sie nicht in den regulären oder stabilen Release-Versionen verfügbar ist. Google Cloud ordnet diese GKE-Nebenversion einer neuen Config Connector-Version zu.

Wenn Google Cloud eine GKE-Nebenversion neu zuordnet und vorhandene Cluster auf eine neue Config Connector-Version aktualisiert, wird gesagt, dass eine neue Config Connector-Version für diese GKE-Nebenversion eingeführt wird.

Google Cloud führt aus Stabilitätsgründen keine neuen Config Connector-Versionen für GKE-Nebenversionen ein, die alt genug sind, um unter den Versionen der regulären oder der stabilen Version verfügbar zu sein. Hiervon ausgenommen sind Notfallsituationen, in denen ein weitverbreitetes Problem erkannt wurde.

Aktuelle Config Connector-Version abrufen

Die Version von Config Connector, die über das Config Connector-Add-on installiert wurde, kann bis zu 12 Monate deutlich zurückliegen. Wenn Sie die neueste Version von Config Connector benötigen, empfehlen wir, zu Config Controller zu wechseln oder Config Connector manuell zu installieren und Upgrades selbst durchzuführen. Folgende Migrationsanleitungen gelten für jede Option:

Config Connector deinstallieren

Führen Sie folgende Schritte aus, um Config Connector zu deinstallieren:

  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 über die gcloud CLI oder die 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

    Führen Sie die folgenden Schritte aus, um das Config Connector-Add-on über die Google Cloud Console zu deaktivieren.

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

      Google Kubernetes Engine-Menü aufrufen

    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.

Nächste Schritte