发布于: Nov 15, 2023

在一个理想的世界里,一切都非常完美,并且一直都在顺畅运作。早晨的通勤没有交通堵塞,最喜欢的停车位一直空着,一杯温度适宜的饮料,生活一帆风顺,没有任何中断。在需要时,您能得到所需的东西。但这只存在于想象中的完美世界里。在现实世界里,一切往往不总是按计划进行。交通情况是多变的,每天我们可能停在不同的车位,有时,可能把一杯烫手的咖啡不小心弄洒了。现在,考虑一下 IT 世界里发生的这些类似中断,而且规模更大:在全球范围内运行的服务和应用程序可能会遭遇意外中断,从而产生轻微或重大影响,具体取决于业务本身的性质。例如在机场候机时,常用的手机应用程序意外发生崩溃,这属于影响轻微的中断;相比之下,由于网络服务中断,飞行员无法与机场塔台人员沟通,导致所有航班停飞,这就是影响重大的中断了。韧性应用程序可减小发生此类中断的可能性,并尽量缩短发生故障时的恢复时间。韧性应用程序可确保服务在发生各种规模的中断时恢复过来,并在尽可能短的时间内再次可用。我们来更深入地了解一下什么是韧性、我们如何构建云本身的韧性,以及亚马逊云科技如何帮助我们的客户在云中构建具有高可靠性和韧性的应用程序。

云的韧性和可靠是承载云服务的硬件、软件、网络和设施所具备的抵御故障并快速从中断中恢复的能力,并尽可能减少云服务的中断。亚马逊云科技在确保云可靠性方面进行了大量投资,设计了高度可用的全球基础设施,在服务设计和部署机制中建立了保障措施,并将韧性融入平台的运营文化中。

  •  1. 全球基础设施:亚马逊云科技在全球范围内部署了 32 个区域、102 个可用区,并宣布计划增加 15 个可用区和 5 个亚马逊云科技区域,以便支持我们为全球客户提供的 200 多项功能齐全的服务,并且这一数字还在不断增加。每个区域由一个地理区域内的多个隔离的且在物理上分隔的可用区组成,每个区域设计为 3 个以上的可用区,每个可用区都有独立的电力、冷却和物理安全性,并通过冗余的超低延迟网络进行互联。您可以将应用程序在多个可用区或者多个区域内部署以实现更大的容错能力。
  • 2. 故障边界的隔离:在全球部署的同时,亚马逊云科技使用多种故障隔离结构来实现服务的韧性。这些故障隔离的边界将故障控制在已有故障域且可预测的范围内。亚马逊云科技服务的隔离边界包括:可用区 (AZ)、区域(Region)、控制平面和数据平面。从故障隔离边界的维度看,亚马逊云科技运营三种不同类别的服务:可用区性、区域性和全球性。例如,每个区域级服务都部署了专用的基础设施和服务堆栈,且互相隔离,在跨区域调用时也足够的隔离机制。同时,每种服务的控制平面和数据平面都在不同的范围内进行隔离,即控制面的失败不影响数据面的运行,且不会扩散到相邻范围。(例如,控制台的失败不会影响现有云主机的运行)。综上,亚马逊云科技将故障发生时的爆炸半径限制在可控范围内。
  • 3. 静态稳定设计:亚马逊云科技韧性设计的关键是保持 “静态稳定性”。“静态稳定性” 是依赖项发生故障或不可用期间系统无需进行更改就可以依然可以保持继续正常运行,在数据平面对资源的访问一旦配置,就不依赖于控制平面,因此不会受到任何控制平面失效的影响。换句话说,即使创建、修改或删除资源的能力受损,现有资源仍然可用。
  • 4. 单元架构:亚马逊云科技的服务采用单元架构的部署方式,即将单元作为云服务部署的基本单位,单元的大小受到限制且彼此隔离。这种设计减少了故障的影响范围,整体可用性得以提高并保持了服务的连续性,类似于船只中多个水密舱的设计。
  • 5. 卓越运营:实现云的可靠和韧性需要的不仅仅可靠的技术,它也需要人员、文化、流程和工具的支持。亚马逊云科技基于 Two-Pizza team 的服务所有模式组建团队和文化,通过安全的持续发布、运营就绪审查、错误更正流程等流程和工具来维护云服务的稳定运行。

同时,亚马逊云科技提供系列的工具、解决方案及方案论,帮助客户利用云本身的韧性,提升 “云中的韧性”。

  • 1. Amazon Health 是您的权威信息来源,可从中了解关乎您的亚马逊云科技云资源的相应服务事件和计划更改情况。Amazon Health 会向您发送有关服务事件、计划变更和账户的通知,以帮助您进行管理并采取行动。登录 Amazon Health Dashboard 可使用 Amazon EventBridge 查看特定于账户的 Health 信息或接收 Health 事件更新。您还可以使用 Amazon Premium Support 提供的 Amazon Health API 以编程方式访问 Amazon Health。
  • 2. Amazon Managed Services 提供主动、预防和检测功能,这些功能提高了操作门槛,并帮助降低风险,而不限制敏捷性,使您能够专注于创新。AMS 通过运营能力扩展您的团队,包括监控、事件管理、亚马逊云科技事件检测及响应服务、安全、补丁、备份和成本优化。
  • 1. 通过 Well-Architect 框架,构建韧性系统最佳实践:包含自动从故障中恢复,测试恢复过程,横向扩展以提高工作负载的可用性,在设计时,分布式系统的工作负载架构必须能够预防与减少故障,符合静态稳定性的实践,并具备隔离机制。同时系统的设计应能够检测故障并自动加以修复或转移。
  • 2. 全栈可观测性:包括亚马逊云科技原生、应用程序性能监控(APM)和开源解决方案,让您能够随时了解整个技术栈中发生的情况。可观测性让您可以在云、混合或本地环境中的网络、基础设施和应用程序中收集、关联、聚合和分析遥测数据,以便深入了解系统的行为、性能和运行状况。这些见解可帮助您更快地检测、调查和修复问题;结合人工智能和机器学习,以主动反应、预测和预防问题。

最后,实现业务连续性,合适的业务容灾备份策略也是十分重要的。亚马逊云科技提供完善的容灾与备份机制,从冷备份、实时异步复制业务数据,到实时复制业务数据、实时同步/异步双向复制业务数据,适用于不同 RPO/RTO 目标需求,帮助您提前做好准备提升可用性。

云上业务连续性是创新的基石,亚马逊云科技基础设施经过精心构建,是当今安全、可靠的云计算环境之一,旨在提供一个高可扩展性、高可靠的平台,使您能够快速安全地部署应用程序、构建高可用的业务系统。