您可以将部署在容器服务Kubernetes版(ACK)中的Dubbo和Spring Cloud微服务应用接入MSE微服务治理,即可对应用进行治理,包括无损下线、离群实例摘除、服务查询、服务鉴权、服务测试和金丝雀发布,大幅提升线上微服务的稳定性和开发效率。

在ACK中安装MSE微服务治理组件

  1. 登录容器服务控制台
  2. 在左侧导航栏选择市场 > 应用目录
  3. 应用目录页面搜索并单击ack-mse-pilot
  4. ack-mse-pilot页面右侧集群列表中选择集群,然后单击创建
    说明 命名空间mse-pilot,不可修改。
    安装 MSC 组件

    安装MSE微服务治理组件大约需要2分钟,请耐心等待。

    创建成功后,会自动跳转到目标集群的发布页面,检查安装结果。如果出现以下页面,展示相关资源,则说明安装成功。

    Helm-发布-MSC Pilot

为ACK授予MSE治理中心的访问权限

ACK中的应用要使用MSE,需要为ACK授予MSE治理中心资源的访问权限。

  1. 使用云账号(主账号)登录容器服务控制台
  2. 在左侧导航栏选择集群 > 集群
  3. 集群列表页面目标集群的操作列单击管理
  4. 在目标集群的基本信息页面的集群资源区域单击Worker RAM 角色右侧的链接。
    基本信息-Worker RAM 角色
  5. 在具体角色的RAM角色管理页面单击权限管理,然后在权限管理页面单击目标权限策略名称链接。
    RAM角色管理
  6. 在目标角色的权限策略管理的页面单击策略内容页签,然后在策略内容页签下方单击修改策略内容,并在右侧的修改策略内容面板中将以下内容添加到策略内容中,单击确定
    修改策略内容
    {
    "Action":"mse:*",
    "Resource": "*",
    "Effect": "Allow"
    }

在创建新应用时开启MSE微服务治理

  1. 登录容器服务控制台
  2. 在左侧导航栏单击集群,然后在集群列表页面单击目标集群。
  3. 在集群左侧导航栏单击工作负载,然后在页面右上角选择命名空间,单击无状态,在右上角单击使用模板创建
    工作负载
  4. 使用模板创建页面上选择示例模板,并在模板中将以下annotations 添加到 spec > template > metadata层级下,然后单击创建
    annotations:
      msePilotAutoEnable: "on"
      msePilotCreateAppName: "<your-deployment-name>"
    说明 需要将<your-deployment-name>替换为您实际使用的应用名称。

    创建一个无状态(Deployment)应用并开启MSE微服务治理的完整YAML示例模板如下:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: productserivce
      name: productserivce
      namespace: default
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: productserivce
      template:
        metadata:
          annotations:
            msePilotAutoEnable: 'on'
            msePilotCreateAppName: productserivce
          labels:
            app: productserivce
        spec:
          containers:
            - image: >-
                registry.cn-hangzhou.aliyuncs.com/alibabacloud-microservice-demo/productservice
              imagePullPolicy: Always
              name: productserivce
              resources:
                requests:
                  cpu: 250m
                  memory: 512Mi

为已有应用开启MSE微服务治理

如果已经在容器服务Kubernetes版中部署了应用(包括有状态和无状态),则可以为有状态或无状态应用开启MSE微服务治理。有状态和无状态应用的开启步骤一致,本文仅以无状态应用为例介绍如何开启MSE微服务治理。

  1. 登录容器服务控制台
  2. 在左侧导航栏单击集群,然后在集群列表页面单击目标集群。
  3. 在集群左侧导航栏单击工作负载,然后在页面右上角选择命名空间,单击无状态,并在目标应用的操作列中单击更多,在列表中单击查看Yaml
    无状态-查看 YAML
  4. 编辑 YAML对话框中将以下 annotations 添加到spec > template > metadata ,并单击更新
    annotations:
      msePilotAutoEnable: "on"
      msePilotCreateAppName: "<your-deployment-name>"
    说明 需要将<your-deployment-name>替换为您实际使用的应用名称。

后续步骤

完成上述步骤后,您就为部署在容器服务Kubernetes版中的应用开启了MSE微服务治理。登录MSE治理中心控制台,即可使用MSE微服务治理对您的Spring Cloud和Dubbo服务进行服务治理。