クラウド環境に最適なハイパーバイザー Citrix XenServer
クラウド環境に最適なハイパーバイザー
管理面においては、マルチハイパーバイザー対応を進めているが、シトリックスはハイパーバイザーとして、コストパフォーマンスの高い、クラウド環境に最適なハイパーバイザー「XenServer」を提供している。XenServerの開発テーマは大きく分けて2つある。
- クラウド環境(プライベートクラウド、パブリッククラウド)で利用しやすい機能開発、エディション構成
- デスクトップ仮想化システム環境で利用しやすい機能の開発、エディション構成
XenServerの開発スピードは非常に速く、ここ1、2年で急速に機能を追加してきた。最近リリースされた米Gartner社のMagic Quadrant for x86 Server Virtualization Infrastructureでは、VMware、Hyper-Vとともに、リーダーのポジションにランキングされた事からも分かるように、3大ハイパーバイザーの1つとして認められている。1、2年前に評価し使用をあきらめたユーザーがいれば、ぜひもう一度評価する事をお勧めする。
また、最近のInformationWeekの記事「Virtualization Wars: Citrix Tops Microsoft As ‘Primary Hypervisor’」においては、XenServerを利用しているユーザー(複数パイパーバイザーを利用している場合も含む)はアンケートを行ったユーザーの55%であり、さらに最も利用しているハイパーバイザーの20%がXenServerであったという事はつい最近の事である。
さて、ここでは多数あるXenServerの機能の中でも、クラウド向けの機能に焦点を当てて解説していきたいと思う。XenServerの基本機能は、昨年の記事 「サーバー仮想化最新技術 Citrix XenServer 5.6」を参照いただきたい。最新バージョンはXenServer 5.6 SP2であるが、今秋、待望のメジャーバージョンアップであるXenServer 6のリリースを予定している。
クラウド環境向けの機能
ネットワーク:
XenServer 5.6 FP1より、2種類の仮想スイッチを提供している。デフォルトの仮想スイッチは、Linux BridgeベースのL2スイッチであり、もう1つの仮想スイッチはOpenFlow対応の高機能な分散仮想スイッチである。この分散仮想スイッチを利用するためには、下記のコマンドを実行し再起動する事で利用する事が可能である。
# xe-switch-network-backend openvswitch
XenServer 6より、デフォルトの仮想スイッチが、OpenFlow対応の高機能な仮想スイッチになる予定である。
ここで、少しOpenFlowについて解説したいと思う。スイッチの機能を大きく分けると、データ伝送する部分(データパス)とデータをどのように転送するかを決める部分(コントロールパス)の2つになる。
OpenFlow対応の仮想スイッチでは、その2つの機能を分断し、コントロールパスに関しては、外部で制御する仕組みを取っている。スイッチには、データ転送部分に特化させるといった具合だ。もう1つの特徴は、12のパラメータに基づき、データをどのように伝送するかを決め、Flowテーブルで定義している。
例えば、このIPアドレスからのデータで、プロトコルがHTTPであれば、とあるIPアドレスに転送し、FTPであればドロップするといった具合だ。同じネットワークセグメントでも、このFlowテーブルを設定すれば、いかようにもネットワークを分ける事ができる。そのため、既存で使用されているVLANではID数が4094以上は作成できないというジレンマから回避する技術として、OpenFlowを採用、検討する事が最近多い。
図5:OpenFlowスイッチの役割 |
XenServerでは、OpenFlow対応仮想スイッチのコントローラを仮想アプライアンスとして提供している。仮想アプライアンスをこちら(要mycitrixアカウント)よりダウンロードし、XenServerにインポートし起動すれば、ものの数か所の設定でOpenFlowコントローラを使用する事ができる。
また、XenServerのOpenFlow対応仮想スイッチは、Open vSwitchとよばれるオープンソースの仮想スイッチ (Nicira NetworksやNECやCitrix等が開発に参加している)をベースにしたものであるため、ovsコマンド (Open vSwitchを制御する時に使用されるコマンド) も使用可能である。興味がある方は、Open vSwitch Manpagesを参照していただければと思う。
クラウド管理:
前述の図でも示したように、Citrixでは中小規模向けのプライベートクラウド管理ツール「Self Service Manager」と、大規模、パブリッククラウド向けの管理ソフトウエア「CloudStack」を提供している。また、オープンソースのクラウド管理ソフトウエア「OpenStack」の開発にも大きく貢献している。今回は、「Self Service Manager」について見ていきたいと思う。
Self Service Managerは、VMLogix※6社のLab Managerをベースに開発されているものである。XenServer 5.6 FP1/SP2では、このLab Managerをラボ管理機能として、XenServerに含めて提供していたが、XenServer 6からは、プライベートクラウド管理機能として提供される。
大きく変わった点としては、Citrixの文化でもある「クラウドにオープンである事」を踏襲し、XenServerとVMwareの2つのハイパーバイザーを管理し、ユーザーに対し1つの管理インターフェースを提供する事ができる点である。またユーザーインターフェースもより使いやすい形に一新されている。将来的には、Hyper-Vへの対応や、またAWSやOpenStackベースのクラウドも管理できるようになる予定だ。
[※6] VMLogix:カナダの企業でLabManagerと呼ばれるラボ管理製品を提供していた。Citrixが2010年8月に買収
図6:Self Service Manager画面 |
図7:Self Service Manager画面 |
System Center Virtual Machine Manager対応:
また、マルチハイパーバイザー対応の一環としては、System Center Virtual Machine Manager 2012(SCVMM)※7から、XenServer 6を管理する事が可能だ。これにより、SCVMM 2012を使用すると、XenServer、Hyper-V 、VMwareの3大ハイパーバイザーを1つの管理ツールで管理する事ができる。
[※7] System Center Virtual Machine Manager 2012(SCVMM 2012):マイクロソフト社の仮想環境管理製品。現在ベータ版が提供されている
デスクトップ仮想化システム環境向けの機能
GPU pass through (XenDesktop向け):
XenServer 5.6 FP1から、XenDesktop 5 SP1と組み合わせる事によって、GPUパススルー機能が使用可能になった。XenDesktopで構築された仮想デスクトップシステムにリモートより接続し、その仮想マシン上で高解像度グラフィックスアプリケーションを非常にスムーズに動かす事ができる。
ここで注意したいのは、このGPUパススルーの機能は、1VMにつき1GPUをアサインするといったように、1:1のGPUパススルー機能である。この機能を使用するには、SLI Multi-OS対応のNVIDIAのGPUが必要である。例えば、FX3800 、FX4800 やFX5800 といったものである。
Itellicache (XenDesktop向け):
デスクトップ仮想化システムでは、サーバー仮想化とは異なり、1つのハイパーバイザーで多くの仮想マシンを実行する必要がある。大規模なシステムでは100VM/ハイパーバイザーを超える場合もある。サーバー仮想化では、集約したとしても数十といった所だろう。大規模環境であっても総サーバー数は数千程度と考えられるが、クライアントPCの数となると数万という場合も多い。こういったクライアントPCを統合する場合、ハイパーバイザーに集約する仮想マシン数も多くなりがちである。
また、仮想マシンの展開方法についても、一般的には仮想マシンのマスターディスクイメージを作成しておいて、そのイメージに仮想マシンからアクセスを行い、差分については別途仮想ディスクに書き込む、というような方法を取る場合が多い。XenDesktopでも、Citrix Provisioning ServicesやMachine Creation Serviceといった機能を使用して、このような方法を取る。
その際に課題になってくる部分が、マスターディスクイメージが置いてあるストレージへのI/Oである。ピーク時は特に朝だろう。デスクトップ仮想化システムを導入している企業では、朝出社後、社員が一斉にリモート端末から仮想マシン(仮想デスクトップ)にアクセスするため、数百、数千という仮想マシンからのリードI/Oが一斉に発生する(ブートストーム)事になる。こういったブートストームに対応したシステム構成を構築する事が重要になる。XenServerでは、既に読み込んだデータに関しては、にローカルストレージにキャッシュしておく事が可能であるため、ストレージのIOPSを劇的に削減する事が可能である。
次回は、シトリックスのOpenStackへの取り組みやCloudStackに関して解説していきたいと思う。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- クラウド基盤ミドルウェア「CloudStack」とOpenStackへの取り組み
- シトリックス、「Citrix XenServer 6.5」の提供開始
- 仮想アプライアンスの最新技術
- デスクトップ仮想化最新技術XenDesktop 4 FP1/XenClient
- ヴイエムウェア、 VMware vCloud Suiteのクラウド管理機能をアップデート
- Citrix、OpenStack Foundationへの協賛とクラウド相互運用規格サポートを発表
- デスクトップ仮想化の代表格XenDesktop
- 富士通とシトリックス、仮想デスクトップサービス「VCC」を発表
- サーバー仮想化最新技術Citrix XenServer 5.6
- XenDesktopでデスクトップ仮想化を体験しよう!