「システムはなぜダウンするのか」…A.そこにシステムがあるから…

本屋をぶらついていた時に、こんな本が目に止まりまして、買ってきて読んでみました。

システムはなぜダウンするのか

システムはなぜダウンするのか

自分自身、以前、大規模システム向け運用・保守サービスの仕事をしていた事もあって、タイトルが目に付いて、引かれてしまいました…。

内容はまえがき(以下、一部抜粋)に書かれているように、大規模システムダウンの事例集な感じですね。

そこで本書では、過去数年間にわたって、実際に発生したダウンの事例のなかから、日系コンピュータ誌をはじめ、雑誌や新聞などで原因が詳しく報じられたケースを取り上げ、どのような原因がきっかけでどんな事象が起きたのかを技術的な観点で体系的にまとめました。

最初は「あぁ、あるある。(笑)」ぐらいの軽い気持ちで読み始めていたんですが、次第に「あぁ、あり過ぎて困る。(^^;ゞ」となって、徐々に「あぁ、あったあった…。」になって、最後は「あぁ…。(何かが頭をよぎっている…。)」という感じで、身につまされる思いで読み切りました。

記事タイトルは、本書タイトルに対してちょっと悪ノリで付けてみたんですが…あながち間違ってもいないと思っていて、どんなに対応をしているつもりでも、絶対ダウンしないとは言い切れないんですよね。

システム障害は0にする事はできませんが、"できるだけ0に近付ける努力"と"障害が起きた時の備え"をしておく事が被害を最小限に食い止める為の鍵なんだと思います。

そういう意味では、本書は、"どんな障害が起き得るのか"、"どういう事に気を付けておくべきなのか"という事を予習するのにちょうどいいかもしれませんね。


…と、この書評記事を書こうと思っていた矢先に、人力検索で以下のような質問を発見。
一定規模以上のWebサイトを運営しているエンジニアの方、業務時間外の障害対応ってどういう風にやっていますか? ルールとか体制とかを中心に教えてほしいです。 ちなみにぼくの会社では、監視ツールや自作監視スクリプトでアラートをエンジニア社員全員に送って、誰かが対応することになっています。(たまに誰も対応やレスをしなくて上司に怒られます) これはぼくら社員にとって正直ストレスになるので、なにかよいルールや体制を上司に提案したいなと考えています。 ぜひみなさんの会社のやり方を教えてください。 よろしくお願いします。
システム規模の大小に関わらず、運用・保守フェーズの苦労・悩みって多いんでしょうね…。

ちなみに、私が所属していた保守チームの場合、

  • 自チームも含めた全チーム共通の24時間一次受付窓口あり。
  • 自分のチーム内は3人で1日ずつ対応当番。週末は週替わりで当番制。
  • 当番は優先順位付きで、1番の人が電話に出られなかったら2番→3番→1番…と誰かが出るまで電話が掛けられる。
  • 当番表は月毎に各自の予定を鑑みて作成。急な用事の場合は各自同意の元に当番交代で対応。

という感じで回していました。リンクで挙げた質問の4番の回答者さんと似たような体制ですね。


システム障害に対する対応はコンピュータが対象とは言え、結局のところ人間に関わる部分が非常に多くを占めていて、対応する人に掛かる負担も非常に大きなものです。

運用・保守を軽視してコストをケチっていると、「専用ツールが24時間常時監視、障害が発生したらすぐに関係者に連絡できます!…が、通報が飛んだ先で対応する人がいません。」なんて笑い話にもならない事態になっちゃうかもしれませんよ…。( ̄ー ̄)