Anthos Service Mesh and Traffic Director are now Cloud Service Mesh. For more information, see the Cloud Service Mesh overview.

Enabling and disabling the Canonical Service controller

Note: Canonical Services are supported automatically in Cloud Service Mesh version 1.6.8 and higher.

The Canonical Service controller groups workloads belonging to the same logical service and is required for the full functionality of the Services dashboard in the Google Cloud console.

All managed Cloud Service Mesh installations and in-cluster installations with asmcli from version 1.25 provisioned with the managed Canonical Service controller. The in-cluster Canonical Service Controller has been deprecated and will no longer receive updates. While existing deployments of in-cluster controller will continue to operate, we strongly recommend migrating to the managed Canonical Service Controller to ensure compatibility with future releases, access to the latest features, and continued support.

To determine if the in-cluster Canonical Service controller is enabled on your cluster:

kubectlgetservices-nasm-system

Disable the in-cluster Canonical Service controller

For existing in-cluster controller deployments, you should migrate to the managed Canonical Service controller. Follow the migration guide.

Enable the Managed Canonical Service Controller

If you installed managed Cloud Service Mesh, then the Managed Canonical Service Controller was installed by default. Also, all the in-cluster Cloud Service Mesh installations with asmcli from version 1.25 will be provisioned with the managed Canonical Service controller.

Ensure you are running the Managed Canonical Service Controller by running the following command:

Replace FLEET_PROJECT_ID with the ID of your Fleet Host project. Generally, the FLEET_PROJECT_ID has the same name as the project.

gcloudbetacontainerhubmeshdescribe--projectFLEET_PROJECT_ID
  1. If the description states that the Canonical Services are reconciled successfully, then Manged Canonical Service Controller is operating as expected. No further action is required.

     projects/<your project number>/locations/<location>/memberships/<membership-name>:
     code: OK
     description: |-
     Revision(s) ready for use: asm-managed.
     All Canonical Services have been reconciled successfully.
     servicemeshFeatureState: {}
     updateTime: '2021年11月16日T21:10:36.289467777Z'
    
  2. If the description states that Managed Canonical Service Controller is yielding to the in-cluster controller, follow the migration guide.

     projects/<your project number>/locations/<location>/memberships/<membership-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月16日T21:05:43.286828851Z'
     lifecycleState: ENABLED
    
  3. For any other issues, refer to Resolve Managed Canonical Service Controller issues for troubleshooting guidance.

What's next

Learn about:

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025年10月28日 UTC.