4-7 高信頼化技術

ここでは、コンピュータシステムの信頼性を高めるための考え方や構成技術について学ぶ。

信頼性を高めるための考え方には、次のようなものがある。

  • フォールトトレランス
  • フェールソフト
  • フェールセーフ
  • フールプルーフ
  • フォールトアボイダンス

用語の意味は全商情報処理で学んだはずなので割愛する。

マルチプロセッサシステムクラスタリングは、信頼性の観点からはフォールトトレランスといえる。一つの処理ユニットに障害が発生しても、性能は低下するものの残る処理を実行できる。高信頼性を目的としたクラスタリングシステムのことを、HAクラスタという。

フォールトトレランスの概念に基づいて信頼性を高めるシステム構成の代表として冗長性がある。

冗長性とは、機器の故障や突発的なアクセス集中による負荷に備え、予備を用意する(2重化する)ことである。

冗長性には、次のようなものがある。

デュプレックスシステム

処理系と待機系で2重化する高信頼性システム。

主要な機器を2重化することで、障害時には待機系に切り替えを行い、実行を続ける。

待機系の待ち方によって3分できる。

  • コールドスタンバイ
  • ウォームスタンバイ
  • ホットスタンバイ

デュアルシステム

2台のコンピュータで同じ処理を行い、結果を照合する高信頼性システム。

現用系に障害が発生したときに、その時点までで行っていた処理を待機系に引き継ぐことフェールオーバと呼ぶ。

また、現用系が復旧したときに、待機系にフェールオーバしていた処理を現用系に戻すことフェールバックという。

全商1級で学んだようにRAIDとは、複数台のハードディスク装置を併用する仕組みのこと。

RAIDの目的は2つある。

  • ストライピングをして、それを並列にアクセスし、全体としての速度の高速化を図る。
  • ミラーリングをして、信頼性の向上を図る

RAIDにも種類があり覚えておくこと。

RAIDの方式一覧

・RAID 0 (ストライピング)
データをブロック単位に分割し、複数のディスクに分散して配置する。
必要HDD数:2台~
特徴:耐障害性は全く無いが、読み書き速度が上がる。

・RAID 1 (ミラーリング)
まったく同じデータをディスクに書き込む。
必要HDD数:2台~
特徴:耐障害性に優れているが、ディスク容量がMAX50%以下になる。

・RAID 2
データにエラー訂正用のハミング符号1を付加したものをストライピングで書き込む。
必要HDD数:5台~2
特徴:全RAIDレベルの中で最高の耐障害性だが、読み書き効率が悪い。

・RAID3
データをバイト(ビット)単位で分割して並列に書き込みをする。
RAID2より演算コストを低く、エラー訂正コードを専用(一つの)のドライブに記録する方式。
エラー訂正コード(パリティコード)を付加することでエラー訂正/データ復旧を可能にしている。
データの分割はRAID2と同様に容量単位で行われるため、読み書き効率がRAID5より低い。
必要HDD数:3台~
特徴:パリティを利用することでRAID2の様な速度面での性能低下がない。

・RAID4
RAID 3のデータ処理単位をブロック単位にしたもの。
データをブロック単位で分割して並列にディスクに書き込み、パリティコードを固定したパリティディスクに書き込みを行う。読み出しは高速だが、書き込みはパリティディスクにアクセスが集中するため遅くなる。
必要HDD数:3台~
特徴:RAID3のデータ分割をブロック単位で行うことにより高速化。

・RAID5
RAID1(ストライピング)と同じ原理で複数のディスクにデータを分散して書き込むと同時に、パリティも計算・生成してディスクに書き込みを行う。
RAID4と違い、パリティコードを全ディスクに分散して書き込まれること3により性能が低下することを防ぐ。
また、どれか1台のディスクが故障しても、それ以外のディスクのデータとパリティ情報から元の完全なデータを生成して回復できる。
ただし、同時に2台以上が壊れると回復は不可能にとなってしまう。
必要HDD数:3台~
特徴:耐障害性の向上と高速化、大容量化の全てを実現できるRAIDレベル。

RAIDの種類特徴ストライピングの単位ディスク構成台数
RAID0ストライピング2台〜
RAID1ミラーリングブロック2台〜
RAID2ミラーリング+ハミング符号付与ビット固定5台〜
RAID3ミラーリング+パリティビット固定3台〜
RAID4ミラーリング+パリティブロック固定3台〜
RAID5ミラーリング+パリティブロック分散3台〜
※違いが分からなくなりがちなので表や画像で記憶するべし。

RAID6

RAID5の発展型。一組のデータについてパリティを2種類算出し、同時に2台故障しても稼働が可能。

デュプレキシング

ハードディスクだけでなく、「コントローラ+ハードディスク」が協調するようにRAID1を構成すること。ミラーリングと区別されてそう呼ばれる。

地震などの災害対策として、本番システムと別の場所にバックアップ用のシステム環境を用意し、データをネットワークで転送する、バックアップサイトという手法がよく使われる。準備体制によって、次のように分類できる。

  • ホットサイト・・・本番と同じ環境を事前に用意し、障害時に即座に切り替える。
  • コールドサイト・・・場所や設備だけ用意し、障害時に機器を設置する。
  • ウォームサイト・・・ホットとコールドの中間。場所や設備を用意し、機器も用意する。障害時にデータを搬入する。
  1. ハミング符号・・・伝送されるデータに余分なビットを追加することで、1つの誤りを検出&訂正することが可能になるエラー訂正符号 ↩︎
  2. データ用のハードディスク2台、エラー訂正用のハードディスクが3台、計5台必要になる。 ↩︎
  3. パリティの保存に必要なのは、全ディスク台数に関係なくディスク1台分の容量なので、ディスク台数が多いほど容量の利用効率も向上します ↩︎