异地双活切流

MSHA的核心功能是切流。本文将介绍在异地双活中如何创建切流任务并查看切流详情。

前提条件

创建切流工单

  1. 登录多活容灾MSHA控制台

  2. 在左侧导航栏,单击多活实例

  3. 在多活实例详情页面,单击多活切流 > 切流单

  4. 切流单页面,单击新建切流单

  5. 新建切流单页面,填写名称描述,然后选择容灾场景下任意一种场景来进行规则调整

    • 场景一:选择故障 > 单元故障,会自动选中切流组件

      说明

      单元(地域)出现大面积故障,将故障单元(地域)的流量切0,主数据库在该单元(地域)的切换到正常单元。

      a. 选择故障单元,代表此时该单元当前出现故障,无法承接流量,MSHA会自动将该单元的流量置0,将另一个单元置为100。

      b. 单击下一步,进入容灾切换预览,在预览页,可以看到单元前后比例的对比,和当前切流服务,如果和您预期不符,请返回上一步。

      c. 单击执行预检查,MSHA会检查本次切流的风险,如果发现检查项检查不通过,在对应的检查项下,可以查看错误详情,您可以选择修复后重试,如果您仍然需要切流,也可以单击跳过来忽略报错。

      重要

      跳过功能一般用于紧急切流场景,请谨慎使用。

      d. 单击切换执行,开展执行切流操作。

    • 场景二:故障 > 云间网络故障,会自动选中切流组件

      说明

      单元(地域)间通信出现故障,将流量,主数据库全部切换到主单元(地域)。

      a. MSHA会自动将备单元的流量切零。

      b. 单击下一步,进入容灾切换预览,在预览页,可以看到单元前后比例的对比,和当前切流服务,如果和您预期不符,请返回上一步。

      d. 单击执行预检查,MSHA会检查本次切流的风险,如果发现检查项检查不通过,在对应的检查项下,可以查看错误详情,您可以选择修复后重试,如果您仍然需要切流,也可以单击跳过来忽略报错。

      重要

      跳过功能一般用于紧急切流场景,请谨慎使用。

      e. 单击切换执行,开展执行切流操作。

    • 场景三:日常 > 日常流量调节

      说明

      非故障场景,根据业务要求调整各单元(地域)或单元格(机房)承担的流量比例。

      1. 选择切流组件

      2. 选择切换方式,切换方式分为范围精准

        说明

        范围:调整切流规则的比例范围。

        精准:通过路由标精准路由到对应单元。

      3. 选择范围:调整单元的流量比例,可以通过修改比例或者拖动滚动条调整。

      4. 选择精准:调整路由标路由的单元,选择路由标然后通过左右箭头进行调整。

      5. 调整完成,单击下一步,进入容灾切换预览,在预览页,可以看到单元前后比例的对比,和当前切流服务,如果和您预期不符,请返回上一步。

      6. 单击执行预检查,MSHA会检查本次切流的风险,如果发现检查项未通过,在对应的检查项下,可以查看错误详情,您可以选择修复后重试,如果您仍然需要切流,也可以单击跳过来忽略报错。

        重要

        跳过功能一般用于紧急切流场景,请谨慎使用。

      7. 单击切换执行,开展执行切流操作。

查看切流详情

创建切流任务后,MSHA开始进行切流工作。这边切流任务页面可能包含3种类型,异地双活范围切流异地双活精准切流同城切流完成切流需要进行以下几个过程,您可以在切流任务页面查看这些过程的详情。

异地双活范围/精准切流

说明

若未启用某多活组件,则切流详情中不会有对应的步骤和展示内容。

  1. 单击前置任务,可以查看该实例下配置的前置自定义动作。配置前置自定义动作的具体操作,请参见自定义动作

  2. 单击更新规则

    MSHA使用ACM向业务系统推送切流态路由规则,业务系统中依赖的MSHA-SDK,将根据切流态路由规则进行路由。

    说明

    若推送规则失败,则单击重试进行重试,MSHA将在2小时内定时自动重试,如果超时仍未成功则切流工单进入异常状态并回滚重推基线规则。

  3. 单击数据禁写

    此过程中,业务系统中依赖的MSHA-SDK会开启数据库禁写控制,以此进行单元保护,避免更新规则推送到业务系统的时间不一致、机器时钟不一致,导致各机器规则生效时间不一致出现的数据脏写问题。

  4. 各层切流。同时进行接入层和数据层切流。

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

      说明

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

    • 数据层切流。MSHA自动获取数据层的实例库DTS同步延迟情况。业务系统中依赖的MSHA-SDK也会根据同步延时策略,进行相关的控制(禁写、禁更新、忽略)。当所有实例库DTS同步延迟为0s时,系统自动进入下一步骤后置任务

  5. 单击后置任务,可以查看该实例下配置的后置自定义动作。配置后置自定义动作的具体操作,请参见自定义动作

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

    执行结果:规则推送成功后,将展示流量推送比例饼图。操作至此,证明切流成功。

同城多活切流

详情和同城多活切流查看详情一致。