それではゲストOSの作成方法を見ていきましょう。
RHEL 5では、ゲストOS作成支援ツールとして「virt-manager」と「virt-install」を提供しています。virt-managerでは、GUIを利用したウィザードを通じてゲストOSの作成を進めることができます。virt-installはCUIでの操作になります。
今回は、X Windowが使えない環境でも利用できるvirt-installでの手順を紹介します。
■パーティションの準備からメディアのコピーまで
ゲストOSをパーティションベースで保存する場合は、あらかじめパーティションを作成しておく必要があります。fdiskなどのツールでゲストOS用に確保したい領域を「/dev/sda5」などとして切り出しておきます。LVMの論理ボリュームも指定可能です。この時点でパーティションをフォーマットする必要はありません。
ファイルベースで保存する場合は、virt-installで自動作成できますので、事前の準備は不要です。十分なディスクスペースがあることだけを確認しておいてください。
次に、インストールするOSのレポジトリを用意しておきます。このレポジトリにはNFS、FTP、HTTPのいずれかでアクセスできる必要があります。CentOSなど、OSのレポジトリが近くのミラーサーバで一般公開されている場合は、わざわざ自前で用意せずともそちらを直接指定することも可能です。
ここでは、Apache HTTPサーバを利用してレポジトリを自前で用意する方法を説明します。
前提としてすでにApache HTTPサーバがインストールされて正しく稼働しているものとし、そのドキュメントルートは/var/www/htmlであるとします。
まず、以下のいずれかを用意します。
ドキュメントルート以下に、今回使用するOSのレポジトリを保存するディレクトリを作成します。
# mkdir /var/www/html/rhel5-x86_64
インストールディスクの場合はメディアを物理サーバに挿入して/mntにマウントし、メディアの内容をすべて、HTTPサーバのドキュメントルート以下にコピーします。
# mount -r /dev/cdrom /mnt # cp -a /mnt/* /var/www/html/rhel5-x86_64 # umount /mnt
.isoファイルを使用する場合は、ファイルを任意のディレクトリにループバックデバイスとしてマウントしてコピーします。
# mount -o loop RHEL5-disk1.iso /mnt # cp -a /mnt/* /var/www/html/rhel5-x86_64 # umount /mnt
いずれのケースも、メディアが複数ある場合は、それらすべてについて上記の作業を繰り返し、メディアの全データをコピーします。
■HTTPサーバの設定
次に、HTTPサーバの設定を行います。今回作成した/var/www/html/rhel5-x86_64ディレクトリについて、このディレクトリにアクセスするとその一覧が取得できるように設定します。
Apacheの設定ファイルをエディタで開き、以下の記述を追記します(yumコマンドでApacheをインストールした場合、デフォルトで設定ファイルは/etc/httpd/conf/httpd.confとなっています)。
<Directory /var/www/html/rhel5-x86_64> Option Indexes </Directory>
以下のようにApacheを再起動すれば、レポジトリの用意はOKです。
# apachectl restart
次に、virt-installコマンドにてゲストOSのインストールを開始します。virt-installは、引数なしで実行すると対話形式でゲストOSに最低限必要なパラメータ入力を順に行うことができます。
# virt-install Would you like a fully virtualized guest (yes or no)? This will allow you to run unmodified operating system.
あるいは、引数を与えることでパラメータを一括して指定することもできます。以下は引数を与えて実行する例です。
# virt-install \ --paravirt \ --name=vm01 \ --vcpus=1 \ --ram=512 \ --file=/srv/vm01 \ --file-size=5 \ --location=http://172.20.95.44/rhel5-x86_64 \ --nographics \ --nonsparse
以下、virt-installの各オプションの説明です。
オプション | 内容 |
---|---|
--paravirt | 仮想化モードに準仮想化を指定します |
--name | ゲストOSの識別名を指定します |
--vcpus | ゲストOSへの仮想CPU割り当て個数を指定します |
--ram | ゲストOSへのメモリ割り当て量を指定します(Mbyte単位) |
--file | ゲストOSを保存するファイル、またはパーティションを指定します |
--file-size | ゲストOSを保存するファイルのサイズ、つまりゲストOSに割り当てるディスクサイズを指定します(Gbyte単位) |
--location | OSのリポジトリを指定します |
--nographics | CUIでのインストールを指定します。これを指定しない場合、VNC接続でのインストールとなります |
--nonsparse | ゲストOSを保存するファイルとして、Sparseファイルでない、通常のファイル形式を指定します |
ファイルの作成が完了すると、以下のようにOSのインストールウィザードが表示されます。
あとはウィザードに従ってインストールを進めてください。通常のOSのインストールと同じ手順となります。
インストールが完了すると、リブートを促されます。「OK」としてリブートを行うとゲストOSが再起動し、初回起動時にのみ、いくつかの設定項目が表示されます。このときにSELinuxは無効にしておきます(SELinuxが有効になっていると、Xenの使用時に問題が生じるため)。
Copyright © ITmedia, Inc. All Rights Reserved.