Meta(旧Facebook)のサービス停止に学ぶ“3つの戒め” 自問すべき点はこれ:甚大なソーシャルメディア障害【後編】
Meta(旧Facebook)のシステム障害は深刻な事態を招いた。同様の事態に陥らないために、企業はこの事例から教訓として何を学ぶべきなのか。
2021年10月に発生したMeta(旧Facebook)の大規模障害では、エンジニアの設定ミスが連鎖的に複数のトラブルを招いた。どのように連鎖したのかは前編「Meta(旧Facebook)の最悪な障害はなぜ起きた? 悲惨な連鎖的エラーの裏側」で紹介している。この深刻なトラブル事例から、企業は何を学ぶべきだろうか。専門家のアドバイスを基にして、企業がMetaのシステム障害から学べる3つの対策を紹介する。
1.最悪の事態を想定する
大規模障害を避ける上では「創造的な悲観主義」になって、さまざまな障害の可能性を探っておくことが重要だ。ラーナー氏は企業のIT担当者に、1カ所に障害が発生するとシステム全体の停止を引き起こす「単一障害点」をネットワーク内で探すことを推奨する。その上で、単一障害点がどのように連鎖的な障害を引き起こす可能性があるかを検討することが欠かせないという。
例えばネットワークのトラブルシューティングにおいて特定の「SIEM」(Security Information and Event Management:セキュリティ情報イベント管理)に依存している場合、そのSIEMが利用できなくなったら何か起きるのかを企業は考えなければならない。障害点としては、認証機能やMetaの大規模障害のようなDNS(名前解決)サーバもある。
2.最悪の事態に備えた対策を練る
企業は定期的に机上訓練を実施することが欠かせない。Metaのサービスに発生したような連鎖的なネットワーク障害を想定して、対策をシミュレーションすべきだという点で専門家の意見は一致する。
「Metaの大規模障害から言えることは、企業は自分たちのインフラが使えなくなったら何が起きるのかを考慮した障害復旧を目指さなければならないということだ」と、コンサルティング会社NetCraftsmenのプリンシパルアーキテクト、テリー・スラテリー氏は指摘する。
スラテリー氏は、障害発生時の対策はアウトオブバンドのネットワークアクセスに懸かっていると話す。アウトオブバンドのネットワークアクセスとは、DNSサーバなどの単一障害点を介さずにシステムを管理可能なネットワークアクセスを指す。Metaは、2021年10月の大規模障害でアウトオブバンドのネットワークが停止したと説明しているものの、その原因については触れていない。
3.最悪の事態に備えた計画を検証する
障害時の復旧計画をシミュレーションするだけではなく、一歩進んで障害発生のテストを実施することも欠かせない。このテストにおいては、Netflixの障害テストツール「Chaos Monkey」や、サイバーセキュリティのペネトレーションテストツールと同様に、意図的に問題を発生させる。ネットワークにおいては、ルーターの停止など接続を切断することで、アーキテクチャの脆弱(ぜいじゃく)性を特定したり、復旧プロセスが正常に機能するかどうかを診断したりする。
スラテリー氏は「ほとんどの企業は障害テストを嫌い、回避している」と言う。訓練には事前の準備が必要になるし、訓練が本当の障害につながる懸念もあるからだ。だが実は、この点に障害テストの価値があるという。「自分で発生させた障害に対処できなければ、本当の緊急事態で対処するのは困難だ」(同氏)
ラーナー氏も似た見方をしている。「企業は長期にわたって障害を発生させず、高い可用性を提供することを目指してきたが、この戦略は誤った方向に行き着いた」と同氏は指摘する。平穏な期間は、企業が抱える固有の不安定性やもろさを隠してしまうからだ。そのためいったん問題が発生すると、表面していなかったさまざまな問題を連鎖的に発生するリスクがある。「企業が直面する深刻な障害のほとんどは、連鎖的なものだ」(同氏)
TechTarget発 先取りITトレンド
米国TechTargetの豊富な記事の中から、最新技術解説や注目分野の製品比較、海外企業のIT製品導入事例などを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.