データセンターに落雷を受けてデータ消失したGoogle Comput Engine、詳細な報告公開。原因はバックアップバッテリーの不備など
ヨーロッパにあるGoogleデータセンターが落雷を受け、ごく一部ではあるものの顧客がクラウドに保存していたデータを失ったことが報告されています。
これはどのようなインシデントだったのか。詳細が「Google Compute Engine Incident #15056」で報告されていますので、Publickeyが翻訳したものを引用しつつ紹介しましょう。
落雷により、全体の0.000001%以下のデータを消失
本インシデントの最終報告は8月18日付けの「Google Compute Engine Incident #15056」で行われています。
それによると、落雷による一時的な電力の消失により、ヨーロッパ西1bゾーン全体の物理容量の0.000001%以下(一千万分の一以下)のデータが失われたとのことです。
2015年8月13日木曜日から8月17日月曜日まで、ヨーロッパ西1bゾーンにおけるGoogle Compute Engine(GCE)のパーシステントディスクのごく一部にエラーが発生。エラーの発生したディスクは散発的にI/OエラーをGCEインスタンスに返し、またスナップショット作成操作などの典型的な運用操作でのエラーも発生した。ごくまれなケースにおいて(ヨ-ロッパ西1bの物理容量の0.000001%以下)パーマネントなデータ消失も発生した。
バッテリーバックアップの一部に不備が
Googleはこの問題の経緯と原因を次のように分析しています。まず、4つの雷がデータセンターの電力系統に落ち、電力が消失。
PDT(太平洋夏時間)2015年8月13日木曜日9時19分、4つの連続した雷が、ヨーロッパデータセンターに電源を供給している電力系統に落ちたことで、ヨーロッパ西1bゾーン内でGCEインスタンスのディスクをホストしているストレージシステムの電力が一時的に失なわれた。
その際に、バッテリーバックアップの一部に不備があったとのこと。
自動補助システムがすぐに電力を補完し、ストレージシステムはバッテリーバックアップされるように設計されていたのだが、最新の書き込みとしてストレージに保存されたデータの一部は、バッテリー切れが何度も起きる、もしくはバッテリー切れのままの期間が続いたなどの要因で電力喪失の影響を受けやすい場所にあった。
マニュアル作業による復旧作業をしたものの、復旧できないごく一部のデータが発生。
通常の状態に戻すためにマニュアル操作が必要だったものの、ほとんどすべてのケースでデータはストレージへの書き込みが確定(コミット)された。しかしごく一部のケースで最新のデータ書き込みについては復旧できず、それがパーシステントディスクにおけるデータ消失につながった。
可用性を最大化するには複数のゾーンを
Googleはこの障害の原因分析などを通じて得た対策を施していくとのことです。それに加えて、利用者には複数のゾーンによる対策を勧めています。
この障害は全面的にGoogleの責任である。けれど、この機会にお客様に強調したい。それは、ゾーン内のGCEのインスタンスとパーシステントディスクは単一のGoogleデータセンター内にあり、それゆえにデータセンタースケールの障害には弱いという点だ。
具体的には、次のような方法です。
最大の耐久性を得るには、GCEスナップショットとGoogle Cloud Storageを、耐障害性が高くかつ地理分散レプリケーションされたデータレポジトリとして使われることをお勧めする。
関連記事
あわせて読みたい
Go 1.5が登場、Androidに続いてiOSアプリも開発可能。ガベージコレクションも大幅に改善
≪前の記事
イーサネット接続とキーバリューストア内蔵のディスクドライブがオープン化へ。「Kinetic Open Storage Project」をLinux Foundationが開始