ネストしたRAIDデバイスは、物理ディスクを使用する代わりに、その基本エレメントとして別のRAIDアレイを使用するRAIDアレイで構成されます。この構成の目的は、RAIDのパフォーマンスと耐障害性を向上することです。
Linuxは、RAID 1 (ミラーリング)アレイとRAID 0 (ストライピング)アレイのネストをサポートします。一般に、この組み合わせは、RAID 10と呼ばれます。ネストの順序を区別するため、このマニュアルでは、次の用語を使用します。
RAID 1+0: まず、RAID 1(ミラー)アレイが構築され、次に、それらのアレイが組み合わされてRAID 0 (ストライプ)アレイを構成します。
RAID 0+1: まず、RAID 0(ストライプ)アレイが構築され、次に、それらのアレイが組み合わされてRAID 1(ミラー)アレイを構成します。
次のテーブルでは、RAID 10ネスティングの欠点と利点を、1+0対0+1という形式で説明します。使用するストレージオブジェクトは、それぞれが専用のI/Oを持つ別々のディスクに常駐すると想定しています。
表 10-2 ネストしたRAIDレベル
ネストしたRAID 1+0は、2つ以上のRAID 1(ミラー)デバイスを作成し、それらのRAID 1デバイスをRAID 0のコンポーネントデバイスとして使用することで構築します。
重要: デバイスに対する複数の接続を管理する必要がある場合は、マルチパスI/Oを設定してから、RAIDデバイスを設定する必要があります。詳細については、セクション 7.0, デバイスのマルチパスI/Oの管理を参照してください。
このセクションのプロシージャでは、次のテーブルに示すデバイス名を使用します。それらのデバイス名は、必ず、ご使用のデバイスの名前で変更してください。
表 10-3 ネスティングでRAID 10(1+0)を作成するシナリオ
|
rawデバイス |
RAID 1(ミラー) |
RAID 1+0(ストライピングミラー) |
|---|---|---|
|
/dev/md0 |
/dev/md2 |
|
/dev/md1 |
端末コンソールを開いて、rootユーザまたは同等の権限でログインします。
RAID 1デバイスごとに2つの異なるデバイスを使用して、2つのソフトウェアRAID 1デバイスを作成します。コマンドプロンプトで、次の2つのコマンドを入力します。
mdadm --create /dev/md0 --run --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm --create /dev/md1 --run --level=1 --raid-devices=2 /dev/sdd1 /dev/sde1
ネストしたRAID 1+0デバイスを作成します。コマンドプロンプトで、「ステップ 2」で作成したソフトウェアRAID 1デバイスを使用して、次のコマンドを入力します。
mdadm --create /dev/md2 --run --level=0 --chunk=64 --raid-devices=2 /dev/md0 /dev/md1
デフォルトのチャンクサイズは 64KBです。
RAID 1+0デバイス/dev/md2上で、Reiser(reiserfs)などのファイルシステムを作成します。たとえば、コマンドプロンプトで、次のように入力します。
mkfs.reiserfs /dev/md2
これとは別のファイルシステムを使用したい場合は、コマンドを変更します。
/etc/mdadm.confファイルを編集して、コンポーネントデバイスとRAIDデバイス/dev/md2のエントリを追加します。
/etc/fstabファイルを編集して、RAID 1+0デバイス /dev/md2のエントリを追加します。
サーバを再起動します。
RAID 1+0デバイスが/localにマウントされます。
ネストしたRAID 0+1は、2個から4個のRAID 0(ストライプ)デバイスで構築され、それらのRAID 0デバイスをミラーリングしてRAID 1のコンポーネントデバイスとします。
重要: デバイスに対する複数の接続を管理する必要がある場合は、マルチパスI/Oを設定してから、RAIDデバイスを設定する必要があります。詳細については、セクション 7.0, デバイスのマルチパスI/Oの管理を参照してください。
この構成では、RAID 0がデバイスの喪失に耐えられないので、ベースのRAID 0デバイスにスペアデバイスを指定できません。デバイスがミラーの1つのサイドでエラーになった場合は、置き換え用のRAID 0デバイスを作成して、ミラーに追加します。
このセクションのプロシージャでは、次のテーブルに示すデバイス名を使用します。それらのデバイス名は、必ず、ご使用のデバイスの名前で変更してください。
表 10-4 ネストによるRAID 10 (0+1)作成のシナリオ
|
rawデバイス |
RAID 0 (ストライプ) |
RAID 0+1 (ミラー化ストライピング) |
|---|---|---|
|
/dev/md0 |
/dev/md2 |
|
/dev/md1 |
端末コンソールを開いて、rootユーザまたは同等の権限で、ログインします。
RAID 0デバイスごとに2つの異なるデバイスを使用して、2つのソフトウェアRAID 0デバイスを作成します。コマンドプロンプトで、次の2つのコマンドを入力します。
mdadm --create /dev/md0 --run --level=0 --chunk=64 --raid-devices=2 /dev/sdb1 /dev/sdc1
mdadm --create /dev/md1 --run --level=0 --chunk=64 --raid-devices=2 /dev/sdd1 /dev/sde1
デフォルトのチャンクサイズは 64KBです。
ネストしたRAID 0+1デバイスの作成コマンドプロンプトで、「ステップ 2」で作成したソフトウェアRAID 0デバイスを使用して、次のコマンドを入力します。
mdadm --create /dev/md2 --run --level=1 --raid-devices=2 /dev/md0 /dev/md1
RAID 0+1デバイス/dev/md2上で、Reiser(reiserfs)などのファイルシステムを作成します。たとえば、コマンドプロンプトで、次のように入力します。
mkfs.reiserfs /dev/md2
これとは別のファイルシステムを使用したい場合は、コマンドを変更します。
/etc/mdadm.confファイルを編集して、コンポーネントデバイスとRAIDデバイス/dev/md2のエントリを追加します。
/etc/fstabファイルを編集して、RAID 0+1デバイス/dev/md2のエントリを追加します。
サーバを再起動します。
RAID 0+1デバイスが/localにマウントされます。