#CentOS5のDom0上でCentOS5のDomUを動かす方法は『CentOS 5でXenを使ってみる』を参照。
結論を言うと、FC5/Dom0の方に、パッケージkernel-xen0ではなく、kernel-xenをインストールすればよい。FC5のkernel-xen0は、PAE(Physical Address Extension: 4GB以上の物理メモリにアクセスできる技術)に対応していないが、CentOS5のDomUのカーネル(こちらもパッケージ名はkernel-xen)はPAEに対応している。Dom0とDomUのPAE対応に齟齬があるとDomUが立ち上がらない。
なお、2007.5.8(火)現在、FC5のkernel-xen最新版は2.6.20-1.2316だが、どうも2.6.20系はバグが多いらしく、安定動作しないようだ。手元の環境では、2.6.19-1.2288.2.4を使用した。
なお、Dom0をPAE対応に変更すると、それまで動いていたPAE非対応のDomUが動作しなくなる。FC5/DomUであれば、kernel-xenUで動作しているものがそれに当たる。この問題を回避するには、このDomUにPAE対応のカーネルをインストールすればよいが、注意を要する点がある。
例えばFC5では、kernel-xenUは、仮想ディスクのドライバがカーネル本体に組み込まれていた。一方、kernel-xenでは明示的にこれをドライバモジュールとしてロードする必要がある。ロードしなければディスクにアクセスできないため、DomUが立ち上がらない。次のように作業すればよい。
- PAE非対応のDom0(FC5ならkernel-xen0)上でPAE非対応のDomU(FC5ならkernel-xenU)を起動し、DomUの/etc/modprobe.confに以下の行を追加する。
alias scsi_hostadapter xenblk
- PEA対応のカーネルをインストールする(FC5ならkernel-xen)。
# yum install kernel-xen
- DomUを停止。
# shutdown -h now
(もしくは、Dom0上で`xm shutdown マシン名') - PAE対応のDom0(FC5ならkernel-xen)上で
# xm create マシン名
を実行し、DomUを起動。
なお、今後、パッケージを更新した場合にkernel-xen[0U]でなくkernel-xenがデフォルトで起動されるようにするために、/etc/sysconfig/kernelを編集した方がよいだろう。このファイル中で、
# DEFAULTKERNEL specifies the default kernel package type DEFAULTKERNEL=kernel-xenUとなっている部分を
# DEFAULTKERNEL specifies the default kernel package type DEFAULTKERNEL=kernel-xenに変更する。
0 件のコメント:
コメントを投稿