14.3.2. Red Hat Enterprise Linux 3 で Para-virtualized ドライバーのインストールと 設定
このセクションには、Red Hat Enterprise 3 ゲストオペレーティングシステム内での para-virtualized ドライバーに関する詳細案内が含まれています。
注記
これらのパッケージは para-virtualized ディスクからのブートをサポートしていません。 ゲストオペレーティングシステムカーネルのブートには、まだ模倣 IDE ドライバーが 必要です。他の(システム関連ではない)ユーザースペースアプリケーションとデータは para-virtualized ブロックデバイスドライバーを使用することができます。
ドライバーのインストール
para-virtualized ドライバーを使用した Red Hat Enterprise Linux 3 ゲストのインストールに必要な手順を以下に示します。
- 使用しているハードウェアアーキテクチャとカーネル変種用の
kmod-xenpvrpm を ゲストオペレーティングシステムにコピーします。 rpmユーティリティを使用して RPM パッケージをインストール します。使用するゲストオペレーティングシステムの変種とアーキテクチャに必要なパッケージを 正しく識別していることを確認して下さい。rpm -ivh kmod-xenpv*
[root@rhel3]# rpm -ivh kmod-xenpv*Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 以下のコマンドを実行して正しい自動化した para-virtualized ドライバーのロードを 有効にします。%kvariant は、それに対して para-virtualized ドライバーがビルドされたカーネル変種であり、%release は その para-virtualized ドライバーのリリースバージョンに相当します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記
Red Hat Enterprise Linux 3 が MODVERSIONS を 有効にしているため、バイナリドライバーモジュールをインストールする時点で、insmodが警告を生成します。これらの警告は無視 できるものです。 /etc/modules.confを確証して、以下のようなeth0用のエイリアスがあることを 確認します。複数のインターフェイスを設定する予定の場合は、各インターフェイス毎に追加の 行を加えます。alias eth0 xen-vnif
alias eth0 xen-vnifCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/rc.localを編集して行を追加します:insmod /lib/modules/'uname -r'/extra/xenpv/%release/xen-vbd.o
insmod /lib/modules/'uname -r'/extra/xenpv/%release/xen-vbd.oCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記
“%release” を 実際の para-virtualized ドライバーのリリースバージョン(例えば、0.1-5.el)で 入れ替えます。para-virtualized ドライバーRPM パッケージを更新する場合は、そのリリースバージョンを 適切なバージョンに更新することを確認して下さい。- 仮想マシンをシャットダウンします(ゲスト内で “
#shutdown -h now” を使用)。 - 以下のようにして、
/etc/xen/YourGuestsName内のゲスト設定ファイルを編集します:- “
vif=” エントリから “type=ioemu” エントリを削除します。 - 追加のディスクパーティション、ボリューム、又は LUN をゲストに追加して para-virtualized (
xen-vbd) ゲストドライバー経由で それらにアクセスできるようにします。 - 各追加の物理デバイス、LUN、パーティション、又はボリューム用に、以下に示した ようなエントリを、ゲスト設定ファイル内の “
disk=” セクションに追加します。オリジナルの “disk=” エントリも 以下のエントリに似ているかも知れません。disk = [ "file:/var/lib/libvirt/images/rhel3_64_fv.dsk,hda,w"]
disk = [ "file:/var/lib/libvirt/images/rhel3_64_fv.dsk,hda,w"]Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 追加の物理デバイス、LUN、パーティション、又はボリュームを追加すると、 XML 設定ファイル内の para-virtualized ドライバーのエントリは以下にある エントリに似たものになります。
disk = [ "file:/var/lib/libvirt/images/rhel3_64_fv.dsk,hda,w", "tap:aio:/var/lib/libvirt/images/UserStorage.dsk,xvda,w" ]
disk = [ "file:/var/lib/libvirt/images/rhel3_64_fv.dsk,hda,w", "tap:aio:/var/lib/libvirt/images/UserStorage.dsk,xvda,w" ]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記
ファイルベースのイメージが使用されている場合、para-virtualized デバイス用に “tap:aio” を使用します。
virshコマンドを使用して仮想マシンをブートします:virsh start YourGuestName
# virsh start YourGuestNameCopy to Clipboard Copied! Toggle word wrap Toggle overflow
警告
weak-modules と modversions のサポートは Red Hat Enterprise Linux 3 で提供されていないため、 para-virtualized ドライバーはシステムへの自動的追加とロードはされません。 モジュールを挿入するには、以下のコマンドを実行します。
insmod xen-vbd.ko
Red Hat Enterprise Linux 3 では
xen-vbd を使用するブロック デバイス用に特殊ファイルの手動作成が必要になります。以下の手順が、para-virtualized ブロックデバイスの作成法と登録の案内となります。
para-virtualized ブロックデバイスドライバーがロードされた後に、 以下のスクリプトを使用して特殊なファイルを作成します。
各追加の仮想ディスクに、マイナー番号を 16 単位で増加します。以下の例では、追加デバイスマイナー番号 16 が作成されています。
mknod /dev/xvdc b $major 16 mknod /dev/xvdc1 b $major 17
# mknod /dev/xvdc b $major 16
# mknod /dev/xvdc1 b $major 17
これが、以下のコマンドで作成される次のデバイスを 32 にします:
mknod /dev/xvdd b $major 32 mknod /dev/xvdd1 b $major 33
# mknod /dev/xvdd b $major 32
# mknod /dev/xvdd1 b $major 33
ここで、作成したパーティションが使用できることを確認します。
上記の出力で、パーティション設定をしたデバイス “
xvdb” がシステムに利用可能であることが判ります。
以下の手順はゲストに新しいデバイスを追加して、再起動後にそれを永続化します。 全てのこれらのコマンドはゲスト上で実行されるものです。
- ブロックデバイスイメージをマウントするディレクトリを作成します。
mkdir /mnt/pvdisk_p1 mkdir /mnt/pvdisk_p2
[root@rhel3]# mkdir /mnt/pvdisk_p1 [root@rhel3]# mkdir /mnt/pvdisk_p2Copy to Clipboard Copied! Toggle word wrap Toggle overflow - デバイスを新しいフォルダにマウントします。
mount /dev/xvdb1 /mnt/pvdisk_p1 mount /dev/xvdb2 /mnt/pvdisk_p2
[root@rhel3]# mount /dev/xvdb1 /mnt/pvdisk_p1 [root@rhel3]# mount /dev/xvdb2 /mnt/pvdisk_p2Copy to Clipboard Copied! Toggle word wrap Toggle overflow - デバイスが正常にマウントされたことを確認します。
df /mnt/pvdisk_p1
[root@rhel3]# df /mnt/pvdisk_p1 Filesystem 1K-blocks Used Available Use% Mounted on /dev/xvdb1 32000 15 31985 1% /mnt/pvdisk_p1Copy to Clipboard Copied! Toggle word wrap Toggle overflow - ブートシーケンス中にデバイスがマウントされるようにゲスト内で
/etc/fstabファイルを更新します。以下の行を追加して下さい:/dev/xvdb1 /mnt/pvdisk_p1 ext3 defaults 1 2 /dev/xvdb2 /mnt/pvdisk_p2 ext3 defaults 1 2
/dev/xvdb1 /mnt/pvdisk_p1 ext3 defaults 1 2 /dev/xvdb2 /mnt/pvdisk_p2 ext3 defaults 1 2Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記
Red Hat Enterprise Linux 3 ホスト (
dom0) を使用して 以下に見えるように、"noapic" パラメータは仮想ゲストの /boot/grub/grub.conf エントリ内のカーネルブート行に追加 される必要があります。ご使用のアーキテクチャとカーネルバージョンは異なるかも 知れないことを忘れないで下さい。
kernel /vmlinuz-2.6.9-67.EL ro root=/dev/VolGroup00/rhel4_x86_64 rhgb noapic
Red Hat Enterprise Linux 5.2 dom0 はゲスト用にこのカーネルパラメータを 必要としません。
重要
Itanium (ia64) binary RPM パッケージとビルドは現在、使用できません。