Linux/CentOS + Xen の変更点


*CentOS + Xen [#pf2fe405]

**CentOSをインストール [#u5a753f9]
下記のようにインストール

-開発ツールにチェック
-仮想化にチェック
-「ファイアウオールの設定」では「ファイアウォールなし(O)」
-「SELinuxを有効にしますか?(S)」では「無効」


**ゲストOSのインストール [#j5c0fecb]
 # virt-install \
 -n SVVCO51 \
 -f /var/lib/xen/images/SVVCO501.img \
 -s 20 \
 -r 256 \
 -l ftp://ftp.riken.jp/Linux/centos/5.2/os/i386 \
 --nographics

**仮想マシンマネージャを起動 [#icae955e]
[アプリケーション]→[システムツール]→[Virtual Machine Manager]


*DomainUにFreeBSDを入れる [#ff736a8b]

**FreeBSDをまずは普通にインストールし、cvsupをインストール [#b08c1d3a]

**Xen対応ソースを入手 [#ra158e13]
 # cp /usr/share/examples/cvsup/stable-supfile /etc/xen-supfile
 *default host=CHANGE_THIS.FreeBSD.org
              ↓
 *default host=cvsup.jp.FreeBSD.org

 *default release=cvs tag=RELENG_7
              ↓ 
 *default release=cvs tag=.

 # cvsup /etc/xen-supfile

**ディスクイメージファイルの用意 [#r7522a84]
ディスクイメージ用のファイル領域を確保。確保する容量は適宜調整(この場合、1024byte * 10M blockで、10GB確保している)
 # dd if=/dev/zero of=freebsd.img bs=1k count=10M 

書き出したファイル"freebsd.img"を、デバイス/dev/md0とする
 # mdconfig -a -t vnode -f freebsd.img -u 0 

ラベルの初期化
 # bsdlabel -w /dev/md0 


ラベル編集
 # bsdlabel -e /dev/md0 
 ---------------------------------------------------------------------------
 # /dev/md0:
 8 partitions:
 #        size   offset    fstype   [fsize bsize bps/cpg]
   a:  3670000        0    4.2BSD     2048 16384 28552 
   b:   524288  3670000      swap                    
   c:  4194304        0    unused        0     0         # "raw" part, don't edit

ファイルシステムを初期化
 # newfs /dev/md0a
 # newfs /dev/md0b
 # newfs /dev/md0c



ディスクイメージを/mntディレクトリにマウント
 # mount /dev/md0a /mnt


**Xen対応ソースをビルド・ディスクイメージ内にインストール [#wd3d2911]
 # cd /usr/src
 # make buildworld
 # make installworld DESTDIR=/mnt

**Xen対応カーネルをビルド・インストール [#acbbce6c]
 # make buildkernel KERNCONF=XEN
 # make installkernel KERNCONF=XEN DESTDIR=/mnt
 # make distribution DESTDIR=/mnt


**/mnt/etc/fstab を以下のようにする。 [#n754f00a]
&color(Red){デバイス名の数字"769"は変更可能(Xenの設定ファイルで指定する予定の値)};
 # Device                Mountpoint      FStype  Options         Dump    Pass#
 /dev/xbd769b            none            swap    sw              0       0
 /dev/xbd769a            /               ufs     rw              1       1

**/mnt/etc/ttys で ttyv の行をコメントアウトして、次のような行を足す。 [#m14a8599]
 xc0     "/usr/libexec/getty Pc"         vt100   on  secure

 # cp /mnt/boot/kernel/kernel freebsd.kern
 # umount /mnt
 # mdconfig -d -u 0

**freebsd.imgと、freebsd.kernの2つのファイルをDom0 環境へコピー [#o18eed1d]

**Dom0 環境へコピーした。xen の設定は [#n72a9326]
 name = "freebsd_test"
 kernel ="/freebsd/freebsd.kern"
 uuid = "e788b52c-e71c-d317-ccac-98be22e9c86a"
 maxmem = 256
 memory = 128
 vcpus = 1
 on_poweroff = "destroy"
 on_reboot = "restart"
 on_crash = "restart"
 vfb = [  ]
 disk = [ "file:/freebsd/images/freebsd.img,hda1,w" ]
 vif = [ "mac=00:16:3e:a3:3d:df,bridge=xenbr0" ]
 extra = "boot_verbose"
 extra += ",boot_single"
 extra += ",kern.hz=100"
 extra += ",vfs.root.mountfrom=ufs:/dev/xbd769a"

※uidは適当に設定する。 

※vif内のmac=以降はMACアドレスの指定。後半48bit[a3:3d:df]を、ランダムの値で設定する。 

※xbd769は、FreeBSDのディスクイメージ内の設定ファイル"fstab"内で指定した数字と合わせる。


*xenコマンド [#ue38010b]
vmの一覧 
 xm list 
 xm create -c vm001 
vmの起動 
 xm create vm001 
console接続 
 xm console vm001 
hostに 
 Crtl + ] 
 shutdown 
 xm shutdown vm001 
強制終了 
 xm destroy vm001 
再起動 
 xm reboot vm001