会社で使っているRedMine,Subversion用のサーバを今より高機能のサーバに移設してもよいよという許可が下りたので、それを楽にするためにMondo Rescueを使ってみることにした。Mondo Resqueは様々なデバイスにバックアップを取ることが可能、かつ、フルバックアップ可能で、しかもハードウェア環境に依存せずにサーバを移動させることができるということだった!ここに惚れた!
インストールについては、日を改めて書くとして、今は、P2P(Physical to Physical)リストアが成功したので、その方法を刻む。
■移動元のサーバ構成
Pen4 1.4G
メモリ 512MB
HDD 40GB
■移動先のサーバ構成
PenD 2.0G
メモリ 2GB
HDD 500GB
【参考URL】
Mondo Rescueを使ってXenServerの仮想ホストへ
KnoppixなどのCDブートLinuxで、移動先サーバのHDDを初期化する。
fdisk /dev/sda ----以下 fdiskコマンド---- Command (m for help): n Command action: p Partition number (1-4): 1 First cylinder : enter Last cylinder: +256M Command (m for help): n Command action: p Partition number (1-4): 2 First cylinder : enter Last cylinder: enter Command (m for help): t Partition number (1-4): 2 Hex Code: 8e Command (m for help): a Partition number (1-4): 1 Command (m for help): p # 構成を確認 Command (m for help): w ----ここまで----
パーティションの作成ができたので、次はLVMで論理ボリュームを作成する。
ボリュームグループ名は、移動元のボリュームグループ名にしておく。
# 物理ボリュームの作成 pvcreate /dev/sda2 pvdisplay /dev/sda2 # ボリュームグループの作成 vgcreate VolGroup00 /dev/sda2 vgdisplay # 論理ボリュームの作成 lvcreate -L 38912m -n LogVol00 VolGroup00 lvcreate -L 2048m -n LogVol01 VolGroup00 lvdisplay /dev/VolGroup00/LogVol00 lvdisplay /dev/VolGroup00/LogVol01 # 各パーティションのフォーマット mkfs.ext3 -j /dev/sda1 mkfs.ext3 -j /dev/VolGroup00/LogVol00 mkswap /dev/VolGroup00/LogVol01
以上が、Knoppixでの作業。
次に、mondoarchiveコマンドで作成されたisoファイルをDVDに焼いて、移動先サーバをDVDでブートする。
boot:と表示されたところで、
interactive ramdisk_blocksize=1024 quiet textonly
で起動させる。(別に、expertでも大丈夫だと思うけど。)
DVDからリストアを選択。
mountlistの書き換えを行う。
移動元がhdaだったので、移動先のsdaに書き換えを行う。
Device Mountpoint Format Size(MB) /dev/sda2 lvm lvm 0 /dev/VolGroup00/LogVol00 / ext3 0 /dev/sda1 /boot ext3 0 /dev/VolGroup00/LogVol01 swap swap 0 --- Are you sure want to save your mountlist and continue?: yes Do you want to erase and partition your hard drivers?: no Do you want to format your hard drivers?: no Do you want to restore all of your data?: yes Initiarize the boot loader?: yes Did you change the mountlist?: yes # あと何種類かあったが、思い出せない… # multipath.confを修正しろとか。でも、何も書き換えずにすぐq!で終了。 # mkinitrd -f -v initrd-2.6.x.y.img 2.6.x.yみたいなのをしろとかあった。 # fstabで書き換え vi /etc/fstab LABEL=/boot → /dev/sda1 # grubのパスを変える grub-install --recheck /dev/sda grub-install /dev/sda cd /boot mkinitrd -f -v initrd-2.6.18.164.6.1.el5.centos.plus.img 2.6.18.164.6.1.el5.centos.plus # 再起動。-fがないと再起動しなかったので、-fを付けた。 reboot -f
走り書きで書いたが、こんな感じだった。
うまくP2Pでサーバの移設ができたっぽい。ハードウェア構造が全く異なるのに、OSが動いて感動。実際は、grubのあたりでいろいろとトラブったんで、すごく感動した。
今回は実験だったので、本番移設はまだだが、この経験を生かしたい。