DomainUに対してインストールメディアを割り当てる場合、URLでの指定しかできない。よって、Webサーバを用意してインストールCD/DVDドライブをhttp経由で認識させられるように準備する。私の場合はなんといっても手元のPCがMac Bookなので、Mac OSのWeb共有を有効化するだけでApacheの準備OK(^_^;)!CentOSはDVDイメージファイル(.iso)しかないが、MacOS Xの場合はDiskImageMounterが標準であるのでこれも問題なし。
Mac OS XにISOファイルを溜め込んでいるUSB HDDストレージを接続(実はこれはTime Machine用でもある)、その中にあるISOファイルを選択し、DiskImageMounterでマウントする。続いてマウントしたパスを確認。これはターミナルでmountコマンドを打つのが一番手っ取り早い。
Pipoco:usr takao$ mount /dev/disk0s2 on / (hfs, local, journaled) devfs on /dev (devfs, local) fdesc on /dev (fdesc, union) map -hosts on /net (autofs, automounted) map auto_home on /home (autofs, automounted) /dev/disk1s2 on /Volumes/Time Machine バックアップ (hfs, local, nodev, nosuid, journaled) /dev/disk2 on /Volumes/CentOS_5.1_Final (cd9660, local, nodev, nosuid, read-only, noowners, mounted by takao)
一番最後の"/Volumes/CentOS_5.1_Final"がマウントパスだ。
MacOS X Leopardに標準で搭載されているApache2.2の設定ファイルは"/etc/apache2/httpd.conf"にある。このファイルを直接編集してもいいが、"/etc/apache2/users/"フォルダ配下にある[ユーザ名].confファイルもApacheの起動時に読み込まれるので、そちらにAliasを追記。
Alias /CentOS/ "/Volumes/CentOS_5.1_Final/"Options Indexes FollowSymlinks MultiViews AllowOverride None Order allow,deny Allow from all
定義ファイルの保存を行った上でApacheを再起動し、"http://[MacのIPアドレス]/CentOS/"でマウントしたイメージファイルのパスがWebブラウザで参照できればOKだ。
ちなみに、MacOS XでのApacheの再起動はこんなかんじで。
Pipoco:apache2 takao$ /usr/sbin/apachectl restart
…で、やっとこれでインストールメディアのためのURLパスの準備が済んだので、ここからDomainUの作成という本題に入る。
まずはお約束のサービス動作確認を実施。
[root@XenCentOS ~]# service xend status xend is running
XenのDomainU導入に際して事前に決めておかなければならない情報は以下の通り。
- 準仮想化(Para-virtualization)仮想マシンを作成するのか、完全仮想化(Full Virtualization)仮想マシンを作成するのか
- 仮想マシン名
- 割り当てるメモリサイズ
- 仮想マシンイメージファイルのパス
- イメージファイルのサイズ(仮想マシンのディスク容量)
- インストールソースファイルのパス
今回はこんなかんじでいってみるかな。
仮想マシン名 | VM_CentOS_1 |
割り当てるメモリサイズ | 256MB |
仮想マシンイメージファイルのパス | /var/xen/vm_centos_1.xenvm |
イメージファイルのサイズ | 4GB |
CentOSでの仮想マシンの作成には、"virt-install"を使う。念のため書いておくけど、あまりにもメモリ量が少ないと仮想マシンの作成ができないのでご注意を。
[root@XenCentOS ~]# virt-install --nographics What is the name of your virtual machine? VM_CentOS_1 How much RAM should be allocated (in megabytes)? 256 What would you like to use as the disk (path)? /var/xen/VM_CentOS_1.xenvm How large would you like the disk (/var/xen/VM_CentOS_1.xenvm) to be (in gigabytes)? 4 What is the install location? http://172.16.108.1/CentOS/
こんなかんじでパラメータを入力すると、インストール処理が始まる。"nographics"オプションを付けているので、ゲストOSのインストールはテキストモードで。後の手順はまったく普通の物理マシンへのCentOSの導入手順と変わらない。
仮想マシンの作成完了後、仮想マシンを起動するには"xm"コマンドを使用する。
上記で作成した"VM_CentOS_1"仮想マシンを起動するには、以下の通り。
[root@XenCentOS ~]# xm create -c VM_CentOS_1
コンソールが仮想マシンに切り替わり、起動プロセスが表示される。Domain0のコンソールに戻るには、"Ctrl"+"]"を押すことによって戻ることが出来る。Domain0が動作している状態で"xm"コマンドで確認すると、DomainUとして"VM_CentOS_1"が動作していることがわかる。
[root@XenCentOS ~]# xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 1242 1 r----- 443.8 VM_CentOS_1 3 255 1 -b---- 37.4
DomainUのコンソールに戻るには、同じく"xm"コマンドを使用する。
すでに起動済みの"VM_CentOS_1"仮想マシンのコンソールに戻るには、以下の通り。
[root@XenCentOS ~]# xm console VM_CentOS_1
なお、仮想マシンのシャットダウンは通常のOSと同様の方法で行うことが可能だが、"xm"コマンドでもシャットダウンを行うことが出来る。
"VM_CentOS_1"仮想マシンを"xm"コマンドを使用してシャットダウンするには、以下の通り。このコマンドによりシャットダウンを実行した場合でも、正常なシャットダウンプロセスが実行される。
[root@XenCentOS ~]# xm shutdown VM_CentOS_1