BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース 人為的ミスにより AWS S3 が US-EAST-1 で停止

人為的ミスにより AWS S3 が US-EAST-1 で停止

原文(投稿日:2017/03/03)へのリンク

手違いによって本来より多くの S3 サーバが停止した。これには2つの重要なサブシステムも含まれていた。S3は不具合を起こし、S3 サービスやこれに依存する他のサービスにも影響は及んだ。復旧にはおよそ4時間が掛かった。

Amazon AWS は滅多に不具合を起こすことがないが、起きたときにはインターネットが異変に気付き、多くのものに直接影響する。それが最近の2月28日 米バージニア州北部の「US-EAST-1」リージョンで起こった AWS S3 の大規模障害事件である。混乱が起きたのは S3 だけでなく、EC2、EFS、API Gateway、Athena、Cloudsearch、MapReduce など、これに依存する多くの AWS サービスが影響を受けた。これらのサービスは機能にエラーが増えていったり、単純にうまく動作しないということが起きた。

4時間に及ぶ障害で、Expedia、GitLab、GroupMe、IFTTT、Medium、Nest、Quora、Slack、The Verge、Trello、Twitch、Wix といった多くがこの不具合によってオフラインになったり、深刻な影響を受けたと報告された。Amazon の Alexa でさえ動作に問題が起き、AWS ステータスダッシュボードも2時間更新されなかった。Amazon は Twitter でこの問題について情報を発信し、ステータスページでは手動で編集したテンポラリバナーを上げていた。

Amazonは事後分析を発表した。Amazon チームは S3 の決済システムに起きた問題をデバッグしていたところで、あるメンバーが S3 の決済サブシステムを構成する数台のサーバを停止するコマンドを打った。このコマンドにミスがあり、2つの他のサブシステムで重要な役割を果たす2つのサブシステムを含む S3 サーバの多数が停止した。1つはGET、PUT、LIST、DELETE コマンドに影響を与える、リージョンの S3 全体のインデックスサブシステムである。もう1つは S3 の配置のためのもので、新しいオブジェクトのスペース割り当てを決めていた。これら2つのサブシステムが停止したため、S3 は多くの顧客に影響を及ぼす非常に多くの機能障害に直面することとなった。

AWS が各サブシステムの不具合に備えて迅速な復旧を行えるよう対策を整えていたが、今回のケースでは何年も再起動を行っておらず、インデックスが巨大化していたため、サブシステムの再起動にかなり長い時間を要した。最終的には復旧したものの、予想以上に遅くなった。Amazon はインデックスサブシステムを分割することを今年中に計画しており、再起動が速くなるよう、インデックスをより小さい単位にしようとしている。今後の障害に対して準備しておけるよう、すぐに着手するだろう。また、ツールを変更して1つのコマンドで停止するサーバの数を制限し、サブシステムが一挙に停止することを防いでいる。S3に依存していたダッシュボードも複数リージョンに分散し、あるリージョンで障害が起きても稼働するようにした。

2011年に Amazon は別の障害を米国東部で起こしていたが、それには4日間掛かっていた。昔と今、学ばれ、活かされるべき基本的な教訓は、特定のリージョンのみに依存しないシステムを作り、ある地域で障害が起こっても切り替えられるようにしておくことだ。Netflix はそのような対策を整備しており、他の企業もそうできるはずだ。しかしそれはクラウドホスティング費用や、できるだけそれを低くおさえようとする企業に影響する。Amazon AWS は一般に信頼性があると考えられているが、サービスは時折障害を起こす。そしてこれはどのクラウドプロバイダにも起こることなのである。

 
 

Rate this Article

Relevance
Style
 
 

この記事に星をつける

おすすめ度
スタイル

BT