フォールトトレランス

読み:ふぉーるととれらんす / 英語表記:fault tolerance

システムの一部に故障が発生しても、冗長化などによって、システム全体としては正常な機能を維持し続けられるようにする設計の考え方。

イマシルちゃんの解説

フォールトトレランスは、一部が故障してもシステム全体は正しく動き続けられるようにする設計の考え方だよ。
例えば同じデータを複数の装置に持たせ、一つが壊れても残りで処理を続けられるようにするんだ。
このように装置やデータを余分に用意することを冗長化というよ。
ただ台数を増やすだけでなく、故障を検知して壊れた装置を切り離すなどの対処も必要になるの。
データに付けた情報を使って誤りを直す誤り訂正も、そのための技術の一つだよ。
故障を完全になくすのは難しいから、起きてもサービスを止めないための備えが大切なんだ。

より深い解説

定義

フォールトトレランス(fault tolerance:耐故障性)は、構成要素の一部が故障しても、システムとしての機能を損なわずに動作を続ける性質、またはそのための設計の考え方である。主に、ハードウェアやソフトウェアの多重化(冗長化)によって実現する。

信頼性を高める2つのアプローチ

アプローチ考え方主な手段
フォールトアボイダンス(故障回避)故障そのものが起きないようにする高品質な部品、十分なテスト、予防保守
フォールトトレランス(耐故障)故障が起きることを前提に、故障しても動き続けるようにする多重化、誤り訂正、自動切り替え

どれほど品質を高めても、故障を完全になくすことはできない。そのため、重要なシステムでは、フォールトアボイダンスとフォールトトレランスを組み合わせる。

実現する技術

技術内容
デュアルシステム2系統で同じ処理を行い、結果を照合する。一方が故障したら、もう一方で処理を続ける
デュプレックスシステム現用系と待機系を用意し、現用系が故障したら待機系に切り替える
RAID 1、RAID 5などディスクを冗長化し、1台が故障してもデータを失わない
誤り訂正符号(ECC)メモリのビットの誤りを、自動で訂正する(フォールトマスキング)
冗長電源電源ユニットを2つ以上持ち、1つが故障しても給電を続ける
ネットワークの冗長化機器や回線を二重化し、VRRPやリンクアグリゲーションなどで切り替える

関連する考え方の比較

考え方故障や誤りが起きたときの動作
フォールトトレランス正常な機能を維持する
フェールソフト機能を縮小して運転を続ける
フェールセーフ安全な状態に移す
フールプルーフ人が誤った操作をしても、誤動作を防ぐ

誤った入力を見つけて利用者に知らせ、入力し直してもらう仕組みは、故障ではなく人の誤りへの対策なので、フォールトトレランスではなくフールプルーフに当たる。

可用性との関係

フォールトトレランスは、システムの稼働率(可用性)を高めるための手段である。たとえば、稼働率0.9の装置を2台並列にすると、両方が同時に故障しない限り動き続けるため、全体の稼働率は 1 − (1 − 0.9)² = 0.99 に上がる。

実際の試験ではここに出る!全5問

ネットワークスペシャリスト

午前Ⅱ

この用語が出てくる記事

↑