Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Activer et désactiver le contrôleur de service canonique
Remarque:Les services canoniques sont automatiquement pris en charge dans les versions 1.6.8 et ultérieures de Cloud Service Mesh.
Lorsque vous installez ou mettez à niveau Cloud Service Mesh à l'aide de l'outil asmcli, il déploie le contrôleur de service canonique sur votre cluster. Le contrôleur de service canonique regroupe les charges de travail appartenant au même service logique. Il est nécessaire pour disposer de toutes les fonctionnalités du tableau de bord des services dans la console Google Cloud . Le déploiement du contrôleur crée le déploiement canonical-service-controller-manager dans votre cluster dans l'espace de noms asm-system, et n'a aucune incidence sur vos services ou charges de travail.
Si vous n'avez pas utilisé l'outil asmcli pour installer Cloud Service Mesh, il est possible que le contrôleur de service canonique ne soit pas activé sur votre cluster. Pour déterminer si le contrôleur de service canonique est activé sur votre cluster, procédez comme suit :
kubectl get services -n asm-system
Activer le contrôleur de service canonique au sein du cluster
Si le contrôleur de service canonique n'est pas activé, vous pouvez l'activer en procédant comme suit :
Téléchargez le package kpt contenant le contrôleur dans le répertoire de travail actuel :
Si vous préférez ne pas installer le contrôleur intégré au cluster, vous pouvez activer le contrôleur de service canonique géré, qui exécute la même fonction pour tous les clusters enregistrés dans votre réseau maillé sans qu'il soit nécessaire d'installer ou de gérer le contrôleur vous-même.
Le contrôleur géré est conçu pour faire place au contrôleur intégré au cluster.
Si vous effectuez une migration depuis le contrôleur intégré au cluster, vous devez supprimer ce contrôleur dans chaque cluster sur lequel il est exécuté pour que le contrôleur géré prenne le relais. Pour en savoir plus, consultez la section Désactiver le contrôleur de services canoniques intégré au cluster.
Pour activer le contrôleur géré, procédez comme suit :
Page des fonctionnalités Anthos
Dans la Google Cloud console, accédez à la page Clusters GKE Enterprise.
Cliquez sur Activer à côté de la fonctionnalité "Service Mesh".
Après quelques minutes, le contrôleur géré active et crée des services canoniques pour les charges de travail exécutées sur les clusters enregistrés dans votre maillage. Exécutez kubectl get canonicalservices --all-namespaces pour vérifier que certains services canoniques ont été créés pour les charges de travail de votre maillage.
La description indique que les services canoniques ont été rapprochés :
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'
Si les services canoniques ne sont pas correctement rapprochés, un message d'erreur ou un résultat semblable au suivant s'affiche :
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.19/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 du plan de contrôle géré
Si vous avez installé Cloud Service Mesh géré (avec l'API Fleet ou avec asmcli), le contrôleur de service canonique géré a été installé par défaut.
Assurez-vous d'exécuter le contrôleur de service canonique géré en exécutant la commande suivante :
La description indique que les services canoniques ont été rapprochés :
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'
Si les services canoniques ne sont pas correctement rapprochés, un message d'erreur ou un résultat semblable au suivant s'affiche :
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.19/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
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[],[],null,["# Enabling and disabling the Canonical Service controller\n=======================================================\n\n\n**Note:** Canonical Services are supported automatically in Cloud Service Mesh version 1.6.8 and higher.\n\nWhen you install or upgrade Cloud Service Mesh using the\n[`asmcli`](/service-mesh/v1.19/docs/unified-install/asmcli-overview), it deploys the\n[Canonical Service controller](https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages/blob/master/asm/canonical-service/controller.yaml)\nto your cluster. The Canonical Service controller groups workloads belonging to\nthe same logical service, and is required for the full functionality of\nthe Services dashboard in the Google Cloud console. Deploying the controller\ncreates the `canonical-service-controller-manager` deployment in your cluster in\nthe `asm-system` namespace, and does not affect your services or workloads.\n\nIf you didn't use the `asmcli` tool to install Cloud Service Mesh, you might not have\nthe Canonical Service controller enabled on your cluster. To determine if the\nCanonical Service controller is enabled on your cluster: \n\n kubectl get services -n asm-system\n\nEnable the in-cluster Canonical Service controller\n--------------------------------------------------\n\nIf the Canonical Service controller isn't enabled, you can enable it with\nthe following steps:\n\n1. Download the `kpt` package that contains the controller to the current working\n directory:\n\n kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.19 asm\n\n2. Apply the controller configuration:\n\n kubectl apply -f asm/canonical-service/controller.yaml\n\nDisable the in-cluster Canonical Service controller\n---------------------------------------------------\n\nIf you want to disable the Canonical Service controller:\n\n1. Download the kpt package that contains the controller to the current working\n directory:\n\n kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.19 asm\n\n2. Delete the controller from your cluster:\n\n kubectl delete -f asm/canonical-service/controller.yaml\n\nEnable the Managed Canonical Service Controller\n-----------------------------------------------\n\n| **Platform note:** Managed Canonical Service Controller is not supported on Google Distributed Cloud (includes Google Distributed Cloud and Google Distributed Cloud).\n\nIf you would prefer not to install the in-cluster controller, you can instead\nenable the Managed Canonical Service Controller, which performs the same\nfunction for all the registered clusters in your mesh without the need to\ninstall or manage the controller yourself.\n\nThe managed controller is designed to yield to the in-cluster controller.\nIf you are migrating from the in-cluster controller, you must delete the\nin-cluster controller from each cluster it is running on for the managed\ncontroller to take over. For more information, see\n[Disable the in-cluster Canonical Service controller](#disable-in-cluster-service-controller).\n\nTo enable the Managed controller: \n\n### Anthos Features Page\n\n1. In the Google Cloud console, go to the **GKE Enterprise** Clusters page.\n\n [Go to the GKE Enterprise Clusters page](https://console.cloud.google.com/anthos/clusters)\n2. \"Register\" all the clusters in your mesh.\n\n3. In the Google Cloud console, go to the **GKE Enterprise** Features page.\n\n [Go to the GKE Enterprise Features page](https://console.cloud.google.com/anthos/features)\n4. Click **Enable** next to the \"Service Mesh\" feature\n\nAfter a few minutes, the Managed controller activates and creates Canonical\nServices for the workloads running on registered clusters in your mesh. Run\n`kubectl get canonicalservices --all-namespaces` to confirm that some\nCanonical Services have been created for the workloads in your mesh.\n\n### GKE cluster creation\n\nIf you used the [**Enable Cloud Service Mesh** option when creating a new\nGKE cluster](/service-mesh/v1.19/docs/managed/install-anthos-service-mesh-console), then the\nManaged Canonical Service Controller was installed by default.\n\nEnsure you are running the Managed Canonical Service Controller by running the\nfollowing command: \n\n```\ngcloud beta container hub mesh describe --project=PROJECT_ID\n```\n\nThe description states that the Canonical Services are reconciled successfully: \n\n projects/\u003cyour project number\u003e/locations/global/memberships/\u003cyour cluster name\u003e:\n code: OK\n description: |-\n Revision(s) ready for use: asm-managed.\n All Canonical Services have been reconciled successfully.\n servicemeshFeatureState: {}\n updateTime: '2021-11-16T21:10:36.289467777Z'\n\nIf the Canonical Services aren't reconciled successfully, there will either be\nan error message, or an output similar to the following message: \n\n projects/\u003cyour project number\u003e/locations/global/memberships/\u003cyour cluster name\u003e:\n code: OK\n description: |-\n Revision(s) ready for use: istiod-asm-173-6.\n The Managed Canonical Service Controller is yielding to the in-cluster controller. See https://cloud.google.com/service-mesh/v1.19/docs/canonical-service-controller-enable-and-disable#disable-in-cluster-service-controller for instructions on removing the in-cluster controller.\n servicemeshFeatureState: {}\n updateTime: '2021-11-16T21:05:43.286828851Z'\n lifecycleState: ENABLED\n\n### Managed control plane installation\n\nIf you installed managed Cloud Service Mesh (with the\n[fleet API](/service-mesh/v1.19/docs/managed/provision-managed-anthos-service-mesh) or with\n[`asmcli`](/service-mesh/v1.19/docs/managed/provision-managed-anthos-service-mesh-asmcli)),\nthen the Managed Canonical Service Controller was installed by default.\n\nEnsure you are running the Managed Canonical Service Controller by running the\nfollowing command: \n\n```\ngcloud beta container hub mesh describe --project=PROJECT_ID\n```\n\nThe description states that the Canonical Services are reconciled successfully: \n\n projects/\u003cyour project number\u003e/locations/global/memberships/\u003cyour cluster name\u003e:\n code: OK\n description: |-\n Revision(s) ready for use: asm-managed.\n All Canonical Services have been reconciled successfully.\n servicemeshFeatureState: {}\n updateTime: '2021-11-16T21:10:36.289467777Z'\n\nIf the Canonical Services aren't reconciled successfully, there will either be\nan error message, or an output similar to the following message: \n\n projects/\u003cyour project number\u003e/locations/global/memberships/\u003cyour cluster name\u003e:\n code: OK\n description: |-\n Revision(s) ready for use: istiod-asm-173-6.\n The Managed Canonical Service Controller is yielding to the in-cluster controller. See https://cloud.google.com/service-mesh/v1.19/docs/canonical-service-controller-enable-and-disable#disable-in-cluster-service-controller for instructions on removing the in-cluster controller.\n servicemeshFeatureState: {}\n updateTime: '2021-11-16T21:05:43.286828851Z'\n lifecycleState: ENABLED\n\nWhat's next\n-----------\n\nLearn about:\n\n- [Canonical Services](/service-mesh/v1.19/docs/canonical-service)\n- [Best practices in Canonical Services](/service-mesh/v1.19/docs/canonical-service-best-practices)\n- [Defining a Canonical Service](/service-mesh/v1.19/docs/observability/defining-canonical-service)\n- [Resolving Canonical Service issues](/service-mesh/v1.19/docs/troubleshooting/troubleshoot-canonical-service)"]]