第15回 Windows Server 2012 R2プレビュー版のHyper-V概要:Windows Server 2012クラウドジェネレーション(1/2 ページ)
次期Server OSであるWindows Server 2012 R2のプレビュー版の機能解説の第3回。今回は、新しくなったHyper-Vの機能概要とUEFIサポートについてまとめる。UEFIのサポートにより、2Tbytes超のディスクからのブートやレガシー・フリーでオーバーヘッドの少ない仮想環境が実現されている。
2013年6月に次期Server OSである「Windows Server 2012 R2」の情報が公開され、Preview版の配布も始まった。前回はWindows Server 2012 R2で追加/削除された機能の概要と、PowerShell 4.0のDSCについて簡単に見てきた。今回は、改善されたHyper-V編の第1回として、Hyper-Vの概要とUEFIサポートについて取り上げる。
Hyper-Vの新機能概要
まずは新しいWindows Server 2012 Previewで導入される予定のHyper-Vの新機能や機能強化点についてまとめておく。
機能 | 新/更新 | 内容 |
---|---|---|
共有仮想ディスク | 新機能 | ・VHDXファイルを仮想マシン間の共有ストレージとして利用可能 ・VHDXファイルをクラスタ共有ボリューム(CSV)として利用可能 ・VHDXファイルをスケールアウト・ファイル・サーバで利用可能 ・SCSI接続のVHDXファイルでのみ共有可能(OSのシステム・ディスクや差分ディスクでは利用不可) ・ゲストOSはWindows Server 2012かWindows Server 2012 R2でのみ共有可能 |
仮想ディスクの動的リサイズ | 更新 | ・仮想マシン実行中の動的なボリューム・サイズ拡大 ・仮想マシン実行中の動的なボリューム・サイズ縮小(ボリュームの末尾に空き領域がある場合のみ) ・ただし実行中の拡大/縮小はVHDXでのみサポート ・SCSI接続の仮想ディスクでのみサポート(ブート・ドライブの動的リサイズは「世代2」の仮想マシンでのみサポート |
ストレージのQoS | 新機能 | ・最大IOPS(秒当たりの入出力処理回数)の制限 ・最低IOPSの予約 ・仮想マシンごとのIOPSの測定(課金などのためにIOPS値を計測可能)。平均値や遅延時間、総読み出し量、総書き込み量などを計測可能 |
ライブ・マイグレーション | 更新 | ・Windows Server 2012からWindows Server 2012 R2へのライブ・マイグレーションはダウン・タイムなしで実行可能。これにより、Windows Server 2012からの移行が容易になる(逆方向のマイグレーションは不可) ・マイグレーションのパフォーマンスを制御するためのオプション設定が導入された。 ・マイグレーション時にデータの圧縮やSMB 3.0のSMB Direct(OSを介さずにハードウェアDMAで転送する技術)、SMBマルチチャネル転送などを利用可能 |
仮想マシンの「世代」 | 新機能 | ・オーバーヘッドを軽減させた新しい仮想マシン・アーキテクチャの導入 ・従来のものは「世代1」、新しいものは「世代2」として区別 ・世代2では、セキュア・ブート、SCSIブート、SCSI DVDブート、ネットワークPXEブート、UEFIファームウェアをサポート ・世代2では、レガシー・デバイス・サポートを削除 |
新統合サービス | 更新 | ・ネットワーク接続なしでのファイル・コピーのサポート |
エクスポート機能 | 更新 | ・仮想マシン実行中のエクスポートのサポート(エクスポートのために仮想マシンをシャットダウンする必要がない) |
フェイル・オーバー・クラスタとHyper-V | 更新 | ・クラスタを構成する仮想マシンの実行中に、ブート・ディスクやデータ・ディスクに障害が発生したことを検出すると、自動的にクラスタ内のほかの場所へリロケーションして再起動する ・ハードウェアの障害などによってネットワークの接続性が途切れたときも自動的にリロケーションする |
拡張セッション・モード | 新機能 | ・セッション・モードの拡張(USBやスマート・カード、オーディオ、プリンタ、クリップボードなどを含む各種ローカル・デバイスのサポート) ・リモート・デスクトップ接続での仮想マシンへの接続のサポート |
Hyper-Vレプリカ | 更新 | ・拡張レプリカ・サーバのサポート。通常のレプリカ・サーバに加え、レプリカ先の障害に備えて、そこからさらにもう1台の拡張レプリカ・サーバをサポート。障害発生時にはその拡張サーバで業務を引き継ぐ ・レプリケーションの頻度が固定的な間隔でなく、変更可能になった |
Linuxサポート | 更新 | ・動的メモリのフル機能のサポート ・オンライン・バックアップ ・オンラインVHDXリサイズ ・新ビデオ・ドライバ |
管理機能 | 更新 | ・リモート・デスクトップによる描画 ・ただし以前の(Server 2012より前の)HVマネージャからは接続できない |
仮想マシンの自動アクティベーション | 新機能 | ・仮想マシン上にインストールしたWindows 8.1やWindows Server 2012 R2を、KMSサーバを使う異なく自動アクティベーションする |
Windows Server 2012 R2のHyper-Vの機能概要 |
各Server OSごとの仮想マシンの仕様を次に示しておく。Windows Server 2012 R2 Preview版では、これらの仕様はWindows Server 2012のHyper-Vのものと同じままのようである。
OS | Windows Server 2008 R2 | Windows Server 2012 | Windows Server 2012 R2 |
---|---|---|---|
ホストの最大コア数 | 64 | 320 | 320 |
ホストごとの最大仮想CPU数 | 512 | 2048 | 2048 |
ホストの最大物理メモリ | 1Tbytes | 4Tbytes | 4Tbytes |
VMごとの最大CPU数 | 4 | 64 | 64 |
VMごとの最大メモリ・サイズ | 64Gbytes | 1Tbytes | 1Tbytes |
ホストごとの最大同時アクティブVM数 | 384 | 1024 | 1024 |
最大仮想ディスク・サイズ | 2Tbytes(.vhd) | 64Tbytes(.vhdx) | 64Tbytes(.vhdx) |
ゲストNUMA | 不可 | 可 | 可 |
クラスタ内の最大ノード数 | 16 | 64 | 64 |
クラスタ内の最大VM数 | 1000 | 8000 | 8000 |
Windows Server OSのHyper-Vの最大サポート仕様 Windows Server 2012 R2のHyper-Vにおける最大サポート・サイズなどの仕様は、Windows Server 2008よりも拡大されているが、Windows Server 2012のHyper-Vと同じである。 |
仮想マシンの新アーキテクチャ「世代2」の導入
Windows Server 2012 R2のHyper-Vでは、新しく仮想マシンに「世代(Generation)」という概念が導入され、仮想マシンのアーキテクチャが一新されたということはすでに前々回で簡単に述べた。従来までの仮想マシン・アーキテクチャは「世代1」と呼ばれ、互換性や古いOSなどのために残されているが、これとは別に新しく「世代2」というアーキテクチャが導入される。
従来の仮想マシン(世代1)では過去との互換性を考え、非常に古いPC/ATアーキテクチャ(10年以上前の、Intel 440BXチップセットが使われていた頃のPCシステム)をエミュレーションしていた。IDEやPS/2キーボード/マウス・ポート、シリアルやパラレル・ポートなどの「レガシー・デバイス」もサポートされており、古いOSを使うには便利かもしれないが、機能やパフォーマンスは犠牲になっていた。例えば、最近のPCシステムでは当たり前の2Tbytes以上のディスク(からのブート)やUEFIブートなどは利用できなかった。また、古いIDEデバイスなどをエミュレーションするため、いちいちデバイス固有のデータ形式に変換したり、その逆を行うなど、オーバーヘッドも少なくなかった。
新しいHyper-Vの世代2アーキテクチャでは、互換性のために残されていたこれらのレガシー・デバイスやBIOSなどを排除し、デバイスに対する要求はすべてVMBusを介してハイパーバイザ(ホストのWindows OS)へパスして処理するようになっている。ゲストのWindows OSの視点から見ると、デバイス・ドライバへ渡されたコマンドやデータは、そのままハイパーバイザへ渡され処理されるので、エミュレーション処理がなくなる分、オーバーヘッドの軽減(必要なCPUパワーの削減)が期待できる。従来でもネットワークやSCSIデバイスなどに対する入出力は、エミュレーションせずにハイパーバイザへ渡されていたが(統合サービスを組み込んだ場合)、それをシステム全体に適用したものといえる。
Hyper-Vの世代1と世代2におけるデバイス・サポートの違いを次に示しておく。
デバイス | 世代1 | 世代2の該当デバイスと機能拡張点 |
---|---|---|
IDEコントローラ | Intel 82371 | 仮想SCSIコントローラ。最大64TbytesまでのVHDX仮想ファイルからのブートをサポート |
IDE CD-ROM | 仮想CD-ROM | 仮想SCSI CD-ROM。動的なデバイスの追加をサポート |
ファームウェア | レガシーBIOS | UEFI(EFI)をサポート。セキュア・ブートや2Tbytes超のディスクからのブート、高速なブート/休止のサポート |
ネットワーク | 仮想マシン・バス・ネットワーク・アダプタ | Hyper-Vネットワーク。IPv4&IPv6のネットワーク・ブート(PXE)サポート |
ビデオ | 仮想マシン・バス・ビデオ・デバイス | Hyper-Vビデオ。 |
フロッピー&DMAコントローラ | 仮想フロッピー・ディスク・ドライブ | (なし) |
UART(COM:ポート) | 仮想通信ポート | デバッグ用途向けにオプションとしてサポート |
i8042(キーボード・コントローラ) | 仮想デバイス | ソフトウェア・ベースの入力デバイス(エミュレーションなし) |
PS/2キーボード&マウス | 仮想デバイス | ソフトウェア・ベースの入力キーボード&マウス(エミュレーションなし) |
i8042(キーボード・コントローラ) | 仮想デバイス | ソフトウェア・ベースの入力デバイス(エミュレーションなし) |
ビデオ | S3ビデオ | ソフトウェア・ベースのビデオ(エミュレーションなし) |
バス | PCIバス | VMBus |
PIC(Programmable Interrupt Controller) | 仮想デバイス | なし(不要) |
PIT(Programmable Interrupt Timer) | 仮想デバイス | なし(不要) |
スーパーI/Oデバイス | 仮想デバイス | なし(不要) |
仮想マシンの世代によるサポート・デバイスの違い 世代2ではレガシー・デバイスのサポートをなくすことにより、エミュレーションのオーバーヘッドなどを抑制している。 |
なお世代2を利用するためには以下のゲストOSが必要である。これ以外のゲストOSは世代1でのみ利用できる。
- 64bit版のWindows 8とWindows Server 2012
- 64bit版のWindows 8.1とWindows Server 2012 R2
仮想マシンの世代の選択は仮想マシンの作成時にのみ選択できる。一度作成した後で変更はできないので、注意して選択する。後でOSをインストールした仮想ディスク(VHDX)だけを移行させようとしても、世代1と世代2ではインストールされるディスクの形式がまったく異なり、互換性はない。
仮想マシンの世代の選択
仮想マシンの作成時には、最初に仮想マシン・アーキテクチャの世代を選択する必要がある。
(1)従来と互換性のある仮想マシンを作成するには、これを選択する。一度作成すると後で変更できない。
(2)新しいレガシー・フリーな仮想マシンを作るにはこれを選択する。ただし利用できるゲストOSには制限がある。
世代2の仮想マシンにおけるデバイス・マネージャの画面を次に示しておく。キーボードやマウス、IDEなどのレガシー・デバイスはVMBusを経由してハイパーバイザに渡され、エミュレーションに伴うオーバーヘッドを削減している。
世代2の仮想マシンのデバイス・マネージャ画面
これはWindows Server 2012 R2 PreviewのHyper-V上にインストールした、Windows Server 2012 R2 Preview Datacenterエディションのデバイス・マネージャの画面。世代1の仮想マシン(Windows Server 2012以前のHyper-Vの環境)と違い、ほとんどのデバイス(「Microsoft Hyper-V 〜」という名称のデバイス)はVMBus経由でハイパーバイザによって処理される。エミュレーションが必要なレガシー・デバイスはもうサポートされない。世代1のデバイス・マネージャの画面については、Windows 8.1 Previewの記事参照。
Copyright© Digital Advantage Corp. All Rights Reserved.