使用MSE的Nacos注册中心

更新时间:
复制为 MD 格式

本地开发的Spring Cloud应用或者Dubbo应用托管到Serverless 应用引擎 SAE(Serverless App Engine)时,您可以使用SAE的注册中心,也可以使用MSE托管的注册中心。本文介绍如何通过SAE控制台为应用配置Nacos服务注册与发现功能。

前提条件

使用推荐

当您的微服务应用较多时,注册中心按推荐程度由高到低依次排序如下:

  • 商业版的服务注册中心(MSE)

  • 自建服务注册中心

  • SAE内置服务注册中心

更多信息,请参见MSE Nacos开源Nacos

使用限制

使用MSENacos的相关限制,具体详情,请参见MSE Nacos SDK的应用和Nacos SDK限制使用版本

功能入口

场景不同,对应的操作入口也有所差异:

创建应用

  1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击创建应用

  2. 应用基本信息向导页面进行配置后,单击下一步:高级设置

对正在运行的应用进行变更

警告

重新部署应用后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。

  1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击目标应用名称。

  2. 在目标应用的基础信息页面,单击部署应用

对已停止的应用进行变更

  1. 登录SAE控制台,在左侧导航栏选择应用管理 > 应用列表,然后选择目标地域和目标命名空间,最后单击目标应用名称。

  2. 在目标应用的基础信息页面,单击修改应用配置

配置服务注册发现功能

找到并展开服务注册发现区域,选择Nacos注册中心服务发现MSE Nacos 专业版,然后选择创建好的MSE Nacos 实例和对应的命名空间

结果验证

Consumer应用为例,在基础信息页面的实例列表页签,在实例列表操作列,单击Webshell,在Webshell窗口执行相关命令,验证应用部署是否成功。更多信息,请参见使用Webshell诊断应用

  1. 验证服务是否成功注册。

curl -X GET 'http://192.168.XX.XX:8848/nacos/v1/ns/instance/list?serviceName=service-provider'
  • service-provider:服务名。

  • 192.168.XX.XX:8848:安装Nacos的主机IP地址和端口号。192.168.XX.XX需替换成MSE Nacos注册中心的内网地址。您可以登录MSE注册配置中心管理控制台,在实例列表页面,单击目标实例。然后在目标实例的基础信息页面,获取注册中心的内网地址。

返回结果如下,表示服务已注册成功。

[/home/admin]$ curl -X GET 'http://mse-xxx-nacos-ans.mse.aliyuncs.com:8848/nacos/v1/ns/instance/list?serviceName=service-provider'
{"name":"DEFAULT_GROUP@@service-provider","groupName":"DEFAULT_GROUP","clusters":"","cacheMillis":10000,"hosts":[],"lastRefTime":1679984302840,"checksum":"","allIPs":false,"reachProtectionThreshold":false,"hitWeightProtection":false,"valid":true,"dom":"service-provider"} [/home/admin]$
  1. 验证整个微服务应用的访问链路是否正常。

按需选择以下命令。127.0.0.1:18082为运行ProviderConsumer的主机IP地址和访问端口。

  • curl http://127.0.0.1:18082/echo-rest/{自定义变量}
  • curl http://127.0.0.1:18082/echo-feign/{自定义变量}

返回结果如下,表示Consumer应用已成功调用Provider应用,微服务应用的访问链路正常。执行命令及返回示例如下,返回 192.168.0.222:hello 表示微服务访问链路正常。

[/home/admin]$ curl http://127.0.0.1:18082/echo-rest/hello
192.168.0.222:hello
[/home/admin]$