您可以通过控制台,根据业务的部署情况切换MongoDB实例的节点角色,满足应用就近连接的需求。

场景示例

ECS实例和MongoDB实例在同一可用区通过内网连接时,网络延时最小。而跨可用区连接,将导致网络延迟增高,影响MongoDB实例的性能和业务的运行。

切换角色环境介绍

在本案例的环境中,应用所属的ECS实例在可用区2,如果按照当前副本集实例的各节点分布情况(即Primary节点在可用区1),那么ECS需要跨可用区连接Primary节点。

为优化业务的部署架构,您可以通过切换节点角色的功能,将Primary节点和Secondary节点的角色进行互换。在本案例中,节点角色更换后,可用区2中的节点的角色从Secondary变更为Primary(注:仅变更节点的角色,不会改变节点所属的可用区和角色ID),可实现ECS实例和MongoDB实例同可用区就近连接。

前提条件

实例为副本集实例或分片集群实例。

注意事项

  • 触发节点的角色切换后,会产生1次30秒内的连接闪断,建议您在业务低峰期操作或确保应用具备重连机制。
  • 节点角色切换的操作,仅变更节点的角色,不改变节点所属的可用区和角色ID。

操作步骤

  1. 登录MongoDB管理控制台
  2. 根据实例类型,在左侧导航栏,单击副本集实例列表分片集群实例列表
  3. 在页面左上角,选择实例所在的资源组和地域。
  4. 单击目标实例ID或目标实例所在行操作列的管理
  5. 在目标实例页面的左侧导航栏,单击服务可用性
  6. 根据实例类型,在对应可用区分布区域,执行对应操作。
    说明 角色切换期间会产生1次30秒内的连接闪断,建议您在业务低峰期操作或确保应用具备重连机制。
    • 副本集实例

      可用区分布区域,单击左上方的角色切换

    • 分片集群实例
      说明 分片集群实例仅支持管理Shard节点和ConfigServer节点的可用区分布。

      Shard可用区分布CS可用区分布区域,单击左上方的角色切换

  7. 角色切换面板,设置以下参数。
    参数参数说明
    角色选择需要切换的角色。
    角色选择切换后的角色。
    生效时间选择角色切换的生效时间。
    • 立即生效:系统立即对角色进行切换。
    • 可运维时间内生效:在可维护时间段内系统对角色进行切换。您可以选择当前设置的可维护时间段,也可以在变更运维时间下拉列表中,重新设置可维护时间段。
  8. 单击确定