Kanonischen Dienstüberwacher aktivieren und deaktivieren

Hinweis: Kanonische Dienste werden in Cloud Service Mesh ab Version 1.6.8 automatisch unterstützt.

Wenn Sie Cloud Service Mesh mit asmcli installieren oder aktualisieren, wird der kanonische Dienstcontroller in Ihrem Cluster bereitgestellt. Der Canonical Service Controller gruppiert Arbeitslasten, die zum selben logischen Dienst gehören, und ist für die volle Funktionalität des Dienst-Dashboards in der Google Cloud Console erforderlich. Durch das Bereitstellen des Controllers wird die Bereitstellung canonical-service-controller-manager in Ihrem Cluster im Namespace asm-system erstellt. Sie hat keine Auswirkungen auf Ihre Dienste oder Arbeitslasten.

Wenn Sie zum Installieren von Cloud Service Mesh nicht das asmcli-Tool verwendet haben, ist der Canonical Service Controller in Ihrem Cluster möglicherweise nicht aktiviert. So stellen Sie fest, ob der Canonical Service Controller in Ihrem Cluster aktiviert ist:

kubectl get services -n asm-system

Clusterinternen kanonischen Dienstüberwacher aktivieren

Wenn der kanonische Dienstüberwacher nicht aktiviert ist, können Sie ihn mit folgenden Schritten aktivieren:

  1. Laden Sie das Paket kpt, das den Dienstüberwacher enthält, in das aktuelle Arbeitsverzeichnis herunter:

    kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@ asm
    
  2. Wenden Sie die Konfiguration an:

    kubectl apply -f asm/canonical-service/controller.yaml
    

Clusterinternen kanonischen Dienstüberwacher deaktivieren

So deaktivieren Sie den kanonischen Dienstüberwacher:

  1. Laden Sie das kpt-Paket, das den kanonischen Dienstüberwacher enthält, in das aktuelle Arbeitsverzeichnis herunter:

    kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@ asm
    
  2. Löschen Sie den Dienstüberwacher aus Ihrem Cluster:

    kubectl delete -f asm/canonical-service/controller.yaml
    

Managed Canonical Service-Controller aktivieren

Wenn Sie den clusterinternen Dienstüberwacher nicht installieren möchten, können Sie stattdessen den verwalteten kanonischen Dienstüberwacher aktivieren, der dieselbe Aufgabe für alle registrierten Cluster in Ihrem Mesh ausführt, ohne dass Sie den Dienstüberwacher selbst installieren oder verwalten müssen.

Der verwaltete Controller ist so konzipiert, dass er auf den clusterinternen Controller angewendet wird. Wenn Sie vom Cluster-Controller migrieren, müssen Sie den Cluster-Controller in jedem Cluster löschen, auf dem er ausgeführt wird, damit der verwaltete Controller übernehmen kann. Weitere Informationen finden Sie unter Clusterinternen kanonischen Dienstüberwacher deaktivieren.

So aktivieren Sie den verwalteten Dienstcontroller:

Seite mit Anthos-Features

  1. Rufen Sie in der Google Cloud Console die Seite GKE Enterprise-Cluster auf.

    Zur Seite „GKE Enterprise-Cluster“

  2. "Registrieren“ Sie alle Cluster in Ihrem Mesh-Netzwerk.

  3. Rufen Sie in der Google Cloud Console die Seite mit den GKE Enterprise-Features auf.

    Zur Seite „Features“ von GKE Enterprise

  4. Klicken Sie neben dem Feature "Service Mesh" auf Aktivieren.

Nach einigen Minuten aktiviert der verwaltete Controller kanonische Dienste für die Arbeitslasten, die auf registrierten Clustern in Ihrem Mesh ausgeführt werden. Führen Sie kubectl get canonicalservices --all-namespaces aus, um zu prüfen, ob einige kanonische Dienste für die Arbeitslasten in Ihrem Mesh erstellt wurden.

GKE-Cluster erstellen

Wenn Sie beim Erstellen eines neuen GKE-Cluster die Option Cloud Service Mesh aktivieren verwendet haben, wurde der Managed Canonical Service Controller standardmäßig installiert.

Prüfen Sie, ob Sie den Managed Canonical Service-Controller ausführen mit folgendem Befehl:

gcloud beta container hub mesh describe --project=PROJECT_ID

In der Beschreibung wird angegeben, dass die kanonischen Dienste erfolgreich abgeglichen wurden:

  projects/<your project number>/locations/global/memberships/<your cluster name>:
    code: OK
    description: |-
      Revision(s) ready for use: asm-managed.
      All Canonical Services have been reconciled successfully.
    servicemeshFeatureState: {}
    updateTime: '2021-11-16T21:10:36.289467777Z'

Wenn die kanonischen Dienste nicht erfolgreich abgeglichen wurden, wird entweder eine Fehlermeldung oder eine Ausgabe wie die folgende angezeigt:

  projects/<your project number>/locations/global/memberships/<your cluster name>:
    code: OK
    description: |-
      Revision(s) ready for use: istiod-asm-173-6.
      The Managed Canonical Service Controller is yielding to the in-cluster controller.  See https://cloud.google.com/service-mesh/docs/canonical-service-controller-enable-and-disable#disable-in-cluster-service-controller for instructions on removing the in-cluster controller.
    servicemeshFeatureState: {}
    updateTime: '2021-11-16T21:05:43.286828851Z'
  lifecycleState: ENABLED

Installation der verwalteten Steuerungsebene

Wenn Sie das verwaltete Cloud Service Mesh (mit der Flotten-API oder mit asmcli) installiert haben, wurde der Managed Canonical Service Controller standardmäßig installiert.

Prüfen Sie, ob Sie den Managed Canonical Service-Controller ausführen mit folgendem Befehl:

gcloud beta container hub mesh describe --project=PROJECT_ID

In der Beschreibung wird angegeben, dass die kanonischen Dienste erfolgreich abgeglichen wurden:

  projects/<your project number>/locations/global/memberships/<your cluster name>:
    code: OK
    description: |-
      Revision(s) ready for use: asm-managed.
      All Canonical Services have been reconciled successfully.
    servicemeshFeatureState: {}
    updateTime: '2021-11-16T21:10:36.289467777Z'

Wenn die kanonischen Dienste nicht erfolgreich abgeglichen wurden, wird entweder eine Fehlermeldung oder eine Ausgabe wie die folgende angezeigt:

  projects/<your project number>/locations/global/memberships/<your cluster name>:
    code: OK
    description: |-
      Revision(s) ready for use: istiod-asm-173-6.
      The Managed Canonical Service Controller is yielding to the in-cluster controller.  See https://cloud.google.com/service-mesh/docs/canonical-service-controller-enable-and-disable#disable-in-cluster-service-controller for instructions on removing the in-cluster controller.
    servicemeshFeatureState: {}
    updateTime: '2021-11-16T21:05:43.286828851Z'
  lifecycleState: ENABLED

Nächste Schritte

Hier erfahren Sie mehr über: