2011年3月11日という日を忘れない。自然がこれほどにも残酷なものだと思い知らされた日だ。ほんの数分前まで普通に生活していた何万もの人が、一瞬にして命を奪われた。東北の太平洋側は遠い昔から繰り返し津波の被害を経験し、万全な備えをしていたにもかかわらず大津波はそれを打ち砕いた。さらに、津波によって冷却機能を奪われた原子力発電所は日本だけでなく、世界を大きな不安に陥れている。

 この震災の報道の中でよく耳にし、眼にしたのが「想定外」という言葉だ。そのたびに納得のいかない思いがした。津波対策や原発の安全対策という人の命にかかわることで、想定外などという言い訳がましい言葉が許されるのか。

 次元は違うが我々の設計するネットワークでさえ、どんなに予測の難しい原因でトラブルが起こってもお客様に「想定外の原因でした」とは言えない。事故やトラブルを起こしてしまったら、「想定不足」しかあり得ないのだ。

 では、想定不足を防ぐにはどうすればいいのだろう。

「最悪」を避ける設計

 企業ネットワークの設計においては、機器や回線の故障、停電、災害などのリスクを想定し、それらに対して機器などのバックアップ、複数ルートの確保、バックアップセンター、などの対策を検討し、設計に反映する。

 リスクをどこまで想定すべきか、というのは簡単な問題ではない。筆者が最近設計した金融機関のネットワークでは「最悪」を避ける、という考え方をとった。

 このネットワークの基本設計で「起こりうる最悪のトラブルは何だろう」と考えた。回線は複数の通信事業者の回線を使って2ルート化し、バックアップセンターも用意されている。機器も全拠点で2重化する。万全な安全設計をしている中で筆者が「最悪のトラブル」と想定したのは、データセンターの中枢部分で使っているルーターの全面ダウンだ。

 中枢のルーターはフォールトトレラントな製品を採用しており、通信制御モジュール、回線収容モジュール、電源モジュールなど、すべての部分が装置内で2重化されていて、いずれの部分が故障しても無停止で運転を継続できる。その“無停止”の製品が停止することが起こりうると考えたのだ。

 基本設計のレビューで製品の開発元の技術者に質問した。「フォールトトレラントの製品がダウンすることはありますか?」。答えはなく無言だった。それはそうだ、ダウンすると言ったら「フォールトトレラント」ではなくなる。

 フォールトトレラントの製品がダウンすることを想定するのは考え過ぎだと言う人もいた。しかし、筆者は想定することで押し切った。開発者でさえ気づいていない想定外の故障が起こったら、最悪の事態になるからだ。

 設計目標に収めるためにはコストを無制限にかけるわけには行かない。そこで2つの方法をお客様に提示した。

 一つはフォールトトレラントの装置を2重化すること。フォールトトレラントの製品自体が2重化されているので、実質上「4重化」になる。もう一つは製品を構成するすべてのモジュールを1セット、稼働中のルーターと同じラックに用意し、万が一、ルーターのダウンが起こったら丸ごとモジュールを取り替える案だ。

 4重化案はダウンが起こっても自動で瞬時にバックアップできる。しかし、高価なフォールトトレラントのルーターが2台必要なため費用がかかる。交換用モジュールを1セット用意する方法は、4重化案に比べれば費用は安くて済むものの、手作業で交換するため時間がかかる。想定するリスクとのバランスで適正なコストかどうかはお客様の判断による。

 結果的には、交換モジュールを用意することになった。予期しないダウンが起こっても、長時間の障害は避けられる。いざというときのモジュール交換をミスなく、すばやくするためには現地の保守担当者が製品に習熟していなければならない。そのため、保守担当者のトレーニングをし、現地での作業を経験してもらった。