長い休暇を終えて職場に戻った最初の週は、まだ足取りを掴みかねていて、ちょっと大変でした・・・ちなみに今週は、いくつかの古いXenサーバーをCentOS 6.5 + Xen 4.2にアップグレードしました。
RedHatがRHEL 6のXenを放棄して以来、Xenのソースコードをダウンロードしてコンパイルすることが、RHEL/CentOS 6.xにXenをインストールする唯一の方法となっているようです。 プロジェクトは、利用可能なXenソフトウェアのサードパーティソースを提供し、ソースコードを自分でコンパイルする手間を省きます。Xen4 6は、CentOS、Xen、Citrix、Godaddy、Rackspaceのコミュニティと関連チームによって開発されたオープンソースプロジェクトで、CentOS 6.x用の安定したXenツールチェーンを維持し、CentOS 6上でXenを簡単に実行できるようにします。CentOS 6がより簡単で信頼できるものになります。
取付
システム全体をアップグレードして再起動した後、公式のCentOS Xenソースを追加し、Xenカーネルと関連ツールをインストールします。CentOS-6.5-x86_64-minimal.isoの最小インストールにはPerlが含まれておらず、XenツールにはPerlのサポートが必要なので、最初にPerlをインストールする必要があることに注意してください:
# yum update
# reboot
# yum install centos-release-xen
# yum update
# yum install perl
# yum install xen
XenをサポートするLinuxカーネルをインストールしたら、grub.confに新しいエントリを追加して、XenをサポートするLinuxカーネルがデフォルトで起動するようにする必要があります。 これはgrub-bootxen.shを使用することで自動的に行うことができ、完了したらgrub.confファイルを開いて再確認することができます:
# /usr/bin/grub-bootxen.sh
# vi /etc/grub.conf
...
title CentOS (3.10.25-11.el6.centos.alt.x86_64)
root (hd0,0)
kernel /xen.gz dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all
module /vmlinuz-3.10.25-11.el6.centos.alt.x86_64 ro root=/dev/mapper/vg_node11-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg_node11/lv_swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rd_LVM_LV=vg_node11/lv_root rhgb quiet
module /initramfs-3.10.25-11.el6.centos.alt.x86_64.img
...
システムを再起動すると、デフォルトで Xen カーネルになっているはずです。uname -r や xm info を使って、インストールが成功したことを確認できます:
# reboot
# uname -r
3.10.25-11.el6.centos.alt.x86_64
# xm info
host : xen01.vpsee.com
release : 3.10.25-11.el6.centos.alt.x86_64
version : #1 SMP Fri Dec 27 21:44:15 UTC 2013
machine : x86_64
nr_cpus : 8
nr_nodes : 1
cores_per_socket : 4
threads_per_core : 1
cpu_mhz : 2393
hw_caps : 1febfbff:28100800:00000000:00003f40:80982201:00000000:00000001:00000000
virt_caps :
total_memory : 8191
free_memory : 7073
free_cpus : 0
xen_major : 4
xen_minor : 2
xen_extra : .3-26.el6
xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p
xen_scheduler : credit
xen_pagesize : 4096
platform_params : virt_start=0xffff800000000000
xen_changeset : unavailable
xen_commandline : dom0_mem=1024M,max:1024M loglvl=all guest_loglvl=all
cc_compiler : gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)
cc_compile_by : mockbuild
cc_compile_domain : centos.org
cc_compile_date : Tue Dec 10 20:32:58 UTC 2013
xend_config_format : 4