2011-09-04

Ubuntu 11.04でeSATA外付けHDにソフトウェアRAID 5を構築する

今回入手したHP Z800に、今度はeSATA接続で大容量の外付けHDを接続し、ソフトウェアRAID 5で運用してNASその他として利用することを考える。用意したものは以下の通り。

まずeSATAボードPEX-PE30SをPCIeスロットにセットする。HD × 5は裸族のインテリジェントビルCRIB535EUFに詰め込むだけ。CRIB535EUFはRAID機能を内蔵しているが、今回はそれは使わないのでRAID無しモードに裏面のディップスイッチをセットする。

両者を接続して起動すると、以前RAID 1を構築した内蔵HDが/dev/sdf, /dev/sdgとなり、今回接続したHDが/dev/sdasdeと認識された。このようなことがあるために、/etc/fstabなどでは/dev/sdaなどと直接指定するのでなく、ファイルシステムのUUIDで指定しておくべきだ。

そしてRAID 5を構築するため以下のコマンドを実行する。

$ sudo mdadm --create /dev/md4 --level=5 -n 5 --metadata=0.9 /dev/sd[abcde]
$ cat /proc/mdstat

ここから長い長い再構築プロセスが始まる。mdstatの出力を見ると、spareがどうとかこうとか出力され、特にスペアディスクなどを指定していないのにと困惑するが、man mdadmによるといったんスペアがあることにしたほうが構築が速く済むということなので心配しないでいい。再構築には多分20時間くらいかかった。再構築が終了したら、構成を保存する。

$ sudo vi /etc/mdadm/mdadm.conf
{ 以前のARRAY行を削除する }
$ sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
$ sudo update-initramfs -u
$ sudo reboot

後はファイルシステムを構築しマウントして終わり。

$ sudo mkfs -t ext4 /dev/md4
$ sudo blkid /dev/md4
$ sudo vi /etc/fstab
$ sudo mount -a

後日談

ある夜、サーバ置き場になっている書庫からボーという音がしていたのでのぞいてみると、ソフトウェアRAID 5で運用している裸族のインテリジェントビルのアクセスランプが全部赤くなっていてアクセスが連続して起きていた。これは何事?と思って調べてみた。

$ cat /proc/mdstat
md4 : active raid5 sda[0] sdb[1] sde[4] sdd[3] sdc[2]
      7814057984 blocks level 5, 512k chunk, algorithm 2 [5/5] [UUUUU]
      [=========>...........]  check = 49.8% (974687636/1953514496) finish=658.9min speed=24756K/sec

なんとRAIDの再構築が進行中だった。もう壊れたのか?と思ってよく見てみると、壊れたことを示すFAILなどの文字が無い。あちこち検索したところ、/etc/cron.d/mdadmによる設定によって週に一回/usr/share/mdadm/checkarrayが実行されることが判明した。そしてよく目をこらしてmdstatの出力を見るとcheck =となっていて、再構築ではなくチェックが進行中なだけであった。でも週1で20数時間かけてチェックするのもどうかな...

(2011/10/2追記)/etc/cron.d/mdadmをよく見ると、[ $(date +\%d) -le 7 ]というチェックが入っていて、月一度の実行だった。

 

0 件のコメント:

コメントを投稿