P2V マイグレーション(Xen 準仮想化)

CentOS4,CentOS5で動いてるマシンを、CentOS5のXenハイパーバイザ内へP2Vマイグレーションしてみよう、ただし、XenのサーバがIntel-VT,AMD-Vがついてないので、完全仮想化でなく、準仮想化として引っ越した時のメモ。まとめるのが面倒になってきたので、必要かどうかわからないけど変更したほうがいいかもしれない箇所を列挙。
ゲストは、CentOS5かCentOS4.6以上、まず、移行する前準備
◆DomU用のKernelをインストール

CentOS5
yum install kernel-xen
CentOS4.6
yum install kernel-xenU

◆modprobe.confの修正

/etc/modprobe.conf
alias eth0 xennet
alias eth1 xennet
alias scsi_hostadapter xenblk

◆DomUカーネル用initrdの作成

例1
mkinitrd /boot/initrd-test.img 2.6.9-67.0.22.ELxenU --with xenblk --with xennet --preload xenblk --preload xennet
例2
mkinitrd /boot/initrd-test.img 2.6.18-92.1.6.el5xen --with xenblk --with xennet --preload xenblk --preload xennet

「2.6.9-67.0.22.ELxenU」とか「2.6.18-92.1.6.el5xen」は「/lib/modules/」内のKernelバージョン名
◆grub.confの設定

/etc/grub.conf
例1
title CentOS (2.6.9-67.0.22.ELxenU)
root (hd0,0)
kernel /boot/vmlinuz-2.6.9-67.0.22.ELxenU ro root=LABEL=/ console=xvc0
initrd /boot/initrd-test.img
例2
title CentOS (2.6.18-92.1.10.el5xen)
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-92.1.10.el5xen ro root=LABEL=/ console=xvc0
initrd /boot/initrd-test.img

kernelのパラメータに「console=xvc0」をつける
initrdのファイル名を上で作ったinitrdのファイル名にする。
◆fstabの確認
rootとかがラベル運用になっていない時は、/dev/hda(/dev/sda)→/dev/xvdaにしておく(Xenの定義ファイル次第)
◆XenのDomUを作成
省略。

dd if=/dev/hda of=xenimage.img
とか、cp とか rsyncとか

◆DomU定義作成

/etc/xen/guestname
name = "guestname"
uuid = "9ade4b0d-23c7-c31f-b859-6fccf49de495"
maxmem = 512
memory = 512
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [  ]
disk = [ "tap:aio:/home/xen/test.img,xvda,w" ]  ←DISKイメージ
vif = [ "mac=00:16:3e:xx:xx:xx,bridge=xenbr0" ] ←Network設定

◆起動

xm create guestname -c

コンソールでDomU用のカーネルを選択して起動

P2V マイグレーション(Xen 準仮想化)」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA