CentOS7 で Xen仮想環境を構築

LPIC 304の勉強ついでにXen環境を作ろうとして中々手間取ったのでメモ。

まずは「Virtualbox上のゲストCentOS7」にxenをインストールする方法。

Virtualboxでハイパーバイザーを使うので、CPU設定で「ネステッドVT-x/AMD-Vを有効化」にチェックを入れる。
CPUコアも4つ割り当てる。

そしてCentOS7を起動してXenを入れる。
下記の記事を参考にしたが、このまんまだとXenのインストールも仮想マシンのインストールもコケるので微修正

Getting started with Xen Virtualization On CentOS 7.x | Computing for Geeks

rootで作業してます。
まずはcentos-release-xen-48をインストール。

yum -y install centos-release-xen-48
yum -y update kernel
yum -y install xen

続いて /etc/default/grub を修正。
dom0のメモリ割当サイズを変更。

# /etc/default/grub
GRUB_CMDLINE_XEN_DEFAULT="dom0_mem=2048M,max:4096M cpuinfo com1=115200,8n1 console=com1,tty loglvl=all guest_loglvl=all"

そしてgrubのxen設定の変更を反映したのちに再起動

grub-bootxen.sh
reboot

再起動後、libvirt関連をインストール。
centos-virt-xen-48のレポジトリを使う事。

yum --enablerepo=centos-virt-xen-48 -y install libvirt libvirt-daemon-xen virt-install
systemctl enable libvirtd
systemctl start libvirtd

そして仮想マシンをインストール。
メモリ使用量が少なくて済むCentOS5を入れます。

virt-install -d \
--connect xen:/// \
--name testvm \
--os-type linux \
--vcpus=2  \
--paravirt \
--ram 1024  \
--disk /var/lib/libvirt/images/testvm.img,size=10 \
--nographics -l "http://archive.kernel.org/centos-vault/5.0/os/x86_64/" \
--extra-args="text console=com1 utf8 console=hvc0"

これでCentOS5のインストール画面が出てくるので通常通りインストールすればOK。
起動を確認したら一旦終了。

再び仮想マシンを起動して、仮想マシンのコンソールに接続。

virsh --connect xen:/// start testvm
xl console testvm

Ctrl + ] でDomain0のコンソールに戻れる。