Activer et désactiver le contrôleur de service canonique
Remarque:Les services canoniques sont compatibles automatiquement dans Cloud Service Mesh version 1.6.8 ou ultérieure.
Lorsque vous installez ou mettez à niveau Cloud Service Mesh à l'aide de asmcli
, le service
Contrôleur de service canonique
à votre cluster. Le contrôleur de service canonique regroupe les charges de travail
le même service logique et est requis pour l'ensemble des fonctionnalités
le tableau de bord des services dans la console Google Cloud. Déployer le contrôleur
crée le déploiement canonical-service-controller-manager
dans votre cluster
l'espace de noms asm-system
, et n'affecte pas vos services ni vos charges de travail.
Si vous n'avez pas utilisé l'outil asmcli
pour installer Cloud Service Mesh, vous pouvez
ne pas avoir activé le contrôleur de service canonique sur votre cluster. Pour déterminer
si le contrôleur de service canonique est activé sur votre cluster:
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 :kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.22 asm
Appliquez la configuration du contrôleur :
kubectl apply -f asm/canonical-service/controller.yaml
Désactiver le contrôleur de service canonique du cluster
Si vous souhaitez désactiver le contrôleur de service canonique, procédez comme suit :
Téléchargez le package kpt qui contient le contrôleur dans le répertoire de travail actuel :
kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.22 asm
Supprimez le contrôleur de votre cluster :
kubectl delete -f asm/canonical-service/controller.yaml
Activer le contrôleur de service canonique géré
<ph type="x-smartling-placeholder">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:
Création d'un cluster GKE
Si vous avez utilisé l'option Activer Cloud Service Mesh lors de la création d'un un cluster GKE, 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 :
gcloud beta container hub mesh describe --project=PROJECT_ID
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/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é le service géré Cloud Service Mesh (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 :
gcloud beta container hub mesh describe --project=PROJECT_ID
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/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
Étape suivante
Apprenez-en davantage sur les points suivants :
- Services canoniques
- Bonnes pratiques concernant les services canoniques
- Définir un service canonique
- Résoudre les problèmes liés aux services canoniques