黄帅   |

亚马逊

资深技术专家

即将开始的GIAC课程

一个云原生服务的爆炸半径治理

云原生

2021-07-31 13:30--14:30

案例背景:
整个案例从十年前的一次生产事件入手,深刻剖析了事件发生的来龙去脉:人为的网络错误变更,冲击了冗余网络的备用服务器,回滚后却很快引发了更严重的重镜像风暴,进而导致块存储API服务失效,无法响应用户请求。而事后复盘发现,毒化这一切的刽子手,来自于一个经典的主副本链式存储复制方案。当主本发生故障时,通过专门的配置服务,自动调整主副本的顺序和节点角色,继续进行上述链式复制,确保数据的持久性。正常状况下,该配置服务处理的流量很小;但当发生大规模故障(如电源或网络故障)时,大量节点失效,则需要通过配置服务保证块存储服务的强一致性,因为卷IO会一直阻塞直到复制完成,同时该配置服务的可用性也是保证数据持久性的关键。然而CAP定理中可用性和一致性的互相限制,以及分布式系统实际的运行情况,无法直接采用市面上已有的相关产品。

解决思路:
CAP定理对可用性和一致性的定义限定非常严格,并不适合应用于实际的生产系统。而且并不是所有的数据都需要对所有的用户可用。 因此,要想在强一致性的保证下,尽可能实现高可用性的关键,就变成如何最大程度地减少爆炸半径。经过数年的研究,探索出一种新的解决方案,即基于Cell新架构模式:遵循控制平面和数据平面在设计上的隔离;建立基础设施层面的故障隔离支撑;合理选择Cell组合的大小;利用基础设施感知驱动(网络和电源拓扑)的Cell编排策略”不远不近“,平衡可用性、延迟和数据持久性;应用随机分区技术,将用户打散在多个Cell中,大幅度降低爆炸半径;持续的内化的混沌工程实践,大幅提升实际运行效果。

成果:
经过数年的研究、设计、测试和落地,这个新解决方案,目前已在多个数据中心大规模部署,对外提供服务,大规模运行。

软件研发领域十多年的分布式架构设计和运维以及团队管理经验,对 XOps、微服务治理框架、云原生平台运维现代化、大规模分布式系统的可观测性构造与混沌工程实践等有深入的研究和实战经验,也是《混沌工程:复杂系统韧性实现之道》一书的译者。

即将开始的GIAC课程

一个云原生服务的爆炸半径治理

云原生

2021-07-31 13:30--14:30

案例背景:
整个案例从十年前的一次生产事件入手,深刻剖析了事件发生的来龙去脉:人为的网络错误变更,冲击了冗余网络的备用服务器,回滚后却很快引发了更严重的重镜像风暴,进而导致块存储API服务失效,无法响应用户请求。而事后复盘发现,毒化这一切的刽子手,来自于一个经典的主副本链式存储复制方案。当主本发生故障时,通过专门的配置服务,自动调整主副本的顺序和节点角色,继续进行上述链式复制,确保数据的持久性。正常状况下,该配置服务处理的流量很小;但当发生大规模故障(如电源或网络故障)时,大量节点失效,则需要通过配置服务保证块存储服务的强一致性,因为卷IO会一直阻塞直到复制完成,同时该配置服务的可用性也是保证数据持久性的关键。然而CAP定理中可用性和一致性的互相限制,以及分布式系统实际的运行情况,无法直接采用市面上已有的相关产品。

解决思路:
CAP定理对可用性和一致性的定义限定非常严格,并不适合应用于实际的生产系统。而且并不是所有的数据都需要对所有的用户可用。 因此,要想在强一致性的保证下,尽可能实现高可用性的关键,就变成如何最大程度地减少爆炸半径。经过数年的研究,探索出一种新的解决方案,即基于Cell新架构模式:遵循控制平面和数据平面在设计上的隔离;建立基础设施层面的故障隔离支撑;合理选择Cell组合的大小;利用基础设施感知驱动(网络和电源拓扑)的Cell编排策略”不远不近“,平衡可用性、延迟和数据持久性;应用随机分区技术,将用户打散在多个Cell中,大幅度降低爆炸半径;持续的内化的混沌工程实践,大幅提升实际运行效果。

成果:
经过数年的研究、设计、测试和落地,这个新解决方案,目前已在多个数据中心大规模部署,对外提供服务,大规模运行。

CopyRight © 2008-2021 Msup & 高可用架构

京ICP备09001521号