Abilitazione e disabilitazione del controller del servizio di canonicalizzazione
Nota: i servizi canonici sono supportati automaticamente in Cloud Service Mesh 1.6.8 e versioni successive.
Quando esegui l'installazione o l'upgrade di Cloud Service Mesh utilizzando asmcli
, viene eseguito il deployment del controller del servizio di canonicalizzazione nel cluster. Il controller del servizio canonico raggruppa i carichi di lavoro appartenenti allo stesso servizio logico ed è necessario per la piena funzionalità della dashboard Servizi nella console Google Cloud. Deployment del controller
crea il deployment canonical-service-controller-manager
nel tuo cluster in
lo spazio dei nomi asm-system
e non influisce sui servizi o sui carichi di lavoro.
Se non hai utilizzato lo strumento asmcli
per installare Cloud Service Mesh, potresti non avere
il controller del servizio canonico abilitato sul tuo cluster. Per determinare se il controller del servizio di canonicalizzazione è abilitato nel cluster:
kubectl get services -n asm-system
Attivare il controller del servizio di canonicalizzazione all'interno del cluster
Se il controller del servizio canonico non è abilitato, puoi abilitarlo con segui questi passaggi:
Scarica il pacchetto
kpt
che contiene il controller nell'attuale pacchetto directory:kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.23 asm
Applica la configurazione del controller:
kubectl apply -f asm/canonical-service/controller.yaml
Disattivare il controller del servizio di canonicalizzazione all'interno del cluster
Se vuoi disattivare il controller del servizio di canonicalizzazione:
Scarica il pacchetto kpt che contiene il controller nell'attuale ambiente directory:
kpt pkg get https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages.git/asm@release-1.23 asm
Elimina il controller dal cluster:
kubectl delete -f asm/canonical-service/controller.yaml
Abilita il Controller di servizi canonici gestiti
Se preferisci non installare il controller nel cluster, puoi abilitare il Managed Canonical Service Controller, che esegue le stesse funzionare per tutti i cluster registrati nel tuo mesh senza la necessità installare o gestire autonomamente il controller.
Il controller gestito è progettato per cedere al controller nel cluster. Se esegui la migrazione dal controller in cluster, devi eliminare il controller in cluster da ogni cluster su cui è in esecuzione affinché il controller gestito possa subentrare. Per ulteriori informazioni, consulta Disattivare il controller del servizio Canonical nel cluster.
Per attivare il controller gestito:
Pagina delle funzionalità di Anthos
Nella console Google Cloud, vai alla pagina Cluster GKE Enterprise.
"Registra" tutti i cluster della rete mesh.
Nella console Google Cloud, vai alla pagina Funzionalità di GKE Enterprise.
Fai clic su Abilita accanto a "Mesh di servizi". funzionalità
Dopo alcuni minuti, il controller gestito attiva e crea servizi Canonical per i carichi di lavoro in esecuzione sui cluster registrati nel tuo mesh. Corsa
kubectl get canonicalservices --all-namespaces
per verificare che alcune
Sono stati creati i servizi canonici per i carichi di lavoro nel tuo mesh.
Creazione di un cluster GKE
Se hai utilizzato l'opzione Abilita Cloud Service Mesh durante la creazione di un nuovo cluster GKE, il Controller dei servizi Canonical gestito è stato installato per impostazione predefinita.
Assicurati di eseguire il controller di servizi canonici gestiti eseguendo seguente comando:
gcloud beta container hub mesh describe --project=PROJECT_ID
La descrizione indica che i servizi canonici sono stati riconciliati correttamente:
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'
Se la riconciliazione dei servizi Canonical non va a buon fine, verrà visualizzato un messaggio di errore o un output simile al seguente:
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.20/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
Installazione del piano di controllo gestito
Se hai installato Cloud Service Mesh gestito (con l'API fleet o con asmcli
), il controller di servizio Canonical gestito è stato installato per impostazione predefinita.
Assicurati di eseguire il controller di servizi canonici gestiti eseguendo seguente comando:
gcloud beta container hub mesh describe --project=PROJECT_ID
La descrizione indica che i servizi canonici sono stati riconciliati correttamente:
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'
Se la riconciliazione dei servizi Canonical non va a buon fine, verrà visualizzato un messaggio di errore o un output simile al seguente:
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.20/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
Passaggi successivi
Scopri di più su:
- Servizi canonici
- Best practice per i servizi canonici
- Definizione di un servizio canonico
- Risolvere i problemi relativi al servizio Canonical