searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

标准多活管理的价值

2024-07-31 09:49:37
55
0

多重一致性问题

采用标准化的多活容灾管理产品可以帮助业务减少应用多活的实现成本,克服实现难点,即“多重一致性”问题:

  • 流量路由一致性表现为体验一致性,所有业务请求在预期路径内闭环,请求质量(如响应时间)不随机房分布有明显改变。需要从流量入口开始的每一层技术组件都能够识别、纠错流量,减少额外调用负担(如不合理的跨机房、跨地域调用增加的延迟)。
  • 数据读写一致性:表现为结果一致性,所有业务数据在可接受的时间内(由业务感知判断)保持数据正确,没有数据错乱和明显的数据延迟。需要数据层具备跨集群同步的能力,对于跨集群异步同步的场景,还要提供面向业务的容错方案,避免极端场景数据不一致问题。
  • 运维管理一致性:表现为操作一致性,所有容灾操作都有标准化操作流程和预期结果。需要容灾平台有通用的数据模型、服务接口和流程模版,帮助业务屏蔽组件管理差异,自动化编排有序的容灾流程。

稳定的恢复预期

度量业务连续性,一般可用两个可用度相关指标来评估:

  • MTBF(Mean Time Between Failure):指系统在两次故障之间的平均时间。
  • MTTR(Mean Time To Repair):指系统从故障发生到故障修复完成所需的平均时间。

对于传统的非多活管控的应用架构,应用的高可用能力主要取决于组件的高可用能力,例如依赖组件的集群化部署来减少故障导致系统不可用的概率,即通过更长的MTBF来提升业务的SLA等级。

与之相对应的,应用从不可用状态的恢复能力也主要取决于组件的故障恢复能力,即使流量层组件具备一定的调度逃逸功能,由于缺乏与数据层组件的协同,业务数据的一致性也较难得到保障,也就是说业务恢复效率与组件MTTR强相关,且没有明确预期。

在应用多活架构下,“业务恢复”和“故障恢复”是解耦的,在发生故障时,可以通过一体化的切流能力,在保障数据一致性的前提下优先恢复业务,一般是分钟级别的业务恢复时间,在业务恢复的前提下,再进行故障定位和修复。

 

简化的故障逃逸

以应用流量为牵引,应用多活覆盖的故障场景包括公网网络故障、接入网关故障、业务应用故障、数据库等中间件故障、数据中心间网络故障以及导致数据中心内大面积故障的环境问题,如下图所示。

针对前述六种故障场景,都可以通过一键切流实现故障逃逸,分析如下。

故障场景

业务影响面

多活容灾操作

公网网络故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为接入网关无告警,一个数据中心业务流量对比平时下跌

应用多活服务一键切流,将异常流量切到正常数据中心

接入网关故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为一个数据中心的接入网关状态异常,业务流量对比平时下跌

业务应用故障

  • 业务表现为部分功能出现异常
  • 监控表现为流量水位正常,一个数据中心的应用服务实例状态和调用成功率下降

中间件故障

  • 数据库故障直接影响用户体验,其他中间件故障可能不表现到前端体验上
  • 监控表现为应用服务调用成功率下降,或中间件实例状态异常

跨中心网络故障

  • 如果流量在数据中心内闭环则没有业务影响,只影响数据同步延迟
  • 如果存在跨中心网络调用,则影响该功能业务体验
  • 监控表现为数据同步任务状态异常,或部分应用服务调用成功率下降

数据中心故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为一个数据中心流量跌零,无法获取相关实例信息

0条评论
0 / 1000
杰斯汉
19文章数
1粉丝数
杰斯汉
19 文章 | 1 粉丝
原创

标准多活管理的价值

2024-07-31 09:49:37
55
0

多重一致性问题

采用标准化的多活容灾管理产品可以帮助业务减少应用多活的实现成本,克服实现难点,即“多重一致性”问题:

  • 流量路由一致性表现为体验一致性,所有业务请求在预期路径内闭环,请求质量(如响应时间)不随机房分布有明显改变。需要从流量入口开始的每一层技术组件都能够识别、纠错流量,减少额外调用负担(如不合理的跨机房、跨地域调用增加的延迟)。
  • 数据读写一致性:表现为结果一致性,所有业务数据在可接受的时间内(由业务感知判断)保持数据正确,没有数据错乱和明显的数据延迟。需要数据层具备跨集群同步的能力,对于跨集群异步同步的场景,还要提供面向业务的容错方案,避免极端场景数据不一致问题。
  • 运维管理一致性:表现为操作一致性,所有容灾操作都有标准化操作流程和预期结果。需要容灾平台有通用的数据模型、服务接口和流程模版,帮助业务屏蔽组件管理差异,自动化编排有序的容灾流程。

稳定的恢复预期

度量业务连续性,一般可用两个可用度相关指标来评估:

  • MTBF(Mean Time Between Failure):指系统在两次故障之间的平均时间。
  • MTTR(Mean Time To Repair):指系统从故障发生到故障修复完成所需的平均时间。

对于传统的非多活管控的应用架构,应用的高可用能力主要取决于组件的高可用能力,例如依赖组件的集群化部署来减少故障导致系统不可用的概率,即通过更长的MTBF来提升业务的SLA等级。

与之相对应的,应用从不可用状态的恢复能力也主要取决于组件的故障恢复能力,即使流量层组件具备一定的调度逃逸功能,由于缺乏与数据层组件的协同,业务数据的一致性也较难得到保障,也就是说业务恢复效率与组件MTTR强相关,且没有明确预期。

在应用多活架构下,“业务恢复”和“故障恢复”是解耦的,在发生故障时,可以通过一体化的切流能力,在保障数据一致性的前提下优先恢复业务,一般是分钟级别的业务恢复时间,在业务恢复的前提下,再进行故障定位和修复。

 

简化的故障逃逸

以应用流量为牵引,应用多活覆盖的故障场景包括公网网络故障、接入网关故障、业务应用故障、数据库等中间件故障、数据中心间网络故障以及导致数据中心内大面积故障的环境问题,如下图所示。

针对前述六种故障场景,都可以通过一键切流实现故障逃逸,分析如下。

故障场景

业务影响面

多活容灾操作

公网网络故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为接入网关无告警,一个数据中心业务流量对比平时下跌

应用多活服务一键切流,将异常流量切到正常数据中心

接入网关故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为一个数据中心的接入网关状态异常,业务流量对比平时下跌

业务应用故障

  • 业务表现为部分功能出现异常
  • 监控表现为流量水位正常,一个数据中心的应用服务实例状态和调用成功率下降

中间件故障

  • 数据库故障直接影响用户体验,其他中间件故障可能不表现到前端体验上
  • 监控表现为应用服务调用成功率下降,或中间件实例状态异常

跨中心网络故障

  • 如果流量在数据中心内闭环则没有业务影响,只影响数据同步延迟
  • 如果存在跨中心网络调用,则影响该功能业务体验
  • 监控表现为数据同步任务状态异常,或部分应用服务调用成功率下降

数据中心故障

  • 业务表现为大面积流量异常,影响用户体验
  • 监控表现为一个数据中心流量跌零,无法获取相关实例信息

文章来自个人专栏
学而时习
19 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
3
1