今回は、オープンソースのXenをベースにしたCitrix XenServerを使った仮想化環境の構築方法を解説します。
Citrix XenServerとは
Cirrix XenServer(以下XenServer)は、GPLでライセンスされているオープンソースのXenをベースにしたCitrix社の仮想化環境です。以前は有償で販売されていましたが、2009年3月から基本的なライセンスは無償で提供されています。そして、高可用性を実現するHAオプションと、物理環境からの移行をサポートするツールなどをセットにした「Citrix Essentials for XenServer」が有償で提供されています。
Citrix XenServer
URL:http://www.citrix.co.jp/products/xenser/xenser.html
Citrix Essentials for XenServer
URL:http://www.citrix.co.jp/products/xenser/es_xenser.html
ベースになっているXenはオープンソースで開発されていますが、元々はXenの開発の中心であったXenSource社がCitrix社に買収されて開発が続けられているので、XenServerはXenの最も有力なディストリビューションと考えてよいでしょう。
その他のXenとの違いは?
Xen自体はハイパーバイザーとして独立しており、ちょうどLinuxカーネルのようなものです。Xenが動作するには、管理のためのシステムとしてドメイン0が必要ですし、各種管理のためのインターフェースやアプリケーションが必要です。
Xenを組み込んだディストリビューションとしては、SUSE Linux Enterprise ServerやRed Hat Enterprise Linuxなどの商用製品がありますし、Oracle VMやStratus Avanceなどの仮想化環境の製品にも組み込まれています。また、Amazon EC2などのクラウド的なサービスのインフラとしてもXenは使われています。
XenServerは、Xenの開発の中心となっている開発者が製品開発に携わっているという点で優位性がありますが、Xenの開発自体がすでに多くの開発者による共同開発になっているので、圧倒的な優位性というわけではないでしょう。
それぞれの製品には特長がありますので、ケースバイケースで使い分けるとよいでしょう。
XenServerを実行するハードウェアの準備
XenServerを実行するハードウェアは、比較的どんなものでも対応しています。これは、Xenのデバイスドライバが管理用のシステムであるドメイン0で動作することに理由があります。ドメイン0には多くの場合Linuxが使用されるため、Linuxが対応しているハードウェアであれば、一通り利用可能となっています。
ネットワークインターフェース
Linuxで使用できるものであれば、概ねどのようなコントローラでも大丈夫でしょう。VMware ESXiではサポートされていなかったRealtek製なども大丈夫です。ただ、サーバ用途で使うのであれば、最近はBroadcom製が多いように思います。
ハードディスクコントローラ
ハードディスクコントローラも同様に、Linuxで標準的にサポートされているかどうかが分かれ目となります。SCSIやSASだけでなく、SATAドライブもサポートされています。
USBメモリからの起動
XenServerでは標準ではUSBメモリからの起動はサポートしていませんが、HP製のハードウェア用に提供されているHP版XenServer は、USBメモリへのインストールをインストーラから行うことができます。
HP版XenServerは、他にローカルコンソールで仮想マシンのコンソールを切り替えて使用できたり、監視エージェントを動作させたりといった付加機能があります。コンソールについては有償ですが、評価ライセンスが切れた後もXenServerそのものは無償で使い続けることができるので、HP製のサーバを使用している人はHP版を試してみるとよいでしょう。
XenServerのインストール
以下の手順に従って、XenServerをインストールします
1.インストールイメージの入手
XenServerは、Citrix社のWebサイト からISOイメージをダウンロードできます。ユーザ登録を行うと、ISOイメージや管理クライアントであるXenCenterなどがダウンロードできます。あらかじめ設定されたDebian GNU/Linuxの仮想マシンテンプレートを提供するLinux Packも、必要に応じてダウンロードしておきましょう。
ライセンスはオンラインアクティベーション方式を取っていますので、この時点では評価版としての入手のみです。
ダウンロードしたISOイメージは、CD-Rなどに焼いておきます。
2.XenServerをインストール
インストールメディアを使って、XenServerをインストールします。インストール手順はLinuxのインストールに似ていますので、Linuxのインストールに慣れている人であればそれほど迷うところはないでしょう。
Linux Packを一緒にインストールする場合には、最初に聞かれますのでYesを選択しておきます。後ほど、インストールの最中にインストールメディアがイジェクトされたら、Linux Packのメディアに入れ替える必要があります。
ネットワークインターフェースの初期設定はインストール時に行います。デフォルトではDHCPに設定されるので、固定IPの設定を行ってください。
NTPの設定もこの段階で行っておきます。ntp.nict.jpなどの公開NTPサーバなどを設定してください。
インストール完了後、再起動します。
3.XenCenterのインストール
管理クライアントのXenCenterをWindowsにインストールします。ダウンロードした.msiファイルをWindowsにコピーしておいてください。インストール自体はウィザードに従って実行するだけです。
4.XenCenterで接続
XenCenterを起動し、XenServerに接続します。初めての接続の場合、サーバ接続を次回以降自動的に行うかを尋ねられますので、必要に応じて設定してください。
また、ライセンスのアクティベーションが要求されます。インストール後は30日間の試用ライセンスになっているので、適宜アクティベーションを行ってください。アクティベーションはWebブラウザで行えます。
図1 初めてXenServerに接続したところ。アクティベーションを行える。
仮想マシンの作成
XenServerが動き始めたら、仮想マシンを作成して動かしてみましょう。
1.ゲストOSのインストールメディアを準備
仮想マシンにインストールするゲストOSのためのインストールメディアを準備します。XenServerでは、以下の選択肢があります。
① ネットワークインストールを利用する(※ )
② 仮想ホストの物理ドライブを利用する
③ CIFS(Windowsファイル共有)のISOイメージを利用する
④ NFSのISOイメージを利用する
ローカルストレージにISOイメージを置いておくことができないので、小規模で運用する場合には仮想ホストの物理ドライブを利用するのが楽でしょう。すでにファイルサーバが置いてあるのであれば、CIFSやNFSを利用するのが楽でしょう。
CIFSやNFSを利用する場合には、仮想マシン作成の前にストレージの追加(New Storage)でISO libraryとして接続しておく必要があります。
図2 ISO libraryの設定画面。ISOイメージを格納したファイル共有に接続する。
2.仮想マシンを作成
ウィザード形式で仮想マシンの作成を行います。画面の指示に従って、各種設定を行います。
OSの種類
Linuxが豊富にサポートされているので、ほぼ必要なものは選択できると思います。Linux Packをインストールした場合、Debian Etch 4.0を選択すると、OSインストール済みテンプレートからの展開でOSインストールを省略して仮想マシンを作成できます。
また、その他のLinuxディストリビューションもXen対応カーネルが初めから入った状態でインストールが行えますので、インストール後のカーネル入れ替えなどが必要ありません。
図3 OSの種類の選択画面
仮想プロセッサ数
Xenでは物理プロセッサ数よりも仮想プロセッサ数を大きくすることができますが、パフォーマンスは大幅に低下します。画面にも警告が現れるので、あまり大きな数を設定しないようにしましょう。
仮想ネットワークインターフェース
物理サーバに搭載されている認識されたネットワークインターフェースに応じて、仮想マシンにも仮想ネットワークインターフェースが割り当てられます。自動的に複数個割り当てられるので、必要に応じて削除してください。
3.仮想コンソールの利用
ウィザードを実行すると、デフォルトでは自動的に仮想マシンが起動し、インストールが始まります。仮想コンソールを表示して、インストーラを操作してください。
仮想コンソールは、仮想マシンを選択し、右側のペインでConsoleタブを選択します。表示は小さくスケールすることもできるので、画面が狭い場合でも安心です。この機能はとても便利ですね。
図4 仮想コンソール画面。WindowsならばGUIインストールだが、LinuxはCUIインストール。
4.XenServer Toolsのインストール
ゲストOSがWindowsの場合、XenServer Toolsをインストールします。インストールするには、ゲストOSに管理者権限でログオンした後、VMメニューの「Install XenServer Tools」を選択すると、仮想DVDドライブにISOイメージがセットされます。オートランが実行されますので、インストーラを起動してインストール後、ゲストOSを再起動してください。
ゲストOSがLinuxの場合、最初からXen対応のカーネルがインストールされるので、ドライバのインストールは不要です。
図5 XenServer Toolsのインストールを行ったところ。
光学式ドライブの使いこなし
サーバの物理光学式ドライブを使っていると、たまに仮想マシンで解除したにもかかわらず、ボタンを押してもイジェクトされない場合があります。そのような場合には、管理コンソールでejectコマンドを実行します。
実行は、XenServerのマシンを選択し、Consoleタブをクリックします。すでに管理者権限で接続しているので、[Enter]キーを押すだけでドメイン0のシェルが起動します。ここではLinuxコマンドや管理用のコマンドが実行できます。メディアの取り出しは、ejectコマンドを実行してください。
図6 ドメイン0のコンソール画面。ここでシステム全体に対してのコマンド管理なども行える。
まとめ
以前のバージョンに比べると、使いやすさの面でかなりこなれてきたように思います。特にLinuxを主に使う環境では、VMware ESXiなどよりも制約が少なく、使いやすいように思います。
インストール用のISOイメージをCIFSかNFSにしないといけないあたりが、気軽に使うには面倒なポイントでしょうか。一応、ドメイン0からローカルのISOライブラリも作れるようですが、マニュアルを見ながら行う必要があるのがちょっと面倒です。このあたりが改善されると、リモートからの管理もかなり楽になるでしょう。
今回は紹介しきれませんでしたが、XenServerは無償版でもライブマイグレーション(XenMigration)がサポートされているので、複数台のXenServerとiSCSIストレージを用意することで、ライブマイグレーション環境を構築できます。ぜひチャレンジしてみてください。