論理分割(LPAR)方式の仮想化
LPAR方式の技術的な特長、VM方式との比較
以下では、VM方式とLPAR方式の違いを、特にCPUとI/Oの制御に着目して解説します。
VM方式とLPAR方式の違いの1つは、仮想CPUコアに対する物理CPUコアの割り当て方法です。
VM方式では一般的に、仮想CPUコアに対して、必要な瞬間に空いている物理CPUコアを割り当てます。これを、CPU共有割り当てと呼びます。
一方、LPAR方式では、CPU共有割り当てのほか、仮想CPUコアに対して常時物理CPUコアを割り当てる運用が可能です。これを、CPU占有割り当てと呼びます。CPU占有割り当てでは、仮想化を制御するハイパーバイザのオーバー・ヘッドが小さくなるため、性能面で有利です。
なお、日立製作所では、各種の展示会において、CPU共有割り当てとCPU占有割り当ての性能の違いを示すデモを公開しています(記事執筆時付近では、2010年7月22日、23日に「日立uVALUEコンベンション2010」を開催)。
CPUの制御と並ぶ、VM方式とLPAR方式の違いの1つが、I/Oの制御です。VM方式とLPAR方式では、I/Oを仮想化するアーキテクチャが異なります。VM方式では、「ハイパーバイザ・エミュレーション・モデル」や「サービスVMモデル」を採用し、I/Oを共有することがほとんどです。一方、LPAR方式では、仮想マシンが直接I/Oを利用する「パススルー・モデル」を用います。
図3に、サーバーからFC(Fibre Channel)接続のストレージを使うケースにおける、各方式の概略構成を示します。
VM方式では、仮想化ソフトの内部やペアレント(親)VM内に、I/Oデバイスのエミュレータを設けます。ゲストOSは、I/Oを実行する度にエミュレータを起動し、エミュレータを介してI/Oに接続します。これに対して、LPAR方式では、ゲストOSが実行したI/O実行動作を、直接I/Oカードに反映します。
VM方式の場合は、種々異なるI/Oデバイスを、抽象化された標準I/Oデバイスに見せかける必要があります。一方、LPAR方式の場合は、物理I/OデバイスをそのままゲストOSに見せればよいので、エミュレーションが必要ありません。
図3: LPAR方式の仮想化は、I/Oを直接利用するパススルー・モデルを採用(クリックで拡大) |
なぜVM方式ではエミュレーションをするのでしょうか。実は、I/Oパススルー・モデルを実現するためには、I/Oカードと物理メモリー間でデータを転送するため、および、複数のゲストOSからI/Oカードを共有するために、ハードウエアによる支援を必要とします。ソフトウエアだけでは実現できない、という事情があるのです。
なお、VM方式とLPAR方式では、ディスク・フォーマットも異なります。LPAR方式では、ゲストOSのディスク・フォーマットは、物理サーバーのディスク・フォーマットと同一で構いません。1つのゲストOSに対して、物理ディスクを1つ割り当てて使用します。一方、VM方式では、ハイパーバイザがディスク全体を、仮想環境専用のフォーマットで使用します。個々のゲストOSは、その中を仮想的なディスク・ドライブとして使用します。
LPAR方式とVM方式を使い分ける
ゲストOSからハードウエアに直接アクセスできるLPAR方式は、高信頼、高性能を目指す基幹システムに適しています。しかし、ある種の柔軟性については不得意であり、VM方式を用いた方がよいケースもあります。
LPAR方式が適しているのは、ゲストOSからのI/Oアクセスが、物理サーバー上で動作したときのアクセスと同じ(デバイス・ドライバが同じである、と言い換えてもよい)であることが要求される場合です。具体的な例には、以下のようなケースがあります。
- ゲストOS間でホット・スタンバイによる高信頼システムを組む
- SANストレージにおいて、ボリューム複製機能やデータ・コンバート機能など、単なるread/writeではない高度な機能を利用する
- LTO(Linear Tape-Open)のような、エミュレーションが難しい特殊なI/O装置を利用する
- 本番システムに物理サーバーを使うシステム開発プロジェクトにおいて、開発環境用に仮想サーバーを利用する
一方、VM方式が適しているのは、ゲストOSに物理サーバーの仕様が直接見えては困る場合です。具体的な例には、以下のようなケースがあります。
- 物理サーバーではすでにサポートが終了した古いOSを、継続的に利用する
- 負荷の変動に応じて、VMを停止させることなく、異なる物理サーバーに移動させる
ここまで見てきたように、VM方式とLPAR方式を、用途に応じて使い分けることで、トータルで効率の良いシステムを構築できるようになります。次回は、LPAR方式の仮想化機構であるVirtageに、システム構築上どのような利点があるかを、詳しく解説します。