服务网格ASM提供了对接Nacos注册中心功能,便于将Nacos上的微服务与服务网格ASM进行互通。本文介绍如何对接Nacos注册中心。

操作步骤

  1. 开启MCP功能。
    • 如果您已有1.2.1版本的Nacos实例,您需要开启MCPEnabled。
      1. 登录MSE管理控制台
      2. 在控制台左侧导航栏选择注册配置中心 > 实例列表
      3. 实例列表页面单击目标实例右侧操作列的管理
      4. 在实例详情页面左侧导航栏单击参数设置
      5. 参数设置页面单击编辑,在MCPEnabled参数值下方选择,然后单击保存并重启实例
    • 如果您没有1.2.1版本的Nacos实例,您需要创建1.2.1版本的Nacos实例并开启MCPEnabled。
      1. 创建Nacos实例。
        1. 登录MSE管理控制台
        2. 在控制台左侧导航栏选择注册配置中心 > 实例列表
        3. 实例列表页面单击创建实例
        4. 设置Nacos实例参数,然后单击立即购买

          设置引擎类型为Nacos,引擎版本为1.2.1。其他参数设置请参见创建Nacos引擎

        5. 在确认订单页面阅读并选中MSE服务协议,并依据提示支付。
        6. 支付完成后,单击管理控制台,返回实例列表页面。
      2. 开启MCPEnabled。
        1. 实例列表页面单击操作列的管理
        2. 在实例详情页面左侧导航栏单击参数设置
        3. 参数设置页面单击编辑,在MCPEnabled参数值下方选择,然后单击保存并重启实例
  2. 实例列表页面查看目标实例访问方式列下内部访问地址。
    访问地址
  3. 在浏览器中输入Cloud Shell,或者在OpenAPI Explorer中打开命令行操作界面。关于OpenAPIExplorer,请参见OpenAPI开发者门户
    说明 您可以根据实际需要打开多个命令行窗口,但最多可同时打开5个云命令行窗口。
  4. 使用以下内容,创建名为config.json的文件。
    [
      {
        "name": "nacos-test",
        "type": "nacos",
        "endpoint": "nacos-server.nacos:6443",
        "toNamespace": "nacos"
      }
    ]
    参数 说明
    name 注册中心的名称,保证唯一。
    type 注册中心的类型,本例为nacos
    endpoint 注册中心接入点。格式为步骤2获取的访问端点地址:6443,例如nacos-server.nacos:18848
    toNamespace 生成的ServiceEntry所在的命名空间,本例为nacos
  5. 执行以下命令,对接Nacos注册中心。
    aliyun servicemesh SetServiceRegistrySource --ServiceMeshId cf9e58cf8743748b3bd13867d6d87**** --Config "$(cat config.json)"
    ASM对接Nacos注册中心后,会自动在ACK集群安装asm-serviceregistry组件,并将在Nacos中的服务同步到服务网格中。

查看Nacos注册中心对接结果

  1. 查看ASM组件安装情况。
    1. 登录容器服务管理控制台
    2. 在控制台左侧导航栏中,单击集群
    3. 集群列表页面中,单击目标集群名称或者目标集群右侧操作列下的详情
    4. 在集群管理页左侧导航栏中,选择工作负载 > 无状态
    5. 无状态页面查看到名为asm-serviceregistry的组件。
      asm
  2. 查看Service Entry同步情况。
    1. 登录ASM控制台
    2. 在左侧导航栏,选择服务网格 > 网格管理
    3. 网格管理页面,找到待配置的实例,单击实例的名称或在操作列中单击管理
    4. 控制平面(自定义资源管理)区域单击ServiceEntry页签。
    5. ServiceEntry页签可以看到注册在Nacos中的服务已经同步到服务网格中。
      servicerntry