摘要
- 触发因素是一次网络容量调整中的错误流量迁移;根因链还包括恢复容量不足、退避不充分、低概率竞态,以及区域控制面缺少足够隔离。
- AWS 披露的 13% 与 0.07% 都只以受影响可用区内的卷为分母,不能外推为整个美东区域或全球 AWS 的影响比例。
- 问责重点应放在谁能配置恢复边界、谁能看到资源耗尽、谁有权隔离故障,以及恢复完成必须提交哪些证据。
从一次网络调整到节点隔离
AWS 对事件的说明把起点定在 2011 年 4 月 21 日凌晨 12:47(太平洋夏令时)。当时,EBS 在一个可用区内以复制存储集群提供服务,并由区域控制面协调。系统使用高带宽主网络承载常规流量,也有容量较低的复制网络。一次主网络容量调整没有把流量导向另一台主网络设备,而是错误地压到复制网络上。复制网络无法承担这类负载,许多节点因而同时失去有效的主、备连接。
这一区分很重要:操作失误是触发因素,却不能单独解释后续数日的恢复。若分析停在“流量切错了”,就会忽略真正决定严重程度的条件——系统重新连通时,所有受影响节点会怎样寻找副本,空闲容量是否足以承受并发恢复,以及控制面能否把一个退化集群与区域其余部分隔开。
连通恢复为何引发再镜像风暴
网络连接恢复后,节点并非简单回到原状。为了重新满足复制要求,大量卷同时搜索可用空间并启动再镜像。AWS 说明,恢复容量很快耗尽;不够积极的退避和一个低概率竞态又让重复尝试相互放大。保护机制由此形成反馈回路:副本不足引发更多搜索,搜索消耗容量与控制资源,资源紧张又让副本更难完成。
这不是“复制本身有害”的结论。复制仍是数据耐久性的基本控制。问题在于,复制控制若没有界定恢复包络,就可能在共同故障后产生远高于日常负载的需求。容量规划因此不能只覆盖正常写入与单个节点退出,还应覆盖许多节点同时失去副本、同时重连和同时申请新空间的情景。退避也不能只是降低平均请求率,它必须阻止同步重试再次形成浪涌。
局部故障如何触及区域控制面
影响并未完全停留在直接受损的可用区。创建卷的调用长时间不返回,占满了区域 EBS 控制面的线程池,于是该区域其他位置也出现 EBS API 错误和延迟。AWS 后来隔离退化集群并限制请求,才降低这种传播。
这里的责任边界比“可用区相互独立”更具体。数据平面可以按可用区分开,区域控制面仍可能共享线程、队列或调度能力。若退化分区能够无限占用共享资源,架构上的隔离声明就没有变成可执行控制。运营团队需要观察的不只是节点健康,还包括长调用数量、线程池占用、队列年龄、超时来源,以及每个故障域可以消耗的最大共享预算。
恢复是分阶段的,不是一个时刻
AWS 表示,在集群稳定时,受影响可用区约 13% 的 EBS 卷仍处于卡住状态。随后需要增加物理容量、分批恢复副本、处理积压,并对残留卷进行人工处置。服务可达、API 恢复、卷重新挂载、副本完整和数据一致,并不是同一条终点线。
AWS 还报告,受影响可用区内 0.07% 的卷无法恢复到一致状态。公开材料没有给出丢失字节数、记录数、受影响客户总数或总体经济损失。13% 和 0.07% 的指标描述不同阶段、不同结果,但分母都限于受影响可用区内的卷;把它们写成美东区域占比、全 AWS 占比或客户占比都会失真。
因此,恢复通报至少应分开说明四种状态:基础设施是否可达,控制面是否能受理新操作,已有卷是否恢复服务,以及一致性审查是否结束。把第一项的改善称为“全面恢复”,会把仍在承担风险的客户留在统计之外。
RDS 与下游依赖暴露的边界
RDS 使用 EBS 保存数据库和日志。AWS 披露,一个此前未遇到的条件使一部分 Multi-AZ 实例无法自动故障转移,需要人工介入。这表明跨可用区部署并不意味着所有控制面与依赖路径都已独立,也不能被解读为 Multi-AZ 对任何故障都无效。
Heroku 直接报告了广泛的应用中断;同期报道还提到 Reddit、Foursquare、Quora 等公共服务受到影响。这些材料证明共享云依赖能够向下游传导,却不能证明各服务拥有相同故障路径、持续时间、恢复质量或数据结果。事件分析应保留这些差异,避免用知名服务名单代替影响测量。
公布的改进与尚未闭合的证据
AWS 当时宣布的措施包括扩大恢复容量缓冲、更积极的退避、修复竞态、改进超时与负载削减、加强可用区隔离、自动化恢复控制、改善 Multi-AZ 工具,以及更频繁地沟通。这些方向与故障链相对应:容量应对再镜像高峰,退避抑制同步重试,隔离限制控制面传播,工具与沟通则缩短识别和决策延迟。
但“宣布采取”并不等于“已独立验证完成”。本次封闭证据集没有后续实施审计,也不应把 2011 年架构描述为今天的 AWS 现状。若要评估当前保障,需要新的证据:恢复压力测试的规模与通过标准、共享控制面预算、隔离演练、残留不一致卷的关闭流程,以及客户能否看到资源级恢复状态。
资料来源
- AWS 事件说明:https://aws.amazon.com/tw/message/65648/
- Heroku 事后说明:https://www.heroku.com/blog/post_mortem_on_april_21_outage/
- TechCrunch 同期报道:https://techcrunch.com/2011/04/21/amazon-ec2-goes-down-taking-with-it-reddit-foursquare-and-quora-2/
- The Register 恢复与数据一致性报道:https://www.theregister.com/off-prem/2011/04/26/amazon-some-data-wont-be-recovered-after-cloud-outage/388333
- InfoQ 技术分析:https://www.infoq.com/news/2011/04/Amazon-EC2-Outage-Explained/
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
