如习惯性在主要的服务中断后,亚马逊网络服务今天发布了一个验尸,解释了为什么其简单的存储服务经历了升高的错误率,导致互联网上的许多网站减慢或停止在周二停止工作。
+更多在网络世界有个足球雷竞技app:从AWS S3中断的5个课程以及如何从下一个课程中绝缘|供应商发现,前100名零售网站的一半在S3中断时有缓慢的负载时间+
“太长,没有读”(TL; DR)版本是,在S3团队上工作的工程师试图调试导致S3的计费系统缓慢的问题。在这样做时,脱机支持S3子系统的少数服务器。偶然,比预期的偏离线路更大数量的服务器。这导致其他子系统重新启动,这使得S3 API在短时间内不可用。其他AWS产品依赖于S3 API,如虚拟机,块存储和Lambda也受到影响。
AWS已经安装了保障措施,以确保不能立即脱机,并且它将其产品管理系统分为较小的碎片以减少任何故障的爆炸半径。AWS尚未说它是否会向客户退还任何付款。
查找到博客帖子的链接这里,或查看下面的报告的全文。
弗吉尼亚州北部(US-East-1)地区的亚马逊S3服务中断摘要
我们想在2月28日上午,为您提供有关弗吉尼亚州北部(US-East-1)地区的服务中断的其他信息。亚马逊简单存储服务(S3)团队正在调试一个问题,导致S3计费系统进展比预期更慢。9:37 AM PST,使用已建立的PlayBook的授权的S3团队成员执行命令,该命令旨在删除S3计费过程中使用的S3子系统之一的少量服务器。遗憾的是,命令的一个输入中的一个输入不正确,并且比预期删除了更大的服务器。无意中删除的服务器支持另外两个S3子系统。其中一个子系统,索引子系统,管理区域中所有S3对象的元数据和位置信息。此子系统是服务所有Get,List,Put和Delete请求的必要条件。第二个子系统,放置子系统,管理新存储的分配,并要求索引子系统正常运行以正确操作。在Put请求期间使用Placement子系统为新对象分配存储。删除大量容量导致每个系统需要完全重启。 While these subsystems were being restarted, S3 was unable to service requests. Other AWS services in the US-EAST-1 Region that rely on S3 for storage, including the S3 console, Amazon Elastic Compute Cloud (EC2) new instance launches, Amazon Elastic Block Store (EBS) volumes (when data was needed from a S3 snapshot), and AWS Lambda were also impacted while the S3 APIs were unavailable.
S3子系统旨在支持拆除或失效,具有很少或没有客户的影响。我们假设事情偶尔会破坏我们的系统,我们依赖于将能力移除和替换为我们的核心操作流程之一。虽然这是我们依赖于S3的推出以来维护我们的系统的操作,但我们未在我们的较大区域中完全重新启动索引子系统或放置子系统多年。S3在过去几年中经历了大量增长,并重新启动这些服务并运行必要的安全检查以验证元数据的完整性的过程花费的时间超过预期。索引子系统是第一个需要重新启动的受影响的子系统中的第一个。PM PST 12:26 PST,索引子系统已激活足够的容量以开始服务S3 Get,List和删除请求。PM PST 1:18,索引子系统已完全恢复并获取,列表和删除API正常运行。S3 PUT API还需要放置子系统。当索引子系统在PST 1:54 PM下的索引子系统功能和完成恢复时,Placement子系统开始恢复。此时,S3正常运行。 Other AWS services that were impacted by this event began recovering. Some of these services had accumulated a backlog of work during the S3 disruption and required additional time to fully recover.
我们由于此操作事件而进行了几种变化。虽然删除容量是一个关键的操作实践,但在这种情况下,使用的工具允许太快地删除了太多的容量。我们已修改此工具更慢地删除容量,并添加保障措施,以防止在其最小所需容量级别的任何子系统中删除的容量。这将防止在将来触发类似事件的错误输入。我们还审核我们的其他操作工具,以确保我们具有类似的安全检查。我们还将更改以改善关键S3子系统的恢复时间。我们采用多种技术来允许我们的服务快速从任何故障恢复。其中一个最重要的涉及将服务破坏到我们呼叫细胞的小分区。通过将服务分解为细胞,工程团队可以评估和彻底测试甚至最大的服务或子系统的恢复过程。由于S3缩放,该团队已经完成了相当的工作来重新推荐将服务的部分重构成较小的单元格,以减少爆炸半径并提高恢复。 During this event, the recovery time of the index subsystem still took longer than we expected. The S3 team had planned further partitioning of the index subsystem later this year. We are reprioritizing that work to begin immediately.
从此活动的开头直到PST,我们无法更新AWS服务健康仪表板(SHD)上的个人服务状态,因为SHD管理控制台对Amazon S3有所了。相反,我们使用AWS Twitter Feed(@awscloud)和SHD横幅文本来传达状态,直到我们能够更新SHD上的单个服务状态。我们了解,SHD在运营活动期间对客户提供了重要的可见性,我们已更改SHD管理控制台以跨多个AWS地区运行。
最后,我们想为对我们客户造成的这一活动的影响道歉。虽然我们为您的长途记录提供了亚马逊S3,但我们知道这项服务对客户,应用程序和最终用户以及其业务的重要性。我们将尽我们所能从此次活动中学习,并使用它来提高我们的可用性。