MSHA的核心功能是切流。在⼀个数据中心发生故障或灾难的情况下,将流量切换到其他数据中心,其他数据中心可以正常运行并对关键业务或全部业务进行接管,实现用户的故障无感知。本文将介绍在异地双读中如何创建切流任务并查看切流详情。

创建切流工单

  1. 登录AHAS控制台
  2. 在控制台左侧导航栏中选择多活容灾
  3. 在左侧导航栏选择切流 > 异地切流,并在顶部选择目标命名空间。
  4. 异地切流页面,单击切流
  5. 切流详情页面选择以下任意一种方式完成规则调整。
    • 范围切流
      1. 选择切流方式范围
      2. 开启或关闭接入层分流开关
        • 开启接入层分流开关:接入层会按照路由规则的比例进行多单元分流。
        • 关闭接入层分流开关:接入层信赖DNS权重的分流,将所有流量默认路由到本单元。
        说明
        • 建议您在调整路由规则的比例后,当DNS的权重生效,即可关闭接入层分流。这样可以减少跨单元流量和响应时间,提升用户体验。
        • 在关闭接入层分流开关的情况下,尽量不要调整路由规则,否则会使得流量在一段时间内不符合新的路由规则,这个时间主要由域名权重在所有客户端生效的时间决定。
        接入层分流.png
      3. 使用以下任意方式更改切流规则:
        • 编辑中心单元的流量百分比。
          说明 更改一个单元的流量百分比后,另一单元的流量百分比也随即改变。
        • 滑动中心单元或普通单元区段的指针来改变流量百分比。
          说明 中心单元与普通单元的流量百分比随指针位置变化。
        • 单击关闭按比例调节,然后编辑中心单元的流量区间。
          说明 中心单元的流量区间与普通单元的流量区间需连续且不重复。例如中心单元流量区间为[0,3925],则普通单元为[3926,9999]。

        异地双读切流规则如下:

        • 若该命名空间在新建命名空间时,配置了路由标规则,则切流与异地多活中的范围切流行为相同。
        • 若该命名空间在新建命名空间时,未配置路由标规则,则切流调整的是每个单元应该接收的流量(请求数)比例。
    • 精准切流
      1. 选择切流方式精准切流
      2. 开启接入层分流开关。接入层会按照路由规则的比例进行多单元分流。
        说明 精准切流的场景,接入层分流开关默认必须开启。
      3. 选择单元
      4. 选择切流调整的规则。
      5. 单击单元操作列的修改,在中心单元面板中输入访问中心单元的流量名单,单击+ 添加,可添加多个要切流的精准名单。完成后单击确定
  6. 规则调整区域单击生成预览,查看切流规则。
  7. 单击生成区域的规则文本,即可对比查看切流规则前后变更详情。确认后单击执行预检查
  8. 切流检查区域查看切流检查,待所有检查项均通过后,单击确认
    说明 若有检查项检查不通过,可在该检查项右侧单击重试跳过跳过功能一般用于紧急切流场景,请谨慎使用。

查看切流进程详情

创建切流任务后,MSHA开始进行切流工作。异地双读完成切流MSHA会自动进行以下2个过程:

  1. 接入层切流。

    MSHA将执行各单元流量比例推送和各单元化路由规则推送。

    说明 若推送规则失败,则单击重试,MSHA将在2小时内定时自动重试,如果超时仍未成功则切流工单进入异常状态。
  2. 后置任务。

    MSHA将进行前镜像关闭,即关闭DTS数据库同步的校验功能。并使用ACM向业务系统推送切流终态路由规则。业务系统中依赖的MSHA-SDK,将根据终态路由规则进行路由,并结束同步延时策略的相关控制(禁写、禁更新、忽略)。