インテルとAMDの動画で見る、仮想化のライブマイグレーション
サーバの仮想化は、物理サーバを仮想サーバに置き換えることでさまざまなメリットを実現してくれます。そのメリットの中でも、最も注目されるものがライブマイグレーション機能でしょう。
ライブマイグレーションとは、仮想化されたシステムを稼働中のまま別の物理サーバへと移し替える機能です。システムを止めずにより高い性能のサーバへと置き換えたり、サーバの障害を予測して警告が発せられた時点で別のサーバへとシステムを待避することが可能になり、システムの可用性や柔軟性の向上に非常に役に立ちます。
システム管理者にとって夢のような機能のライブマイグレーションですが、ちゃんと動作するのか? 本当にすぐ切り替わるのか? といった疑問に答えるために、実際の様子がAMDやインテルによって動画として公開されています。
いちばん分かりやすいのが、AMDが3世代に渡るCPUの間でライブマイグレーションを行うこのデモ。動画をストリーミングしているサーバがライブマイグレーションで切り替わっていきます。ライブマイグレーション中は数秒のあいだ動画が止まりますが、コネクションは切れることもなく、最後まで再生されます。
3世代にわたるCPUは、コード名Barcelona、Shanghai、Istanbul。3つ目のコード名Istanbluで呼ばれるCPUは6月1日に正式発表されたばかりで、もうすぐ製品が登場する予定の最新CPUです。下記のビデオでは、ほぼ同じデモを、もう少し詳しい説明をしつつ行っています。
インテルもライブマイグレーションのデモをYouTubeで公開しています。こちらも過去の世代のCPUから新しい世代のCPUへと移動可能なことを示しています。
ライブマイグレーション機能は、VMwareではVMotion、XenServerではXenMotionという名称で提供されており、マイクロソフトのHyper-Vでは次期バージョンで実装予定です(ここで紹介したビデオではいずれもVMwareを使っていたようです)。
ビデオで見るかぎりライブマイグレーションは手軽にできそうにみえますが、実現するためには以下のようないくつかの条件を備えたシステム構成にしておく必要があります。
- ライブマイグレーションする仮想マシンは共有ストレージ上に配置されていること
- 共有ストレージは移行元、移行先から共有されていること
- 移行元と移行先のCPUの命令セットに互換性があること
特に迅速なマイグレーションを行うには、共有ストレージとそれを構成するネットワークは高速なものが求められます。
3番目の命令セットの互換性については、インテル、AMDともにできるだけ過去のCPUからもライブマイグレーション可能なように、それぞれIntel VT FlexMigration、AMD-V Extended Migrationというテクノロジを最新CPUに組み込んでおり、以前より制限は緩くなっているようです。
ただし、このCPUの下位互換性を利用すると、性能向上のために強化された最新CPUの機能が使われなくなると、eWEEKがXeon 5500のレビュー記事で指摘しています。下位互換性と性能のトレードオフになるわけで、複数の世代のCPUが混在したライブマイグレーションを採用する場合には注意すべき点です。
ここで紹介したビデオで見られるように、インテル、AMDともビデオで過去の世代のCPUからのライブマイグレーションを紹介し、また最新のCPUではライブマイグレーションを強化する機能を組み込んでいます。これはCPUベンダとしては顧客に対して、過去の世代のサーバから最新世代サーバへと置き換えてほしいというメッセージの表れなのでしょう。