启用和停用规范化服务控制器

注意:Cloud Service Mesh 1.6.8 及更高版本会自动支持规范化服务。

规范化服务控制器会将属于同一逻辑服务的工作负载分组到一起,这是实现 Google Cloud 控制台中服务信息中心的完整功能所必需的。

从 1.25 版开始,所有使用 asmcli 的托管式 Cloud Service Mesh 安装和集群内安装都将使用托管式规范化服务控制器进行预配。集群内规范化服务控制器已弃用,将不再接收更新。虽然现有的集群内控制器部署将继续运行,但我们强烈建议您迁移到托管式规范化服务控制器,以确保与未来版本兼容、获得最新功能并继续获得支持。

如需确定集群上是否启用了集群内规范化服务控制器,请运行以下命令:

kubectl get services -n asm-system

停用集群内规范化服务控制器

对于现有的集群内控制器部署,您应迁移到托管式规范化服务控制器。请按照迁移指南操作。

启用代管式规范化服务控制器

如果您安装了托管式 Cloud Service Mesh,则系统会默认安装托管式规范化服务控制器。此外,从 1.25 版开始,所有使用 asmcli 的集群内 Cloud Service Mesh 安装都将使用托管式规范化服务控制器进行预配。

通过运行以下命令,确保您已运行托管式规范化服务控制器:

将 FLEET_PROJECT_ID 替换为您的舰队宿主项目的 ID。通常,FLEET_PROJECT_ID 的名称与项目名称相同。

  gcloud beta container hub mesh describe --project FLEET_PROJECT_ID
  1. 如果说明指出规范化服务已成功协调,则表示托管式规范化服务控制器正在按预期运行。无需采取进一步措施。

      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-16T21:10:36.289467777Z'
    
  2. 如果说明指出托管式规范化服务控制器的优先级低于集群内控制器,请按照迁移指南操作。

      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/v1.25/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
    
  3. 如有任何其他问题,请参阅解决托管式规范化服务控制器问题,以获取问题排查指导。

后续步骤

了解: