<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Aws | Feisky</title><link>https://feisky.xyz/tags/aws/</link><description>极客时间专栏作者，专注于 Kubernetes、AI Infra、AI Agent 领域的深度技术分享，让 AI 成为你的第二大脑</description><generator>Hugo 0.165.0</generator><language>zh-CN</language><managingEditor>Pengfei Ni</managingEditor><webMaster>Pengfei Ni</webMaster><lastBuildDate>Fri, 14 Aug 2026 12:39:05 +0000</lastBuildDate><atom:link href="https://feisky.xyz/tags/aws/index.xml" rel="self" type="application/rss+xml"/><item><title>AWS S3故障回顾和总结</title><link>https://feisky.xyz/posts/2017-03-03-aws-s3%E6%95%85%E9%9A%9C%E5%9B%9E%E9%A1%BE%E5%92%8C%E6%80%BB%E7%BB%93/</link><pubDate>Fri, 03 Mar 2017 22:27:50 +0000</pubDate><dc:creator>Pengfei Ni</dc:creator><category>aws</category><guid>https://feisky.xyz/posts/2017-03-03-aws-s3%E6%95%85%E9%9A%9C%E5%9B%9E%E9%A1%BE%E5%92%8C%E6%80%BB%E7%BB%93/</guid><description>&lt;h2 id="s3故障回顾"&gt;S3故障回顾&lt;/h2&gt;
&lt;p&gt;2月28日，AWS工程师在排查Northern Virginia (US-EAST-1) Region的一个S3计费问题时，因敲错了一条playbook的参数而误删了大量的s3控制服务引发了4小时的故障。这个误操作影响了两个S3的核心系统：&lt;/p&gt;</description><content:encoded>&lt;![CDATA[<h2 id="s3故障回顾">S3故障回顾</h2><p>2月28日，AWS工程师在排查Northern Virginia (US-EAST-1) Region的一个S3计费问题时，因敲错了一条playbook的参数而误删了大量的s3控制服务引发了4小时的故障。这个误操作影响了两个S3的核心系统：</p><ul><li>Index系统，管理S3对象的元数据和位置，主要处理GET、LIST、PUT、DELETE请求</li><li>Placement系统，管理新存储的分配和，主要处理PUT请求</li></ul><p>由于S3的故障，一大批依赖于S3的AWS服务也发生故障（如EC2、EBS和Lambda等），进而也影响了近半的北美互联网服务。不过，这次故障只是影响了用户的访问，并没有丢失数据（可靠性还是保障的，S3有7个9的可靠性和4个9的可用性）。</p><p>虽然aws s3具有优秀的故障设计，在故障发生时一般会自动恢复。但是，由于s3极好的稳定性，Index和Placement系统已经多年未重启过了，这次重启重建index的时间超过预期，并且placement依赖于index系统，导致系统恢复花费了较长的时间。</p><h2 id="改进措施">改进措施</h2><ul><li>完善工具，保证即便有人操作错误也不会引发故障（对事不对人）</li><li>让删除操作缓慢些（以便有时间反悔）</li><li>加上一个最小资源数限制的SafeGuard</li><li>拆分现有的服务为更小单元（factoring services into cells），减小服务故障影响面，缩短服务的恢复时间</li></ul><h2 id="教训">教训</h2><ul><li>高可用很难，不仅包括系统架构的高可用，更包括运维的高可用</li><li>跨Region和跨Availability Zone的重要性（比如Amazon和Netflix的服务并未受影响，因为它们在设计之初就处理了Region失效的问题），可以考虑的方案包括<ul><li>跨Region的数据备份和恢复</li><li>跨Region的主从服务，包括Warm standby和Hot standby</li><li>跨Region的主主服务</li></ul></li><li>故障恢复的重要性，充分保证Recovery Time Objective (RTO) and Recovery Point Objective (RPO)</li><li>自动化，人总是会犯错的，应该用技术而不是管理来解决问题（敏感操作放慢进程，以便有时间反悔）</li><li>故障和恢复演练，比如Google SRE指出他们有一个定期的服务停机计划，以验证系统是否真的符合预期</li></ul><p><img src="/images/pinterest-ha.jpg" alt="" loading="lazy" decoding="async"/></p><p><em>一个高可用系统的参考架构，图片来自<a href="https://learningawsblog.com/2017/03/02/how-should-we-think-about-the-aws-outage/">The Learning AWS Blog</a></em></p><h2 id="参考链接">参考链接</h2><ul><li><a href="https://aws.amazon.com/cn/message/41926/">Summary of the Amazon S3 Service Disruption in the Northern Virginia (US-EAST-1) Region</a></li><li><a href="https://learningawsblog.com/2017/03/02/how-should-we-think-about-the-aws-outage/">How should we think about the aws outage</a></li><li><a href="https://news.ycombinator.com/item?id=13775667">Hacker News讨论</a></li><li><a href="http://coolshell.cn/articles/17737.html">AWS 的 S3 故障回顾和思考</a></li></ul>
]]></content:encoded><dc:extent>2 min read</dc:extent></item></channel></rss>