見出し画像

大規模障害が発生したら?

 あるべき体制や対応フローなど、教科書的なことはここでは書きません。下記にあるようなよい本が出ています。「考え方」について書いてみたいと思います。

管理しないとこうなる

 大規模な事象でありがちなのが、こんなケースですね。

・事象全体を把握できている人がいない
・サービスや業務影響を誰も知らない
・ユーザ告知や対応が追いつかずにヒートアップする
・問題に即した対応ができていない
・解決せず時間だけ経過

 とくに、スーパーマンみたいな人がすべてを担っているタイプの情シスだと、だれも何も言わなくても全体をコントロールしようとしてくれるのでほったらかしでも報告が上がってきますが、そういったことを「当たり前」として、上司が「何かあってもそれぞれで対応すればいいじゃん」といった考え方でげんばに任せていると、キーマンが抜けたり昇進して現場から抜けたときに上記のような状況に陥ります。
 では、どうするのがよいのでしょう?

複合的な事象が発生したら?

 以前自社で複合的な事象が同時多発したときの事象を例に書いてみたいと思います。

このときには、メールサーバを廃止(正確には縮小)してGsuiteに切り替えたんですけど、この事象の設定誤りと、サーバ間のデータ受け渡しがなぜかうまくいっておらずデータが消えたという問題、上記の対応で行ったプログラム改修の不備と、3点セットで問題が発生し、特定の機能で大量のエラーメールが発報されるわ、日次処理のデータが消えたり、正しく処理されずに問い合わせが頻発するわで大混乱。
 当時私は別機能の担当をしていたので「大変そうだな」くらいに思っていたんですが、夕方「かなり大規模な問題っぽいです。助けてください」と保守ベンダの近しい人が飛び込んできて、インフラチームの関係者とアプリ側の関係者を集めて夜20時より緊急Meetingを行いました。

起きていることは何ですか?そして、困っていることは何でしょうか?

 関係者はみな、ヒートアップしていました。集まってすぐ「この疎通が取れていません!」「ここまではわかっているけれど、これが原因なのかも」「とりあえずこれを対応しないと!」「そこまで調べられてません!」とてんでんばらばらに話し始めました。これでは話がすすみませんので、いったん状況を時系列にして、発生している事象と影響、課題をホワイトボードに書き出すことにしました。大判のホワイトボードが埋まってしまいましたが、整理すると大きく3つの系統で事象が発生しているであろうことがわかりました。

 次に行ったのは、優先順位付けです。整理するとこうなりました。

1)直近で大規模な問題が起きている事象については原因調査には時間がかかるがSE作業で対応が取れる。>>保守ベンダだけで考えられる
2)単発で発生している事象があり、その調査も行っているが、それは運用で一時対応がすでにできている事象であった。>>後回しにできる
3)ちょっと調べればすぐに原因がわかりそうな事象があり、それが後回しになっているが、このままだと翌日の日次処理に影響をすることがわかった
>>インフラ側と機能担当者のリソースはこちらに集中すべき

 ここまで整理できたら、話は早いです。
・1)の道筋をつけて運用者に渡す
・3)の道筋をつける
・2)は明日以降にしよう
ということがまとまりました。会議が終了したのは21時。それぞれの直近の時間軸をまとめ、社内の関係者に連絡して対応を進め、翌日の日次処理には間に合うように対応ができたのです。

管理者の仕事は交通整理と
「やらなくてもよい」ことを決めることである

 今まで、いろいろな事象に立ち会ってきましたが、解決に時間がかかっているケースの多くは、交通整理ができていなかったり、本当は後回しにしたい作業をさせられているといった、整理と優先順位付けに起因するものが多いように思います。そこだけ整理してあげれば、あとはリソースと時間の問題に落ちるので、あとは管理者は、報告と、時間通りに進んでいるかだけ気を付けておけばよいのです。

 「具体のことは現場に任せている」という管理者の言葉はよく聞きますが、一定は知っておかないと、上記のような整理や優先順位付けはできません。また知らないと、判断しても現場が言うこと聞かなかったりしますので、難しいところだと思います。

いいなと思ったら応援しよう!