設定が終わると、ログインプロンプトが表示されます。この時点ではコンソール画面はゲストOSの端末にアタッチされている状態になっています。ゲストOSの端末からデタッチしてホストOSの端末に戻るにはCtrl +]キーを入力します。ゲストOSの端末に再びアタッチする場合は、以下のコマンドを実行します。
# xm console vm01
vm01のところには、起動中のゲストOSの識別名を指定します。
上記はxmコマンドの一例です。Xenの操作はこのxmコマンドにさまざまな引数を与えることによって行うことができます。
本連載は実際のシステム構築をイメージし、それに必要な事柄に的を絞って解説することが主旨ですので、xmコマンドを網羅的に紹介するのは別の機会に譲ります。ただ、Xenを操作するうえで基本となる部分について簡単に紹介したいと思います。
■ゲストOSを起動する
# xm create -c /etc/xen/vm01
/etc/xen/vm01の部分には、ゲストOSの識別名ではなく、ゲストOSの設定ファイルを指定することに注意してください。virt-installで作成したゲストOSの設定ファイルはデフォルトで/etc/xen/以下に保存されています。
「-c」スイッチはゲストOSの起動後、現在のコンソールをゲストOSの端末にアタッチすることを指定するオプションです。「-c」を付けなかった場合はゲストOSの起動後にホストOSのコマンドプロンプトが返ってきます。
■稼働しているゲストOSの一覧を表示する
# xm list Name ID Mem(MiB) VCPUs State Time(s) Domain-0 0 13604 1 r----- 1498.0 vm01 1 511 1 -b---- 521.1 vm02 2 511 1 -b---- 524.2 vm03 3 511 1 -b---- 521.7 vm04 4 511 1 -b---- 524.2 vm05 5 511 1 -b---- 521.7
以下、各項目の説明です。
項目名 | 内容 |
---|---|
Name | ゲストOS(あるいはホストOS)の識別名 |
ID | ゲストOS(あるいはホストOS)の識別番号。 デフォルトでは起動したときによって変動します |
Mem(MiB) | ゲストOS(あるいはホストOS)に割り当てている物理メモリ容量 |
VCPUs | ゲストOS(あるいはホストOS)に割り当てている仮想CPU数 |
State | 現在のゲストOS(あるいはホストOS)の状態。以下の値があります |
r | 稼働中であり、CPUを使用している状態です |
b | I/O待ち、またはタスクがなくCPUを使用していない状態です |
p | 一時停止中。xm pauseコマンドによってこの状態になります |
s | シャットダウン中。 *完全にシャットダウンした後はxm listの一覧には表示されなくなります |
c | 不具合によって稼働不能となった状態 |
d | cになるまでの経過状態 |
■ゲストOSを停止する
# xm shutdown vm01
vm01の部分には、ゲストOSの識別名を指定します。このコマンドはホストOSからゲストOSを停止させる場合に使用します。ゲストOSが自分で停止する場合にはshutdownコマンドなど、通常のオペレーションで停止することができます。
xmコマンドではほかにも多くの操作を行うことができますが、それらについてはおいおい、必要になった段階で順次ご紹介してきます。
最後に、Xenの内部ネットワーク構成について簡単に触れておきます。
デフォルトではホストOSやすべてのゲストOSは内部的に「xenbr0」という仮想スイッチに接続されています。このため、各ゲストOSやホストOSは、実際に同一LAN上につながっているかのように相互に通信が可能です。
xenbr0は最終的に物理インターフェイスに接続されているため、ゲストOSは通常の物理サーバと同じように、DHCPでIPアドレスを取得することもできますし、固定IPを割り当てることも可能です。ゲストOS側では何ら、自身が仮想マシンであることを意識する必要はありません。
図3の中には、「vif」や「peth」など、通常は見掛けないインターフェイス名が存在しています。これらのインターフェイスは、Xenが起動する際にシェルスクリプト:/etc/xen/scripts/network-bridgeを実行して作成されています。このスクリプトや設定ファイル:/etc/xen/xend-config.sxpを編集することで、VLANによってLANを分割したり、仮想スイッチを複数作成したりと、より複雑な内部ネットワークを構成することが可能です。
VLAN構成を組むには、これ以外にも/etc/sysconfig以下のネットワークの設定をあらかじめ施して、VLANサブインターフェイスを作成しておく必要があります。腕に覚えがある方は、ぜひこのあたりのファイルをのぞいてみてください。
ここまでで、ゲストOSを稼働させるまでの基本的な流れと手順を確認しました。次回以降、実際に「サーバ集約」という目的に沿って仮想化システム構築をシミュレーションし、そのプロセスを1つずつ解説していきます。
次回は中でも、仮想化システム構築の際に最初のハードルとなるサイジングに焦点を当て、
といったところを中心に解説したいと思います。
Copyright © ITmedia, Inc. All Rights Reserved.