システムの信頼性を向上させる方法

f:id:hira98:20190725060436p:plain

【結論】

  • システムの信頼性を向上させるには、同じ構成を2系統用意すれば良い

  • 信頼性と費用には相関関係がある。

【目次】

はじめに

スポーツの大会では、試合当日や試合中に選手が怪我をして試合を続行できなくなった時の交代要員として補欠を用意します。

これと同じ考えは、システムを構築する上でも必要になってきます。

システムや機器が故障した際に迅速に復旧できるように、同じシステムを2系統用意しておき、普段は片方を稼働させ、もう片方は待機させておきます。

この方式をデュプレックスシステムといいます。

稼働しているシステム(1系)に対して、待機させる側のシステム(2系)の状態によって、下表のように分類されます。

方式名 1系 2系 耐障害性 運用コスト
ホットスタンバイ 稼働 常時1系と同期を取り、直ぐに交代できるように待機。
ウォームスタンバイ 稼働 1系と動機を取らずに待機。
コールドスタンバイ 稼働 機器の電源を入れずに待機。

ホットスタンバイ

同じシステムを複数用意し常時同期を取得するため、障害発生時は短時間で復旧できます。

さらに、平常時は複数のシステムで処理を行えるため、サービス品質の向上にも繋げることができます。

しかし、同じシステムを複数構築し運用する必要があるため、お金もかかります。

ウォームスタンバイ

ホットスタンバイ同様に同じシステムを複数用意はしますが、リアルタイムでの同期は行わないため、平常時の運用コストは下げることができます。

しかし、障害の発生時は、メイン系から待機系への処理の引き継ぎが発生するため、ホットスタンバイと比べると復旧時間はかかります。

コールドスタンバイ

普段は別の用途で使用し、障害発生時に手動で切り替える方式。

一番運用コストは安いが、障害発生時の影響が一番大きい。

参考情報

デュプレックスシステムとは - IT用語辞典 e-Words

ウォームスタンバイとは - IT用語辞典 e-Words

ホットスタンバイ(ホットスペア)とは - IT用語辞典 e-Words

コールドスタンバイ(コールドスペア)とは - IT用語辞典 e-Words

さいごに

現場で聞こえてくる話をカレーを作る場合で例えてみました。

お客さん:「カレーを作ってください。」

ITエンジニア:「カレーを作りました。」

お客さん:ルーをちょっと舐めてから、「なんで甘いカレーなの?カレーって言ったら普通辛いよね。作り直してくれる。」

ITエンジニア:「辛いカレーを作り直しました。」

お客さん:「これだよこれ。やっぱりカレーは辛くないと。ところでさ、なんで具材こんなに小さく切ってるの?普通カレーの具材ってもっと大きくしない。作り直してくれる。」

ITエンジニア:「かしこまりました。。(なんで、最初の段階で言わないんだよ)」