障害対策
目次
用語
指標 | 意味 | 備考 |
---|---|---|
信頼性(Reliability) | 障害の発生のしにくさシステムが使えなくなる頻度、間隔 | |
可用性(Availability) | システムが利用できる時間の割合 | DBの高可用性は「高可用性」参照 |
耐障害性 | 障害発生時に自動で復旧しサービスを維持できるか | =フォールトトレランス |
冗長性 | 障害に備えて冗長な(=無駄な)予備装置を配置/運用しているか | |
保守性(Serviceability) | 障害復旧の容易さ | =平均修理時間 |
完全性(Integrity) | 情報が一貫性を保てる度合い | =保全性 |
対策
一覧
障害 | 対策名 | 備考 | |
---|---|---|---|
対策 | フォールトトレラント | 継続 | |
フェイルソフト | 機能縮小 | フェールソフト | |
フォールバック | 縮退運転 | ||
フェイルセーフ | 安全 | フェールセーフ | |
フェイルオーバー | 代替(自動) | フェールオーバー | |
スイッチオーバー | 代替(手動) | ||
フェイバック | 回復 | フェールバック | |
フールプルーフ | 誤作動防止 | ||
許容 | フォールトアボイダンス | 別対策 |
フォールトトレラント
障害が発生しても機能を継続させる設計手法
機能は縮小させない≠フェイルソフト
・電源の二重化
・ハードディスクのRAID
フォールトトレラントな具体的な手法としてフェイルオーバーがある。
フェイルソフト
機能縮小
障害発生時、自動的に機能を縮小させて稼働を維持させる機能
≠運用
フォールバック
縮退運転
障害発生時、機能を縮小させて稼働を維持する運用方法
≠機能
フェイルセーフ
障害発生時、システムを安全な状態へ移行させる機能
システム停止も許容する
・自動車の緊急ブレーキ
・Windowsの電源ボタン押下時のOS停止機能
フェイルオーバー
障害発生時、自動的に代替システムに機能を引き継がせて処理を続行させる仕組み。
スイッチオーバー
障害発生時、手動で代替システムに機能を引き継がせて処理を続行させる仕組み。
フェイルバック
フェイルオーバーした際の障害が回復した場合に処理を主系に戻す事
フールプルーフ
ユーザーの誤動作時、システムが危険が生じない、
またはそもそも誤った操作や危険な使い方ができない様な設計
フォールトアボイダンス
avoidance:逃避
障害に対して事前対策を取る事
・テスト
・教育
構成
ホットスタンバイ
同じ構成のシステム(ハード)を2台用意させ、片方を同じ動作をさせながら待機させる多重化方式
稼働側:主系、本番系
待機側:従系、待機系、予備系
主系→従系へ常にデータを同期させ、
障害発生時に従系にシステムが切り替わった場合にデータの欠損は無い。
コールドスタンバイに比較して同期処理の分、コストが高い
データベースサーバでは一定間隔での同期を行う場合でもホットスタンバイに分類される
コールドスタンバイ
同じ構成のシステム(ハード)を2台用意させ、片方を同じ動作をさせずに待機させる多重化方式
主系に障害が発生してから従系を稼働させる
同期処理を行わない為にコストは低い
データ同時実行性とは、多数のユーザーが同時にデータにアクセスできることを意味します。
データ整合性は、各ユーザーにデータの一貫したビューが表示され、その中にユーザー自身のトランザクションや他のユーザーのトランザクションによる参照可能な変更も含まれることを意味します。
ウォームスタンバイ
ホットとコールドの中間
DBのデータを従系に転送しておき、障害時に従系を主系に昇格させる
障害
一覧
障害 | 分類 |
---|---|
ハングアップ | ソフトウェア |
フリーズ | ソフトウェア |
アベンド | ソフトウェア |
クラッシュ | ソフト/ハードウェア |
ハングアップ
メモリの使用超過等によりプログラムの機能が停止。復旧の見込みが無い状態
プロセス自体は起動している
フリーズ
メモリの使用超過等によりプログラムの機能が停止。しかし復旧の見込みは有る状態
実際に復旧するかどうか分からない。
時間経過を待つ、他プログラムを終了させる等の処置を施す必要がある。
アベンド
Abnormal End
ソフトウェアの異常終了
≒クラッシュ
プロセスは終了
クラッシュ
ソフトウェアの異常終了、ハードウェアの障害
リスク
種類 | 内容 | 発生時 |
---|---|---|
回避 | 発生原因を除去 | 発生しない(回避しているので) |
転嫁 | 対応を他に任せる | 対応しない(他が対応する) |
軽減 | 発生確率を下げる発生後のダメージを減らす | 対応する |
受容 | 発生した段階で対応する。発生後のダメージを見込んでおく | 対応する |