システムの構成と信頼性設計
2026.10.08
このページでは、デュアルシステムとデュプレックスシステム、ホット・ウォーム・コールドスタンバイ、フェールセーフなど信頼性設計の考え方がわかります。
- 一言で言うと:
- 壊れても止まらないシステムをどう作るか、という話。2台並べる方法、待機のさせ方、災害への備え、そして「壊れる前提」か「壊さない前提」かの考え方が出てくる。
2台で同じ処理(デュアル)→ 1台は待機(デュプレックス)→ 遠くに予備を置く(災害対策)→ 信頼性の考え方(フォールトトレランスなど)
覚え方の軸
- 2台構成は「2台とも働く(デュアル)」か「1台は待つ(デュプレックス)」か:
- デュアルは照合するので確実だが遅くて高い。デュプレックスは切替えに時間がかかる
- 待機のさせ方は「ホット → ウォーム → コールド」の順に、準備度も切替え速度も下がる:
- 同じ並びが、デュプレックスの待機系にもバックアップサイトにも出てくる
- 高信頼化は「壊れても動かす(フォールトトレランス)」か「そもそも壊さない(フォールトアボイダンス)」か
- フェール○○は「障害が起きたときにどうするか」で分ける:
- 機能を落として続ける(ソフト)、安全側に止める(セーフ)、別の機械が引き継ぐ(オーバ)、外に見せない(マスキング)、人の誤操作に備える(フールプルーフ)
デュアルシステム:2台で同じ処理をして答え合わせ
- デュアルシステム:
- 同じ処理を行うシステムを二重に用意し、処理結果を照合(クロスチェック)して正しさを確かめる。不一致なら処理をやり直す
- 一方が故障したら、それを切り離して処理を続けられるので信頼性が高い
- 並列冗長型システムともいう
- 特徴(デュプレックスとの比較。★特徴を問う問題が出る)
- MTTR(平均修理時間)が短い:
- スループットが落ちる:
- 同じハードウェア構成なら、2つの系で同じ処理をして照合する分、デュプレックスより処理量が減る
- 高価:
デュプレックスシステム:1台が働き、1台は待機
- デュプレックスシステム:
- 主系(現用系、運用系)と待機系の2つの処理系を持つ。主系で業務処理を行い、主系が故障したら待機系に切り替えて続ける
- 待機冗長型システムともいう
- 障害の検知:
- 一般に、主系から待機系へ定期的にメッセージを送り、それが途切れたら主系の障害と判断して切り替える
- 待機系の状態による3分類(切替えが速い順に ホット → ウォーム → コールド)
| 方式 |
待機系の状態 |
切替え |
| ホットスタンバイ |
主系と同じ業務システムを最初から起動しておく |
障害を判断するシステム監視機構があり、直ちに(自動的に)切り替える |
| ウォームスタンバイ |
OSは起動しているが、業務システムは起動しない。主系DBとほぼ同じ状態のDBを用意し、更新内容をログなどで反映しておく(データだけをバックアップする) |
障害時に待機系DBに切り替えて業務を続ける |
| コールドスタンバイ |
電源を落としておく場合もあるが、通常はバッチ処理やシステム開発などをしながら待つ |
障害時に、やっていた処理を中断 → 再起動 → 業務システムを起動 |
- ウォームスタンバイサーバ、スタンバイデータベース:
- ウォームスタンバイ方式で待機させるDBシステムの呼び方
災害を考慮したシステム構成:遠くに予備を置く
- バックアップサイト:
- 地震、火災、台風などの非常事態に備え、システムの機能を早く回復させるための予備の拠点
- 本システムからできるだけ遠くに置き、一地域の災害が及ばないようにする
- 地域分散構成:
- 設置方式(ここでも ホット → ウォーム → コールド の順に準備度が下がる)
| 方式 |
普段の状態 |
非常時 |
| ホットサイト |
常にデータの同期がとれた予備システムを待機させる(例:待機系サイトとして稼働させ、ネットワーク経由で常にデータやプログラムを更新) |
直ちに機能を代行し、速やかに業務を再開 |
| ウォームサイト |
予備サイトにハードウェアを用意し、定期的にバックアップしたデータやプログラムの媒体を運び込んで保管 |
予備システムを起動し、保管物でデータを最新にしてから引き継ぐ |
| コールドサイト |
システムを置ける施設だけを用意。普段は別の目的で使う |
必要なハードウェア、データやプログラムの媒体を運び込んで業務を再開 |
- ディザスタリカバリ:
- 災害で被害を受けたシステムを復旧・修復すること、または被害を最小限にする予防措置。事業継続管理の概念の一つ
高信頼化システムの考え方:壊れる前提か、壊さない前提か
- フォールトトレランス(耐故障):
- 故障は起きる前提で、構成要素に冗長性を入れるなどして、故障しても全体として必要な機能を保つ考え方
- フォールトトレラントシステム:
- フォールトアボイダンス(故障排除):
- 故障しにくい部品を選ぶなど、個々の品質を高めて故障そのものを防ぐことで、全体の信頼性を上げる考え方
- フォールトトレランスの実現方法
| 考え方 |
一言で言うと |
ポイント |
| フェールソフト |
性能が落ちても止めない |
必要な機能を維持する。「部分回復」の意味 |
| フェールセーフ |
常に安全側に制御する |
影響範囲を最小限にする。「危険回避」の意味。例:信号機が故障したら全部赤にする |
| フェールオーバ |
他のシステムが自動的に引き継ぐ |
切替えを利用者に意識させない |
| フォールトマスキング |
障害の影響を外に出さない |
障害の発生を他から隠す、または自律回復できるようにする |
| フールプルーフ |
誤操作しても異常にならない |
意図しない使われ方にも備える |
- フォールバック(縮退運転):
- フェールソフトで、故障した装置を切り離し、機能が落ちた状態で処理を続けること
- フェールバック:
- 障害が回復した後、代替システムから元のシステムに処理を戻すこと(フェールオーバの逆)
- アクティブ/スタンバイ構成:
- サーバAが稼働系、サーバBが待機系、のように役割を分けた構成
- フールプルーフな設計の例
- 誤入力があってもプログラムを異常終了させず、エラーメッセージを出して次の操作を促す
- 不特定多数が使うプログラムには、より多くのデータチェック機能を入れる
- ベリファイ入力(別の人が同じデータを入力し、結果を照合する)で誤入力をチェックする
- 使用権限のない機能は実行できないようにする
- オペレータがうっかりミスをしないよう、操作の確認などに配慮する
- インタロック:
- フールプルーフを実現する安全機構の考え方の一つ。「一定の条件を満たさないと動作しない」ようにする(例:電子レンジはドアが閉まっていないと動かない)
- 信頼性のための解析手法
- FMEA(Failure Mode and Effects Analysis):
- 故障予防が目的。各構成要素に起こりうる故障モードを洗い出し、その影響をボトムアップで解析して、システムへの影響度を評価し、対策を考える
- FTA(Fault Tree Analysis):
- 障害の原因を分析する手法。好ましくない事象(故障)の引き金となる原因をトップダウンで洗い出し、樹形図で表す
混同しやすいペア
- デュアル(2台で同じ処理・照合、MTTR短い、スループット低い)/デュプレックス(主系と待機系、切替えが必要)
- ホットスタンバイ(業務システムまで起動済み、自動切替え)/ウォームスタンバイ(OSだけ起動、データだけ反映)/コールドスタンバイ(障害が起きてから起動)
- ホットサイト(常に同期)/ウォームサイト(ハードあり、媒体を保管)/コールドサイト(施設だけ)
- フォールトトレランス(壊れても動かす)/フォールトアボイダンス(そもそも壊さない)
- フェールソフト(機能を落として続ける)/フェールセーフ(安全側に止める)
- フェールオーバ(別の機械に引き継ぐ)/フェールバック(元に戻す)/フォールバック(縮退運転)
- フールプルーフ(人の誤操作に備える)/フェールセーフ(機械の故障時に安全側へ)
- FMEA(故障モードからボトムアップ)/FTA(好ましくない事象からトップダウン、樹形図)
← 04 システム構成要素の目次に戻る