仮想マシンのデファクトスタンダードっぽいXenを使ってみる。ここでのバージョンは、etchとする。Xenのバージョンは、3.0となる。 #contents *パッケージのインストール [#d8b0a5b6] xen-ioemu-xxxは、完全仮想化で使うパッケージのようだ。完全仮想化はボトルネックが大きく、Linuxしか使う予定がないため使用しない。 apt-get install xen-linux-system-2.6.18-5-xen-amd64 xen-tools xen-utils-3.0.3-1 bridge-utils *grubの変更 [#d155a619] デフォルトだと、すべての実装メモリがDomain0に割り当てられるので、これを制限する。~ ここでは、Domain0に512MBのメモリと2個のCPUを割り当てる。 -/boot/grub/menu.lst kernel /xen-3.0.3-1-amd64.gz dom0_mem=524288 dom0_max_vcpus=2 *DomainU作成の準備 [#t9452b09] ループバック用ディレクトリと、自動起動用設定ファイルのディレクトリを作成。 mkdir /home/xen mkdir /etc/xen/auto デフォルト値の変更。 -/etc/xen-tools/xen-tools.conf dir = /home/xen debootstrap = 1 dist = etch mirror = http://cdn.debian.or.jp/debian/ kernel = /boot/vmlinuz-2.6.18-5-xen-amd64 initrd = /boot/initrd.img-2.6.18-5-xen-amd64 -/etc/xen/xend-config.sxp (network-script network-bridge) #(network-script network-dummy) -/etc/default/xendomains XENDOMAINS_SAVE= XENDOMAINS_RESTORE=false ネットワークブリッジの作成。 # /etc/xen/scripts/network-bridge start vifnum=0 bridge=xenbr0 netdev=eth0 *DomainUの作成 [#y6067cfc] ホスト名を指定してDomainUを作成する。ネットワークのデフォルトを設定していないので、DHCPを指定する。 xen-create-image --hostname domu01 --dhcp 作成したDomainUに割り当てるCPUを指定する。CPU2〜7の6つをDomainU専用に割り当てる。CPUの割り当てを変えた後は、createで起動させないと反映されないようだ。また、NICの設定も変更する。 -/etc/xen/domu01.cfg cpus = '2,3,4,5,6,7' vcpus = 6 vif = [ 'mac=00:16:3e:00:00:11,bridge=xenbr0' ] #br xen-create-image を使う場合は、DomainUを物理ディスクに割り当てることができないようなので、手作業でディスクイメージを作成する。 mkfs.xfs /dev/sda2 mount /dev/sda2 /mnt debootstrap etch /mnt #br xen-create-image を使う場合は、DomainUを物理ディスクに割り当てることができないようだ。このため、一時的にループファイルシステム上に作った後ファイルを移動する。 mkfs.xfs /dev/sda2 mkdir /mnt/1 ; mkdir /mnt/2 mount -o loop /home/xen/domains/domu01/disk.img /mnt/1 mount /dev/sda2 /mnt/2 cp -a /mnt/1/* /mnt/2/ DomainUの設定ファイルも、物理ディスクを使うように変更。 -/etc/xen/domu01.cfg #disk = [ 'file:/home/xen/domains/domu01/disk.img,sda1,w', 'file:/home/xen/domains/domu01/swap.img,sda2,w' ] disk = [ 'phy:/dev/sda2,sda1,w', 'phy:/dev/sda6,sda2,w' ] #br 自動起動の設定も行う。 cd /etc/xen/auto; ln -s ../domu01.cfg *DomainUの起動 [#k889dd62] コンソールを割り当てて起動。ブート状態を見ることができる。 xm create domu01.cfg -c *Xenの基本コマンド [#o043c2bd] -DomainU(domu01)作成 xen-create-image --hostname domu01 ... -DomainU(domu01)起動 xm create domu01.cfg -DomainU(domu01)停止 xm shutdown domu01 -DomainU(domu01)コンソール割り当て xm console domu01 -CPU割り当て表示 xm vcpu-list *参考 [#r4000a9a] http://w3.doshisha.ac.jp/~kueda/index.php?Debian%E3%81%ABXen~ http://seldon.cocolog-nifty.com/petapeta/2007/03/etch_xen.html~ http://seldon.cocolog-nifty.com/petapeta/2007/04/etch_xen.html~ http://my-server.jp/archives/2006/11/xen_1.html~ http://nakajin.dyndns.org/xen.html~ http://antas.jp/blog/ina/archives/2007/10/xen_cpupin_cleared.html~ http://webframe.sourceforge.jp/wiki/index.php?Xen~ http://tomo.ac/goodstream/xen/centos5/tips.html~