軽量化よりも、Linuxカーネルをそのまま使うことの方が重要
サイズを小さくすることに関しては、目標として40MB以下と公表されているが、あまりこだわってはおらず、むしろデバイスドライバを豊富に用意しておくことが重視されているようだ。同氏は「USBメモリ・キーにハイパーバイザを入れてシステムを起動できるが、現在の57MBでも、十分に安価な64MBのUSBメモリ・キーを使える。これを40MB以下にしてもさほど大きなメリットがあるわけではない」という。
Linuxカーネルで実現された機能がそのまま使える、という点がもっとも重視されていることを同氏は繰り返し強調した。たとえば、ホストベースの仮想化では、ホストOSがダウンすればその上の仮想OSもすべて道連れになることが懸念材料として指摘される。ホストOSに対する外部からのセキュリティ攻撃も考えられるが、その点でも必要最小限の機能だけを実装したハイパーバイザの方が安心だというのは、一般的な共通認識だといってよいだろう。これに対して同氏は、「セキュリティならSELinux(Security-Enhanced Linux)の機能を組み込めば最高レベルのセキュアOSになる」と自信を示す。ユーザー・アプリケーションの実行機能はないため、その意味でも安定性やセキュリティが低下する懸念はまずないだろう。
ハードウェアの進化に対する対応の容易さもアドバンテージとなる。現在、x86/x64系プロセッサは急速にマルチコア化に向かっている一方、Intel/AMD両社とも、ハードウェア・レベルでの仮想化支援機能の実装に注力している。最新のハードウェアの機能を活かすにも、Linuxカーネルの対応がそのまま反映されるハイパーバイザなら、迅速な進化が期待できるだろう。
実際のところIAサーバでの仮想化の利用はまだ初期段階であり、ハードウェア/ソフトウェアの両面で急速な進化が続いている段階だ。この状況では、特定の環境を前提に高度に最適化するアプローチより、進化を柔軟に取り込めるアプローチの方が有効になる可能性は高い。実際には、「Linuxカーネルそのものだから」という表現はやや表面的な理解であり、その本意は「ハイパーバイザの開発をLinuxカーネル開発と分離しないこと」だと理解すべきだろう。
オープンソース・プロジェクトとしても最大規模のコミュニティを擁するLinuxカーネルに対して投下される開発リソースは膨大であり、これを活用できるアプローチが有利なのはある意味で分かり切ったことだとも言える。Red Hatのハイパーバイザに対する取り組みは、コミュニティを重視する同社の従来の姿勢からも自然に導かれる結論だったと言えそうだ。
仮想化環境の管理
Red Hatのハイパーバイザは、現在は管理ツールの開発プロジェクトである「oVirt」に含まれる形になっている。将来的には独立して別の名前が付けられることになる予定だが、現時点では特に命名は行なわれていない。
oVirtは、"Virtualization API"の開発プロジェクトである「libvirt」の成果を利用した汎用的な仮想化環境管理の仕組みとなる。Red Hatのハイパーバイザももちろんlibvirtを組み込むことが想定されている。
現在、仮想化ソフトウェアとしてハイパーバイザ等を提供するベンダは多数存在しているが、その多くに共通する認識として、「ハイパーバイザ自体が差別化要因になるわけではない」というものだ。仮想化はある意味単純な機能であり、仮想化環境が実現できてくれさえすればよいわけだ。そこで、仮想化環境を提供するベンダー各社は運用管理ツールなど、ハイパーバイザの周辺を固めるソフトウェアやサービスなどをビジネスの中核に据えているのが実情だ。Cathrow氏は、libvirtやoVirtの取り組みを、「管理ツールによる"囲い込み"に対抗し、オープンにする」ための手段と位置づけており、ハイパーバイザや管理ツールに対する取り組みが、一貫したビジョンに基づいて展開されていることを伺わせた。
これまで、ハイパーバイザは安定性やパフォーマンスの観点から軽くて小さいことが重視され、提供側も、最小限の機能に絞り最小限のオーバーヘッドで仮想化機能を提供していることをアピールするのが普通だった。Red Hatのハイパーバイザの取り組みはこれとは方向性が異なり、既に構築されているLinuxの成果を活用する形で効率よくハイパーバイザを実現することで現実的なメリットに繋げようとしていると位置づけられる。ちょっとした発想の転換とも言えそうだが、よく考えられた効果的な戦略だと評価してよいように感じられる。