RAIDのアプローチには、ハードウェアRAIDとソフトウェアRAIDの2つがあります。
ハードウェアベースのRAIDシステムは、RAIDサブシステムをホストから独立したものとして管理します。ホストに、各RAIDアレイ毎に単一のディスクを提供します。
ハードウェアRAIDデバイスの例としては、SCSIコントローラに接続して、RAIDアレイ群を単独のSCSIドライブのようして提供するデバイスです。外部RAIDシステムは、RAIDの処理機能をすべて外部ディスクサブシステムに存在するコントローラに移します。サブシステム全体が通常のSCSIコントローラを介してホストに接続されるため、ホストからは単一のディスクのように見えます。
RAIDコントローラもカードの形をしており、オペレーティングシステムに対するSCSIコントローラのような役割を果たしますが、ドライブとの実際の通信はすべて自分自身で処理します。この場合、ドライブはSCSIコントローラの場合と同様にRAIDコントローラに接続されますが、ドライブはRAIDコントローラの設定に追加されるため、オペレーティングシステムからは違いを認識することはできません。
ソフトウェアRAIDは、カーネルディスク(ブロックデバイス)コードでさまざまな RAIDレベルを実装します。これは低価格のソリューションを提供しますので 高額なディスク制御カード又は、ホットスワップシャーシ[1] は必要としません。ソフトウェアRAIDは、またSCSIのディスクだけでなく、より低額の IDEのディスクでも機能します。最近の高速CPUを使用すれば、ソフトウェアRAIDの性能は ハードウェアRAIDに勝る可能性もあります。
Linuxカーネルに含まれるMDドライバはRAIDソリューションの一例であり、ハードウェアから完全に独立しています。ソフトウェアベースのアレイの性能は、サーバーCPUの性能と負荷に依存します。
Red Hat LinuxインストーレーションプログラムでのソフトウェアRAIDの設定については、第10章を参照してください。
ソフトウェアRAIDで実現可能な機能についてさらに詳しく知りたい場合は、以下の重要な機能に注目してください:
スレッド化された再構築プロセス
カーネルに基づいた構成
再構築せずにLinuxマシン間でアレイを移動可能
アイドル状態のシステム資源を使用する、バックグラウンドでのアレイ再構築
ホットスワップ可能なドライブをサポート
自動CPU検出により、特定のCPU最適化機能を利用
[1] | ホットスワップシャーシを使用すると、システムの電源を落さずにハードドライブを 取り外すことが出来ます。 |