このページの本文へ

前へ 1 2 次へ

「Hyper-V=Windows」という考え方はもう古い

Linux開発者こそ知っておくべき、サーバ仮想化の「今」

2014年01月15日 14時00分更新

文● 岩上由高/ノークリサーチ シニアアナリスト

  • この記事をはてなブックマークに追加
  • 本文印刷

Linuxが動作し、安心して利用できる無償のハイパーバイザはあるのか?

 さて、Linux開発者にとって、先に述べた2つのポイントを満たす選択肢は存在するのだろうか。

 まずはポイント1から見ていく。x86アーキテクチャにサーバ仮想化が登場した当初、実運用環境に耐えうる選択肢としてはヴイエムウェアの「VMware vSphere(ESX)」が事実上のデファクトスタンダードだった。vSphereは現在でも多くのユーザー企業に導入されている。その後、サーバ仮想化が徐々に普及するにつれて、ハイパーバイザはOSに組み込まれるようになってきた。Linux開発者にとって最も身近なのは、「Linux KVM(Kernel-based Virtual Machine)」である。さらに、マイクロソフトの「Windows Server 2012 R2」に同梱されている「Hyper-V」も、追加コストを必要としない点ではKVMと同様のメリットを持つ。

 しかし、Linux開発者の多くは「サーバ仮想化のためにWindowsを選択するのはあり得ない」と考えるだろう。これまでLinuxで培ってきたシステム開発/運用のノウハウがある以上、ベースとなるOSをWindowsに切り替えるのが難しいことは自明の理だ。ただし、その一方でユーザー企業の様々な要件に応じて複数の選択肢を持っておいたほうが良いのも事実だ。

 そこで有効な選択肢となりうるのが「Hyper-V Server 2012 R2」である。これは、Windows Server 2012 R2からHyper-V関連のソフトウェアだけを抜き出し、無償で利用できるようにしたOSだ。機能面ではWindows Server 2012 R2内蔵のHyper-Vとまったく同じであり、仮想化の機能をそぎ落としたサブセットではない。そのため、Linux開発者にとってはWindowsの存在を気にせずにvSphereと同じように扱える無償のハイパーバイザといえる。

 とはいえ、「すでにKVMがあるのだから、同じような選択肢を2つも持つ必要はない」と考える方もいるかもしれない。そこで、先に挙げたポイントの2つ目を詳しく見ていくことにする。

 「サーバリソースの最適化」や「システムの安定稼働」を実現する手段としては、仮想サーバを物理サーバ間で移動させる「ライブマイグレーション」が該当する。KVMもHyper-V Server 2012 R2も共にライブマイグレーションの機能を備えているが、現時点では大きな違いが1つある。それは、KVMでライブマイグレーションを実行する際には、仮想サーバのイメージを移行元と移行先の双方のサーバで共有しておかなくてはならず、つまりNFSなどを用いた共有ストレージ環境を構築しなければならないということだ。ごく最近では「Live Block Migration」という機能も追加され、KVMでも共有ストレージ環境を構築せずにライブマイグレーションを行うことも可能ではある。だが、KVM管理用のシェルである「virsh」から仮想マシンのイメージを指し示すスタブを作成する必要があるなど、すべてのSIerが気軽に利用できる段階にはまだ至っていないと言える。

 一方で「Hyper-V Server 2012 R2」では、共有ストレージ環境なしでも手軽にライブマイグレーションを実行することができる。もちろん、共有ストレージ環境を構築して可用性を高めたクラスタ構成(Hyper-Vクラスタ)を組むことも可能だ。つまり、「1台の物理サーバ上に複数のシステムを集約したい」というニーズだけでなく、仮想サーバを物理サーバ間で移動させることによって「サーバリソースの最適化」や「システムの安定稼働」を実現したいというニーズが生じた場合に備えて、Hyper-V Server 2012 R2も選択肢に加えておく価値が十分にある。

 ここで重要なのは、KVMとHyper-V Server 2012 R2のいずれを利用する場合も、その上でLinuxの仮想サーバ環境が動作するという点はまったく同じであることだ。「Red Hat Enterprise Linux」を含む主要Linuxディストリビューションは、いずれもHyper-V Server 2012 R2上の仮想サーバとして動作するのに必要な各種モジュールを備えており、ドライバの追加など煩雑な作業はまったく必要ない。管理/運用面においても、KVMのvirshに相当する「Windows PowerShell」、GUI管理ツールの「Virt Manager」に相当するWindows PC向けの「RSAT(リモートサーバー管理ツール)」がそれぞれ利用できる。

 このように、今後サーバ仮想化に求められる2つのポイントを踏まえると、システム要件などに応じて複数のハイパーバイザを賢く使い分けることも重要となってくるわけだ。

クラウド時代に向けてニーズが高まる仮想サーバの可搬性

 最後にサーバ仮想化とクラウドとの関係について見ておくことにしよう。以下のグラフは年商5億円以上のユーザー企業に対して、「活用を検討しているクラウド関連の取り組み」(複数回答可)を尋ねた結果のうち、本稿に関係の深い項目をピックアップしたものだ。

 業務システムのクラウド化というと、多くの方は「グループウェアなど、社外に出しやすい情報系システムから徐々に移行が進み、それらがクラウド上で互いに連携していく」といった流れをイメージされるかもしれない。これは、上記グラフの「システム種別によってクラウド環境を使い分け、それらをVPNなどで相互接続する」という項目に該当する。

 だが、ユーザー企業がそれと同程度、もしくはそれ以上に今後取り組もうと考えているのが「各種の業務システムを仮想化し、クラウド環境への出し入れを容易にする」「障害/災害が発生した時の待機システムの置き場所としてクラウドを活用する」といったものである。これらの取り組みは、いずれも仮想化したサーバを社内とクラウドとの間で移動させることにより実現するものだ。つまりサーバ仮想化は、クラウド時代を見据えたユーザー企業のニーズに応えるうえでも重要な技術要素と言えるだろう。

 「Windows Azure」クラウドとの親和性など、Hyper-V Server 2012 R2もそうした技術を多く盛り込んでいる。たとえば、物理的に離れた2つの拠点間で仮想サーバのイメージを複製/同期する「Hyper-Vレプリカ」機能を使うことで、上述した2つの項目をカバーすることができる。

 これまで、ユーザー企業から「初期の仮運用システムについては資産購入が不要なクラウド上に構築したい」「事業継続のために待機系システムを確保しておきたい」といったニーズがあっても、予算や手間の面で実現が難しかったというSIerの方も少なくないはずだ。サーバ仮想化とクラウドを適切に組み合わせることにより、このようなニーズにも無理なく応えることができる。社内環境とクラウド環境を「二者択一」の対立軸で捉えるのではなく、サーバ仮想化を接点として「適材適所」で使い分けるという発想が重要だ。そうした発想を持てるかどうかが、クラウド時代を生き抜くSIerになれるかどうかを左右すると言っても過言ではないだろう。

固定観念や古い知識を一旦リセットすることが大切

 ここまで、ユーザー企業におけるサーバ仮想化の実態を俯瞰し、Linux開発者としてサーバ仮想化のメリットをフル活用するためにはどのような視点が必要かについて考察してきた。サーバ仮想化は新しい技術であり、技術進歩のスピードも速い。それに乗り遅れないためには過去の情報に囚われないことがとても大切だ。その最たる例として、本稿ではHyper-V Server 2012 R2を取り上げてみた。

 Hyper-V Server 2012 R2はVMwareのvSphereなどと同じく純粋なハイパーバイザであり、これを活用することは「Windows Server OS上でシステム開発/運用をすること」とはまったく異なる。「Hyper-V=Windows」という捉え方はすでに過去のものであり、その考えに囚われてしまうとクラウド時代に向けた貴重なビジネスチャンスを逃してしまうことにもなりかねない。日頃、Windows OSに馴染みの薄いLinux開発者にとって、Hyper-V Server 2012 R2のような存在を知っておくことは自らの提案の幅を広げる良いきっかけとなるはずだ。今後は「Linuxか、Windowsか」という軸とは異なる視点で様々なトレンドを俯瞰し、理解していくことが重要になってくる。本稿がその契機となれば幸いである。

(提供:日本マイクロソフト)

前へ 1 2 次へ

カテゴリートップへ

  • 角川アスキー総合研究所
  • アスキーカード