配置Nacos作为规则下发通道

MSHA控制台通过使用Nacos作为管控指令下发通道,将容灾相关规则指令下发到MSHA SDK或MSHA Agent。

开通MSE托管版Nacos

  1. 登录MSE控制台
  2. 创建Nacos引擎。具体操作,请参见开通Nacos引擎注册中心
    说明
    • 产品版本推荐选择专业版
    • 网络类型推荐选择专有网络
    • 注册中心自动创建大概需要3~5分钟。
  3. 创建完成后,在左侧导航栏选择注册配置中心 > 实例列表
  4. 实例列表页面,选择已注册的Nacos实例。
  5. 进入Nacos实例基础信息页面,在左侧导航栏选择命名空间页面.。
  6. 命名空间页面,单击创建命名空间
  7. 创建命名空间页面,显示所属地域,输入命名空间,操作完成后单击保存
    创建完成后,在命名空间页面,可以看到命名空间ID。

在MSHA控制台绑定Nacos

  1. 登录MSHA多活容灾控制台
  2. 在左侧导航栏选择基础配置 > 命名空间
  3. 命名空间页面,选择切换到业务使用的命名空间后,单击继续配置
  4. 编辑命名空间页面下方,为每个单元添加管控命令通道,添加时选择类型为Nacos,完成后单击保存草稿
    说明
    • 保存草稿后不会立即生效,如需生效还需进行生效操作。
    • 公有云MSHA管控平台无法直接访问VPC内的Nacos Server,您需要联系MSHA产品团队申请访问VPC网络的Mapping连接地址。例如,您所购买开通的MSE Nacos内网连接地址为mse-33f32f10-nacos-ans.mse.aliyuncs.com:8848 ,申请到能够访问VPC网络的Mapping连接地址为100.100.11.111:36123 。那么在MSHA命名空间配置页添加Nacos管控命令通道时,需填入该Mapping连接地址,即:100.100.11.111:36123
  5. 在左侧导航栏选择基础配置 > 命名空间,单击右上角生效,则会将命名空间配置的相关容灾单元配置、流量规则等推送到MSFE和管控命令通道,从而将规则下发给MSHA SDK或MSHA Agent。生效

为Java应用配置Nacos连接信息

一方面,MSHA控制台会将容灾规则下发到Nacos。另一方面,应用启动时MSHA SDK或MSHA Agent需要和Nacos建立TCP长连接,以便控制台变更规则后,MSHA SDK或MSHA Agent能够监听到更新后的规则内容。因此Java应用接入MSHA SDK或MSHA Agent时,还需要在JVM参数中,添加Nacos连接地址和命名空间ID:
-Dmsha.nacos.namespace=${Nacos命名空间ID}
-Dmsha.nacos.server.addr=${Nacos服务器访问地址}
  • 查看命名空间ID,可以进入Nacos实例的命名空间页面。1
  • Nacos服务器访问地址格式为${内网地址:内网端口},例如:mse-c5efe870-nacos-ans.mse.aliyuncs.com:88481