LinuxでRAID 1のサーバを作る実験をしてみたよ!
このまえ、TurboLinux 4.0Jを買ってみたんだけれども、これがもうらくちんで、今までSlackwareでコンパイルしまくっていたのが馬鹿らしくなるくらい。しかも、噂によれば、LinuxでSoftware RAID-1のサーバができるらしい。それなら、ということで、IBMの15GBのIDEのHDDをふたつ買ってきました。ひとつ¥13,000-なり。こいつを、IBMのAPTIVA 750にくっつけて、LinuxでRAID 1サーバを作ってみよう!
確認:ハードウェア
本体:IBM Aptiva 750(Pentium 133MHz,Memory 96MB)
ハードディスク:HDA:Qantum FB-1280AT
hdb:IBM DJNA351520(15GB,5400rpm,Ultra-ATA66)
hdc:IBM DJNA351520(15GB,5400rpm,Ultra-ATA66)
hdd:MITUMI CRMC-FX-3210S(普通の32倍速CD-ROMドライブ)
※CD-ROMドライブを使わないでも、NFSからTurboLinux4.0Jをインストールできることをかくにんずみ。でも4倍速なので、爆おそでした。
問題点
1.RAIDパッチの組み込みがないとraidtoolは動かない。
2.Turbolinuxのカーネルコンパイル.
なりゆき
とりあえず、Aptiva 750に、モービルラック2つくっつけてみました。そしたら、CD-ROMドライブを収めるところが無くなってしまいました。Aptiva 750は、ベイが三つあるように見えますけれども、そのうちの一番下のベイは、5インチベイの高さがある(1インチ)3.5インチベイでした。やられた。
しょうがないので、本体を開けっぱなしにして、CD-ROMは本体の横にぶら下がるかっこうになりました。
とりあえず、TurboLinux4.0Jを適当に入れてみる。種類をネットワークサーバにして、hdaのQuantum Fireballに入れました。こいつには、BeOSも入っているんで、Linuxにつかうhda1は512MBしかありません。
で、ネットワークカードを誤認識やがったが、/etc/conf.modulesのvia-reneみたいなのをneにし、さらにoptions ne irq=3 io=0x300をセットして、あっけなく入ったので、RAID関係をWWWで情報検索。
http://www.tairon.co.jp/s-raid.html
どうやら、kernelでmdというのがサポートされていればいいらしい。dmesg|lessでみてみると、md 0.36っていうのが見えたので、カーネルはおっけいと考えて、raidtoolを落としてこようかな? その前に、TurboLinux JapanのページにいってRPMでもないかなとリストをみてみると、手元のパッケージのdisk3:コンパニオンCDに入っているという。しめしめ。すかさず、rootになって、mount /mnt/cdrom、cd /mnt/cdrom/TurboLinuxContrib/RPMSのrpm -ivh raid<tab>)(手抜き)して、インストール。
更に、vi /etc/raidtabに、
raiddev /dev/md0
raid-level 1
nr-raid-disks 2
nr-spare-disks 0
chunk-size 4
persistent-superblock 1
device /dev/hdb1
raid-disk 0
device /dev/hdc1
raid-disk 1
なんてそのまま入力、:wqで書き込み、hdbとhdcのHDDをfdiskで最大容量とって、idをfdにする。
おもむろに、mkraid /dev/md0を実行!
もちろん動かない!(だめじゃん)
ちょうどそのとき、日経Linux 12月号を買ってくる。こいつにはLASER 5 Linuxがついているじゃん。こいつでいくかないかないかな。なんていいながら、
おもむろに、hdaにインストール(つまりTurboLinuxを消した)。
どうもインストーラーがしっくり来ないなあといいながらなんとかインストールが終わったので、同様に、raidtoolをTurboLinux のDisc 3からインストール。raidtabも同じように書いた。
おもむろに、mkraid /dev/md0を実行!
あれ、成功しちゃったよ〜。ふたつのモービルケースのアクセスランプが交互に瞬いている。ここで、cat /proc/mdstatすると、残り時間150分なんてでやがる。おやすみ〜。
翌日。どうやら、LASER5 Linuxのほうは、カーネルバージョンは古いが、mdが0.90になっていることに気付く。どうやら、カーネルのmdが0.90でないとダメっぽいぞ。
ここで、珍案。インストールがお気楽極楽なTurboLinuxを使って、カーネルだけLASER5 Linuxを使ったら如何か? いかがもなにも。 で、やってみた。LASER5 Linuxのカーネルは、RPM形式なので、これは簡単、rpm -Uvh --force --nodeps kernel-*を入力。あとは下のリンクのとおり。
そしたら、LASER5 Linuxのカーネルで動いてしまった。moduleまわりはいじったが、RAID構築も可能。raidstart /dev/md0でちゃんと動き出す。
http://www.kcs-inc.co.jp/linux/raid06.html
ということは…アメリカのRedhat Linuxの最新カーネルのRPMなんて使ったらとても楽そうだな!と思ってみたりする。で、RedHatをうろついてみる。
…よく考えたら、TurboLinuxだって、US版があるじゃん。ということで、TurboLinux.comに飛んでみる。
すると、どうやら、向こうのTurboLinux Serverはカーネルが、2.2.12だって。しかも、パッケージの説明に、Software RAIDの文字が!とりあえず、APM-Kernelのところをダウンロードする。これも時間がかかるなあ。おやすみなさい!
さて、ダウンできたので、ftpでAptivaに転送、カーネルをLASER5のときと同じように上書き。リブート。お、ちゃんとRAIDが開始できる!よしよし。
しかし、WWWによると、自動的にRAIDを開始できると、書いているのに、俺のは開始できないなあ。modulesあたりいじっているし、カーネルかなあ。と思い、rpmでソースをインストールして、cd /usr/src/linuxでmake menuconfigしてみると、案の定、RAIDがmoduleになっていたので、こりゃいかん!と思って、組み込みになおして、
make dep;make clean
make zlilo
make modules;make modules_install
うまくいきませーん。Web調べたら、これはSlackのやり方だってさ。
正解は、
make bzlilo
でした。Slackしか使っていなかったからわかんなかったぜ。
で、コンパイルしてみる。おやすみなさーい(嘘)お出かけしてきました。
どうやら、TurboLinuxなどのRedHat系は、vmlinuzが/ではなく、/bootになければならないらしい。というわけで、Makefileの#INSTALL_PATH=/bootの#をとる。
で、やっと、インストールできた。
リブート。
をを、起動時からmd0をスタートさせている!成功じゃ!
というわけ。終了。おつかれ>おれ
1999年 11月 14日