障害のパブリックポストモーテム
人生の多くのことには、一般的に受け入れられた「保守的な」アプローチと、少なくとも一般的な見解によれば避けるべき「リスクの高い」アプローチがあります。例えば投資では、政府債や地方債の購入は低リスク、株式(企業株)への投資は高リスクと見なされることが多いですが、統計的な数字はこれが逆であることを示しています。ほとんどの人は債券で損をし、株式で利益を得ます。「常識」は検証されると、純粋に感情に基づいており、その感情はまた誤解に基づいていることがわかります。投資において最もリスクの高いことは、感情を投資戦略の原動力にすることです。
同様に、ビジネスリスク評価では、一般的なアプローチは危険に対して感情的に反応することであり、これがパニック反応を引き起こし、人々が知覚されるリスクを過剰に補償する強い傾向をもたらします。私たちはこれを、ITインフラが収益にほとんど貢献しておらず、短期的な運用にはあまり重要でない小規模企業において、部分的にしか認識されておらず非常に不明確に表現されたリスクから保護するために多額のお金を費やすという形で見ます。これはしばしば非常に劇的になり、緩和プロセスが知的にではなく感情的に処理されることが多く、実際にはリスクを減らすのではなく増やす悪いシステム設計を実装している企業を定期的に見かけます。それでいて多額の資金を費やした上で、リスクが主にほぼ想像上のものだったため、層を重ねた誤解に基づいてプロジェクトを成功と呼ぶことがあります。想像上のリスク、想像上のリスク緩和、想像上の成功です。
最近、私は小規模ビジネスの全面的な災害に関わる機会がありました。その災害は「最悪のシナリオ」に近いものでした。完全にそうとは言えませんが、非常に近いものでした。災害発生時の感情的な反応は強く、災害が本格化すると、ほぼ全員が災害計画に欠陥があり、問題を避けられるべきだったと繰り返し述べることが一般的でした。これは災害状況では非常に一般的です。人間は常に非難する誰かがいるべきだと感じ、正しい仕事をすれば全リスクがゼロになるべきだと感じますが、これは完全に間違っています。
ありがたいことに、私たちは、真の災害の後には必ずすべきように、何が悪かったか、何が正しかったか、失敗したプロセスと意思決定をどのように修正できるか、そして私たちを守ったものをどのように維持できるかを確認するための完全なポストモーテムを実施しました。通常、大きなシステムイベントが発生したとき、私はそれを公に話すことができません。しかし時々、できることがあります。災害に対して、いかなる災害にも反応し、「もし〜だったら…」と考えることは非常に一般的です。しかし、あなたは災害を検討する必要があります。プロセスと私たち自身について学ぶべきことがたくさんあります。
まず、背景について。エンタープライズデータセンターで稼働している重要なサーバーが、複数の企業にとって非常に重要な主要ワークロードをいくつか保持しています。4年少し前のもので、長年にわたって独立して稼働しています。古いサーバーは寿命が近づくにつれて常に少し心配になります。4年はエンタープライズクラスのサーバーとしては決して寿命ではありませんが、若いとも言えません。
これはフェールオーバーメカニズムなしの単一サーバーでした。バックアップは同じデータセンター内のエンタープライズバックアップアプライアンスに外部で処理されていました。非常にシンプルなシステム設計です。
このような状況には計画と運用において多くの複雑さがあるため、内部の詳細はすべては含めません。それらは内部ポストモーテムプロセスに任せるのが最善です。
サーバーが故障したとき、それは壊滅的な故障でした。故障は非常に完全で、データセンターのオンサイトテクニシャンの助けを借りてもリモートで診断することができませんでした。サーバーベンダーでさえ問題を診断できませんでした。これにより私たちは困難な状況に置かれました。ハードウェアを確実に修理できない場合、壊れたサーバーをどう対処するか。ドライブを交換できる、電源ユニットを交換できる、マザーボードを交換できる。何が修正策になるかは誰にも分かりませんでした。
最終的に、サーバーとバックアップシステムの両方を、直接トリアージし最大限のリソースで対応できるメインオフィスに移送するという決定がなされました。最終的にシステムは修理することができ、データは失われませんでした。バックアップへの移行を控える決定は、システムの可用性よりもデータ回復の方が重要と判断されたためです。
すべてが終わったとき、実際のデータ損失なしに想像できる中で最も完全な災害の一つとなっていました。障害は何日も続き、多くの予備機器、人件費、修復試みが費やされました。プロセスは疲弊するものでしたが、完了したときシステムは正常に復旧しました。
長い障害と、物事が診断され修復試みがなされる中でのカオスの感覚が、全体的な失敗感につながりました。人々はそれを言い始め、それが人々がそれを信じることにつながります。緊急対応状態では、特に睡眠がほとんど取れない場合に、過度に感情的になることは非常に容易です。
しかし、最終結果を振り返ってみると、ほぼ全員が驚いたことを発見しました。トリアージ作業と初期リスク計画は成功していたのです。
トリアージ中に起こる混乱は、実際よりもはるかに物事を悪く感じさせることが多いです。しかし、私たちのトリアージ対応は素晴らしかったのです。トリアージは魔法を意味しておらず、発見フェーズと対応フェーズがあります。イベントの順序を分析してタイムラインに並べたとき、私たちは非常にうまく行動したため、時間を短縮できる場所がほとんどなかったことがわかりました。良い診断を行い、適切なタイミングで適切な関係者を巻き込み、可能な限り早くロジスティクスに部品を動かし、騒々しく無駄な時間に見えたことのほとんどは実際に「フィラータイム」でした。修復に必要な部品を待っている間に、追加のオプションが存在するか、または間違いが犯されたかを判断しようとしていたのです。これにより物事は実際よりもはるかに悪く感じられましたが、これらすべては取るべき正しい一連の行動でした。
トリアージと復旧の観点から、障害が最終的に何日もかかったにもかかわらず、プロセスは完璧に進みました。災害が発生し、それが信じられないほどの範囲で発生した後、復旧は実際には信じられないほどスムーズに進みました。完全に完璧なものはありませんが、非常にうまくいきました。機械は意図した通りに機能したのです。
はるかに驚くべき部分は、災害の影響を見たことでした。これを見る方法は二つあります。一つはより賢明な方法、「後知恵なし」のアプローチです。ここでは災害、災害の影響コスト、緩和コストを見て、災害が発生する可能性を適用し、正しい計画決定がなされたかどうかを判断します。リスク要因は常に曖昧な数値であるため、計算は困難ですが、通常は計画がどれほど良かったかを知るのに十分なほど正確に得ることができます。二番目の方法は完全な後知恵のアプローチです。この災害が発生することを知っていたら、それを防ぐために何をしていたかというものです。リスク要因を取り除いて生の数値で災害コストを見ることは明らかに完全に不公平です。なぜなら、何が悪くなるかを知ることができず、その一つの可能性のためだけに計画を立てたり、実際に起こるかどうかわからないことに無制限のお金を費やしたりすることはできないからです。企業はしばしば後者の計算を使って、完璧な先見の明を持っていなかったとして計画者を非難するという間違いを犯します。
この場合、私たちは最初から正しいギャンブルをしたとかなり確信していました。システムはほぼ10年間ダウンタイムゼロで稼働していました。全体的なシステムコストは低く、トリアージコストは中程度で、イベントは非常にまれなものでした。リスク要因を考慮すると、良い計画をしていたことは一般的に誰も驚きませんでした。
驚いたのは、リスク要因なしで計算を実行したとき、たとえシステムが失敗し長期間の障害が発生することを知っていたとしても、私たちは同じ決定をしていたということです!これは全く衝撃的でした。長期障害のコストは、実際には機能的なリスク緩和システムを構築するために必要な機器、ホスティング、人件費よりも実際に低かったのです。この場合、本番中だったサーバーと同じデータセンターに完全に冗長なサーバーを持つことになっていたでしょう。実際、この長期障害を受け入れることによるコスト削減は約1万ドルに達していました!
これは障害が壊滅的に悪く、予測が難しく、迅速に修復できず、それでも長期的には大幅なコスト削減をもたらしたという極端なケースであることが判明しましたが、教訓は重要です。どんな災害にも多くの感情的な重荷が伴います。適切なポストモーテム分析を行わず、意思決定から感情的な反応を取り除くよう努めなければ、計画が実際にうまくいっていたときでさえ、大規模な財務的損失に飛びついたり、誤った非難をしたりすることがよくあります。多くの企業は、この災害を見て、同じ起こりにくいイベントの再発を防ぐために大幅に過剰支出することで対応していたでしょう。そのイベントが再び発生したとしてもそうすることが資金の無駄だと示す数学が目の前にあったとしても!
この障害から学ぶべき他の教訓もありました。コミュニケーションが理想的でなかったところ、適切な人々が常に適切な意思決定の立場にいなかったところ、顧客とのコミュニケーションが望ましいものでなかったところ、顧客が変更を適切に通知していなかったことなどを学びました。しかし概して、教訓は私たちが正しく計画し、トリアージ作業が正しく機能し、「保守的な」アプローチと思われていたものと比較して顧客数千ドルを節約し、良いポストモーテムを行うことで、彼らと私たちが過剰反応して良い決定を将来の悪い決定に変えることを防いだというものでした。ポストモーテムなしでは、私たちは悪かったと考えて良いプロセスを変えていた可能性が非常に高かったでしょう。
あなた、読者の方に伝えたいポストモーテムからのテイクアウェイの教訓は、ポストモーテムはどんな災害においても重要なステップであり、従来の保守的思考はしばしば非常にリスクが高く、リスクへの感情的な反応はしばしば、それが保護しようとする技術的なものよりも大きな財務的災害を引き起こすということです。