2008年6月17日

ケース交換の効果

中身はそのまま(HDD増設)でMicroATX用ケースからATXサイズのケースに交換したら、HDDの温度が10度くらい下がった

今年の夏はこれでOK(たぶん

hdd-temp.png


シレンがここに

風来のシレン3買ってしまった。

存在を忘れていたのにボーナス支給日に日記に書いて思い出させたむー○ーが全て悪いと思います。


でも未開封
社会人になってやりこみ系のゲームは本当にダメになった(大人的な意味で

2008年6月16日

自爆

前回RAID5のエントリを書いたが、arrayを作る際に auto=yes を入れ忘れた。
で、ルートをコピーしようと再起動してシングルユーザーモードになったりしてたら...再起動時に何故かディスク4本で構成したmd0が/dev/sdcと/dev/sddの2本に...そしてdegradedとかなって再構成がはじまり。。。

md0上にあったLVに書いたデータが全てなくなった。拾い出す方法はあったのかもしれないけど分からなかったしやる気もなかった。

で、身内で使ってた大事なデータがあぼーん orz
なんでコピーする前のデータを消していたのか。。。


意気消沈。このブログも消えたと思っていたら、DBは別パーティションで大丈夫だった。HTMLやCGIをバックアップから戻した際にMT4.1→MT4.0になったけど、勝手にDBから拾ってきて再構成されてた。
(あんまりうれしくなかったけど)


データを失わないためにRAID作ろうとしたのにこの様(ざま)
ルートパーティションを移動する際はちゃんと計画を立ててからやろうと思います。


その後LVMについて調べたり考えたりしたところ
・ / をLVMにする意味は少ない。知識の足りないところで / をやるのは危険
・ /boot はLVMに置けなさそう
らしい
→/boot, / はRAID1でやることにする。ディスクが必要だけど(ぉ

2008年6月15日

RAID5 + LVM

続けてサーバーネタ

500GBのHDD×2と新しいケースを調達。これからのアッチイ夏に備えてマシンの冷却性能を向上&暑さでHDDが壊れても(チョッとだけ)平気なように冗長化構成をとった。

買ったケースはThree hundred(Antec)
メインPCのうるさかったFANを交換してコイツに追加、計4つのケースFANがまわってます。
おかげでメインPCは静かに、サーバーは大分うるさくなりました。
でもトイレサーバーなので問題無し

mdadmで500GBのHDD×4を使ってRAID-5に、HDDのパーティションはディスク全部をつかって1つだけ。

#fdisk /dev/sda
...(略) を4回
# mdadm -C /dev/md0 -l5 -n4 /dev/sd[abcd]1
# echo 'DEVICE /dev/hd[abcd]*' > /etc/mdadm/mdadm.conf
# mdadm -Ds >> /etc/mdadm/mdadm.conf

これでソフトウェアRAID5化は終了。


約1.5TBもある領域でパーティションをどう切るか悩んでいたけど阿呆らしくてヤメ
LVMを入れて動的に管理できるようにする

/swap と /bootのことを忘れていたが、これは元ルートシステム用の250GB IDE HDDにやらせる。
RAID5に/bootは乗せられないらしい。と、swapはそもそも発生することが殆どないのでRAID化もできるが深くは考えない。

インストールから

# apt-get install lvm2

贅沢に全領域でLVMGroop

#pvcreate /dev/md0
# vgcreate vg0 /dev/md0

確認

# vgdisplay


システムの / 用ボリュームを作成。同様に他のボリュームもlvdisplayで確認しながら作成

# lvcreate -L 10G -n rootlv vg0

フォーマット、そして / 引越し用にマウント

# mkfs.ext3 /dev/vg0/rootlv # mount /dev/vg0/rootlv /target/root

でもRAID再構成が終わらない...ので待ち。さすがに時間かかるか。

#cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid5 sdd1[4] sdc1[2] sdb1[1] sda1[0]
1465151808 blocks level 5, 64k chunk, algorithm 2 [4/3] [UUU_]
[=========>...........] recovery = 49.4% (241313040/488383936) finish=169.5min speed=24282K/sec

unused devices:

当初は最近出た1プラッタ320GBのHDDでRAID5したら速そうと妄想したが、1から数をそろえるのはお金かかるので断念した。


次は大仕事?な / の引越しを予定。

2008年6月14日

Disklessマシン

NFS rootを利用してDisklessなDebianを、デスクトップマシンとして利用したいとなんとなく思いついた。
使うマシンは埃をかぶって眠っていた我が家の最小自作マシン(M/B VIA EPIA-5000)

内蔵していたHDDとケースFANも外して完全に駆動部品無しの無音マシン~
できればVGAカードも乗せたい(意味は無い)
用途は不明。Linuxルータにできるけど、それには大きすぎる。


で、いろんなサイトに出てる情報を掻き集め、試行錯誤しつつ完成。
主に参考にさせていただいたのは diskless Fun's Wiki

そのメモ↓

■必要なもの
・DHCPサーバ
・TFTPサーバ
・NFSサーバ

ウチではDHCPとNFSサーバが別なので、TFTPサーバをNFSサーバと一緒にした
全部Debianなので、説明もDebian用


▼DHCPサーバの設定
以下を /etc/dhcp3/dhcpd.conf に追加

host hogehoge{
hardware ethernet 00:0C:29:xx:xx:xx; #DisklessマシンのMACアドレス
fixed-address 192.168.xxx.xxx;
option host-name "hogehoge";
next-server 192.168.xxx.yyy;  #NFS(TFTP)サーバのIPアドレス
filename "pxelinux.0";
option root-path"/tftpboot/xxxxxxxx"; #NFS rootのパス
}

▼NFSサーバの設定

tftpdのルートとNFS root用のディレクトリは別にしたかったのだけど、PXEブート後にkenelイメージへのパスが渡せなくて挫折(ショボ

で、以下のように作成

mkdir /tftpboot
mkdir /tftpboot/hogehoge #NFS root用

で、hogehoge以下に既存Debianマシンからシステムディレクトリを全て持ってきます。
debootstrap でも作れるらしいが、自分の環境ではうまく行かなかったのでまた挫折
(/lib とかが空)

ただ、現行マシンは色々と入れて大きくなったので、Vmwareに新規に最小インストールした(汗
そこから /bin /boot /dev /etc /home /lib /opt /sbin /usr /var あたりを /tftpboot/hogehoge/. にコピー
そして

chroot /tftpboot/hogehoge # vi /etc/initramfs-tools/initramfs.conf

BOOT=nfs #ここだけ変更 local -> nfs

# update-initramfs -u
# vi /etc/fstab

#
192.168.xxx.yyy:/tftpboot/hogehoge / nfs defaults 0 0
proc /proc proc defaults 0 0

# vi /etc/network/interfaces
(eth0関連を全てコメントアウト)
# exit

これでOK


▼TFTPサーバの設定
まずはインストール

# apt-get install tftpd-hpa

daemonで動かすのも無駄なのでinet経由。/etc/inetd.confを編集してinetd再起動

tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpboot
#↑の最後のパスはtftpdのroot

そして設定を編集

# mkdir /tftpboot/pxelinux.cfg # vi /tftpboot/pxelinux.cfg/default

DEFAULT linux
LABEL Debian etch
KERNEL hogehoge/vmlinuz
APPEND initrd=hogehoge/initrd.img root=/dev/nfs NFSOPTS="-o nolock,udp,retrans=10,wsize=8192,rsize=8192" nfsroot=192.168.127.132:/tftpboot/hogehoge ethernet=eth0 ip=dhcp

/tftpboot/hogehoge/以下が↑のパスに合致するか一応確認。APPNDは一行で
NFSOPTSはNFSのオプション。UDPを指定しなかったらブート時にNFSサーバーの応答がなくなってしまったのでつけてみたら解消したので一応こうした。

でもこれはVmware上のゲストをNFS root化してテストしただけで、リアルマシンではまだ試してません。
↑のkernelは余計なモジュールが多いので、メモリ節約のためにもmakeし直した方がいいかも

それでなくてもこの設定には無駄とかいっぱいありそう...

#次はNFSサーバにもなってるマシンのRAID5化