Hinweis: Kanonische Dienste werden in Anthos Service Mesh Version 1.6.8 und höher automatisch unterstützt.
Wenn Sie Anthos Service Mesh mit asmcli
installieren oder aktualisieren, wird der kanonische Dienstüberwacher in Ihrem Cluster bereitgestellt. Der kanonische Dienstüberwacher gruppiert Arbeitslasten, die zu demselben logischen Dienst gehören, und ist für die volle Funktionalität des Services-Dashboards in der Google Cloud Console erforderlich. Durch die Bereitstellung des Controllers wird das canonical-service-controller-manager
-Deployment in Ihrem Cluster im Namespace asm-system
erstellt. Dies hat keine Auswirkungen auf Ihre Dienste oder Arbeitslasten.
Wenn Sie Anthos Service Mesh nicht mit asmcli
installiert haben, ist der kanonische Dienstüberwacher möglicherweise nicht in Ihrem Cluster aktiviert. So ermitteln Sie, ob der kanonische Dienstüberwacher auf 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:
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@release-1.12 asm
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:
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@release-1.12 asm
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
Rufen Sie in der Google Cloud Console die Seite GKE Enterprise-Cluster auf.
"Registrieren“ Sie alle Cluster in Ihrem Mesh-Netzwerk.
Rufen Sie in der Google Cloud Console die Seite mit den GKE Enterprise-Features auf.
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-Clusters die Option Anthos 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/v1.12/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 die Option --managed
zum Konfigurieren des verwalteten Anthos Service Mesh 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/v1.12/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:
- Kanonische Dienste
- Best Practices für kanonische Dienste
- Kanonischen Dienst definieren
- Kanonische Dienstprobleme beheben