2005年06月23日

SoftwareRAID

今までメインのサーバにHDを大量に、そして強引にぶち込んでファイルサーバを構築していたが、さすがに夏は温度が危険なレベルに達したのでメインのサーバのHDの量を減らした。

hddtempで温度をチェックすると50度以上、実際にHDを数秒さわるともう我慢できなくなるほど熱い。
さすがにこのままだと壊れるのでHDを2台減らし、さらにHDに風が当たるようにFANを設置。
小さいFANが無かったので古いCPUのFANを使った。
Athlonについていたファンなので小さいが風量がすごい。ガンガン冷える。
ついでに爆音もすごい。夜中の静けさの中、ドアを開けたら1階の廊下までFANの音が聞こえる。(サーバは2階に置いてある)

でもそのおかげで30度台までHDの温度は低下した。
これで安心。


で、減らしたHDをGentooマシンに接続、余っているHDもついでに接続。
余っていたHDはちょっと古いHDなのでそれぞれ容量が小さく、ファイルサーバに使うにはちょっと不便。

そこでRaidにしてみる。
特に重要なデータは置かないのでミラーリングではなく単純に複数のHDをまとめるリニアモードでRaidを構築。
RAID-0でも良かったがそれぞれのHDのサイズが違うので今回はリニアモードにした。

構成がコロコロ変わる予定のテスト用サーバでRaid組んだら後々めんどくさいことになりそうな気もするがまぁいいだろう。

以下GentooでSoftwareRAID linearモードで構築したメモ
カーネルはgenkernelで作成されたカーネルを使用。

まずraidtoolsをインストール
#emerge raidtools

ドライバ入れる
#modprobe linear

デバイス作成
#cd /dev
#MAKEDEV md

/etc/raidtab作成
raiddev /dev/md0
raid-level linear
nr-raid-disks 3
device /dev/hdb1
raid-disk 0
device /dev/hde1
raid-disk 1
device /dev/hdf1
raid-disk 2

リニアモードでpersistent-superblockを指定すると失敗するようだ。

raid作成
#mkraid /dev/md0

ファイルシステム作成
#mke2fs -j /dev/md0

そして普通にマウントしたら使用可能になる。

起動時にRAIDが有効になり、マウントされるためには
/etc/modules.autoload.d/kernel-2.6
にlinearと言う行を追加する。
そして/etc/fstabにいつものように記述する。

古いHDを全部追加した。
一気にGentooマシンに接続されているHDが8台になった・・。
5台のRAIDを構築

gentoo root # less /proc/mdstat
Personalities : [linear]
md0 : active linear hdh1[4] hdg1[3] hdf1[2] hde1[1] hdd1[0]
524192672 blocks 32k rounding

unused devices:

おー、500G突破。
しかし古いHDなので激しく不安。

ちなみにlinearモードでRAIDを構築し、どれかのHDを取り外して起動するとLinuxの起動に失敗し、メンテナンスモードに入る。
dmegで確認すると特にどのディスクがおかしいとかの表示は無かったかも。
そしてRAIDを構築していたHDを単体でマウントするとなんとマウントに成功、RAIDの時に書き込んだファイルがちゃんと表示された。
linearモードだとどこかのディスクが壊れても他のHDを単体でマウントしたらデータの破壊は最低限ですむかもしれない。

と思ったら普通にマウントが成功するのはlinearモードで構築する最初のディスクだけだった。

Trackback on "SoftwareRAID"

このエントリーのトラックバックURL: 

"SoftwareRAID"へのトラックバックはまだありません。

Comment on "SoftwareRAID"

"SoftwareRAID"へのコメントはまだありません。

Post a Comment

コメントする

コメント登録機能が設定されていますが、TypeKey トークンが設定されていません。