ソフトウェアRAIDの利用

Linuxでは標準で利用出来るソフトウェアRAID機能があります。
ハードウェアRAIDが組み込まれていないマシンでも、RAID構成が比較的簡単に実現出来ます。
RAID機能はRAID 0,1,5で、スペアディスクもサポートしています。

 

ここでは、ソフトウェアRAIDの使い方と、Tipsを紹介します。
なお、RAIDの構築はLinuxインストール時に終了している物とします。

 

 

RAIDの操作

RAIDデバイスは、/dev/mdデバイスになります。これに作成した数のデバイスが作成されます。例えば、/dev/md0/dev/md1などです。

また、mdデバイスは、そのままext3などのファイルシステムを構築する事も、LVMを構築する事も可能です。

なお、mdデバイスの操作に利用するコマンドは、mdadmコマンドを利用します。

 

RAIDの状態確認

RAIDの状態確認は、/proc/mdstatを参照します。

ここでは、RAID構成の確認やRAIDの状態確認が行えます。

cat /proc/mdstat

 

決まったデバイスの詳しい情報を得るには、以下のコマンドを利用します。

mdadm --detail /dev/md0

 

RAIDからデバイスを切り離す

mdadm --fail /dev/md0 /dev/hda1

 

RAIDからデバイスを取り除く

mdadm --remove /dev/md0 /dev/hda1

 

RAIDにデバイスを加える

mdadm --add /dev/md0 /dev/hda1

 

RAIDの障害復旧

RAID利用時にディスクが故障して交換する場合は、正常なディスクのパーティション情報を取得します。

その情報を元に、新しい交換用ディスクにパーティションを作成し、パーティションタイプはSoftwareRaidにします。

新しい交換用ディスクの準備が出来たら、mdadm -add コマンドでRAIDにデバイスを加えると自動で同期作業が始まります。

 

 

ソフトウェアRAID1利用時のGRUB手動インストール

ソフトウェアRAID1 (ミラーリング) に構成した場合、2本目のディスクに GRUB(ブートローダ)を手動でインストールします。

これは、インストール時にRAID1構成をとっても、予備ディスク側のMBRにGRUBが書き込まれない為です。

例えば、hdaとhdbのソフトウェアRAIDを組んだとします。この場合、1本目のディスク(hda)のMBR領域にはGRUBが書き込まれますが、2本目のディスク(hdc)には書き込まれません。

この状態では、本番ディスクが壊れ予備ディスクから起動しようとした場合に、GRUBが起動しない事態が発生します。

そこで、2本目のディスクのMBRにもGRUBを手動でインストールします。

 

/bootファイルシステムの確認

まずは、/bootファイルシステムのデバイスを確認します。これには、以下のコマンドで確認します。

df -h

多くは、/dev/md0/bootがあると思います。

 

次に、/dev/md0がどのデバイスから構成されているか調べます。

これには、/proc/mdstatを参照します。

cat /proc/mdstat

例えば、/dev/md0は、/dev/hda1/dev/hdc1から構成されている事が分かります。

さらに、/dev/hda1が1本目(本番)で、/dev/hdc12本目(予備)である事がわかります。

 

GRUB のコマンドによるインストール

まず、GRUBを起動します。

grub

 

次に、2本目のディスクの/boot ディレクトリを含むディスクパーティションを root デバイスに指定します。

 grub> device (hd0) /dev/hdc grub> root (hd0,0)

 

最後に root デバイスに GRUB をインストールします。

grub> install /grub/stage1 (hd0) /grub/stage2 p /grub/grub.conf

 

インストール後は、quit で grub を終了して下さい。

grub> quit

以上で GRUB のインストールは終了です。

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <img localsrc="" alt="">