[運用]
|
|
Microsoft Hyper-Vのアーキテクチャ概要
Hyper-Vは、Microsoftが提供しているハイパーバイザ型の仮想化ソフトウェアである。従来、MicrosoftはVirtual Server 2005 R2を単体の仮想化ソフトウェアとして無償で提供していたが、Windows Server 2008からはOSの一機能として提供されるようになっている。それだけでなく、Virtual Server 2005 R2はホスト・ベースのアーキテクチャであったのに対し、Hyper-Vではベアメタル型ハイパーバイザにアーキテクチャが変更されているほか、64bitのゲストOSや仮想マシン上でのマルチプロセッサに対応しているなど各種機能が強化され、本番環境など本格的な用途で利用できるようになっている。
Virtual Server 2005 R2 | Hyper-V | |
アーキテクチャ | ホスト・ベース |
ベアメタル型ハイパーバイザ |
32bitゲストOS | ○ |
○ |
64bitゲストOS | × |
○ |
マルチプロセッサVM | × |
最大4プロセッサ |
VM当たりの最大メモリ容量 | 3.6Gbytes |
32Gbytes |
System Center Virtual Machine Managerによる管理 | ○ |
○ |
クラスタサポート | ○ |
○ |
VM最大稼働数 | 64 |
196 |
ユーザー・インターフェイス | Web |
MMC 3.0 |
Virtual Server 2005 R2とHyper-Vの比較 |
Hyper-VはWindows Server 2008の各エディション(Standard、Enterprise、Datacenter)で使用可能であるほか、単体製品であるHyper-V Server 2008が無償でダウンロード可能になっている。また、System Center Virtual Machine Manager 2008(SCVMM)を組み合わせて使用することによって、複数サーバの一元管理を行える。SCVMMはVirtual Server 2005 R2やHyper-Vの管理だけでなく、VMware VirtualCenterを経由したVMware Infrastructure 3の管理にも対応している。
Hyper-Vのアーキテクチャ
Hyper-Vの特徴は、ハイパーバイザ自体がWindows Server 2008と完全に統合されていることにある。Hyper-Vのハイパーバイザは、プロセッサの仮想化支援機能(Intel VT/AMD-V)に完全に対応しており、これらの機能が利用できない環境では動作しない。また、BIOS上でデータ実行防止機能(DEP)を有効にすることが必要となる。データ実行防止機能とは、メモリをコード領域とデータ領域とに分け、スタックやヒープ上に置かれたコードの実行を制限することによって、バッファ・オーバーフローなどの脆弱(ぜいじゃく)性を利用した攻撃からシステムを保護するための機能であるが、この機能がHyper-Vを稼働させるときの前提となっている。
Hyper-Vでは、VMware ESXでのコンソールOS、Xenでのドメイン0に相当する管理用のOSが稼働する領域を親パーティション(Parent Partition)、またゲストOSが動作する領域のことを子パーティション(Child Partition)と呼んでいる。Hyper-VはWindows Server 2008に完全に統合されているため、親パーティション用のOSとして必ずWindows Server 2008が使用される。
Windows Server 2008には、従来のWindows GUIを持たずコマンドプロンプトのみで最低限の管理を行うServer Coreという機能があり、Hyper-Vの親パーティションとしてこのServer Coreが使用できる。Hyper-Vの管理は、ローカルまたはリモートにインストールされたマイクロソフト管理コンソール(MMC)ベースのHyper-Vマネージャから行えるが、Server Coreを使用している場合は、リモートからの管理が必須となる。Hyper-Vマネージャを使用して、管理者は仮想マシンの作成やゲストOSのインストール、スナップショットの取得や仮想ネットワーク・スイッチの作成などの作業が実行できる。Hyper-Vにおいて仮想マシンは、基本的にVHD(Virtual Hard Disk)形式のファイルとして保存されるため、状態の保存やバックアップなどが容易に行える。
また、複数のHyper-VサーバをSystem Center Virtual Machine Manager(SCVMM)の管理コンソールを使用して管理できる。SCVMM管理コンソールからは、複数のHyper-Vホストに対しての仮想マシンの作成や移動、ライブラリ化などの管理作業を実行可能だ。
System Center Virtual Machine Manager |
SCVMMによって、複数のHyper-Vサーバの管理が行える。 |
ゲストOSとしてWindows Server 2008、Windows Server 2003、Windows Vista、Windows XPなどのWindows OSを使用する場合、OSのインストール後に統合サービス・コンポーネントを導入することによって、VMBusと呼ばれる仮想バスにアクセスするためのVSC(Virtualization Service Client)がゲストOS上に導入される。この仮想バスを通して親パーティション上のVSP(Virtualization Service Provider)へアクセスし、ネイティブ環境で動作しているデバイス・ドライバの機能を利用する。また、通常のWindowsカーネルの代わりに、Hyper-V対応のカーネルがインストールされる。このとき、Windows 2000など、VMBusに対応していないゲストOSの場合は、仮想デバイスのエミュレーションにより物理デバイスへのアクセスを行う。
Xen対応の準仮想化カーネルを使用したLinuxディストリビューションも、ゲストOSとして使用できる。Xen対応カーネルを使用する場合の統合サービス・コンポーネントもMicrosoft ConnectのWebサイトより提供されており、ゲストOS上にインストールすることで、Linux用のVSC(Virtualization Service Client)が導入され、VMBusによるデバイスのアクセスが利用可能である。現在は、SUSE Linux Enterprise Server SP1のみがゲストOSとして正式にサポートされたLinuxディストリビューションであるが、将来的にはRedHat Enterprise Linuxもサポートされる予定だ。
下図は、Hyper-Vのアーキテクチャ概要を示したものである。Hyper-VはWindows Server 2008に統合されたハイパーバイザであり、Windows Server 2003/2008をはじめとするWindows環境での使用に最適化されている。また、アーキテクチャ上はVMware ESXよりXenに近く、またXen対応カーネルを使用したLinuxとも高い互換性を持っている。
Hyper-Vのアーキテクチャ概要図 |
Hyper-Vの管理機能
Hyper-Vの管理機能は、使用するWindows Server 2008のエディションによって異なっている。無償のHyper-V Server 2008では基本的な仮想化機能を提供するが、Windows GUIは提供されず、Server Coreのみとなっているほか、Hyper-V以外の役割を追加することはできない。また、Hyper-V上で追加のライセンス購入なしに稼働させることのできるWindows Server 2003/2008の仮想インスタンス数が、それぞれStandard Editionで1VM、Enterpriseで4VM、Datacenterでは無制限であるのに対し、Hyper-V Server 2008ではVMごとにライセンスが必要となっているなどの違いがある。よって、Hyper-V Server 2008は本番環境などの利用というよりも、仮想環境のテストや機能確認のために利用するのに向いている。
Standard EditionではHyper-Vの基本機能およびローカルGUIなどの機能が利用できるが、Quick Migrationのような複数サーバにわたる管理機能が利用できないため、あくまでも小規模環境での利用にとどまると思われる。そのため、仮想環境を本格的に活用するためにはWindows Server 2008 Enterprise Edition以上の利用が望ましい。
Microsoft Hyper-V Server 2008 | Windows Server 2008 Standard | Windows Server 2008 Enterprise | Windows Server 2008 Datacenter | |
サーバ統合 | ○ |
○ |
○ |
○ |
テストと開発 | ○ |
○ |
○ |
○ |
OSの混在(LinuxとWindows) | ○ |
○ |
○ |
○ |
ローカルGUI | − |
○ |
○ |
○ |
フェールオーバー・クラスタ | − |
− |
○ |
○ |
Quick Migration | − |
− |
○ |
○ |
32Gbytes以上の大容量メモリのサポート(ホストOS) | − |
− |
○ |
○ |
4プロセッサ以上のサポート(ホストOS) | − |
− |
○ |
○ |
サーバの役割の追加 | − |
○ |
○ |
○ |
付属する仮想化ライセンス数 | VMごとにライセンス必要 |
1VM |
4VM |
VM無制限 |
Hyper-Vの各エディション |
以下は、Enterprise Edition以上で使用することができる管理機能である。
■フェールオーバー・クラスタ
Windows Server 2008のフェールオーバー・クラスタ機能によって、Hyper-Vで最大8ノードまでのクラスタを構築することが可能である。クラスタを構築するためには、SANやiSCSIなどによる共有ストレージが必要となる。フェールオーバー・クラスタの機能によって、ノードに障害が発生した場合は共有ストレージ上にある仮想マシンをほかのノードが自動的に引き継いで立ち上げ直すことができる。
■Quick Migration
現在のHyper-Vには、VMware ESXのVMotionやCitrix XenServerのXenMotionに相当するようなライブマイグレーションの機能はない。その代わり、フェールオーバー・クラスタの機能を利用してQuick Migrationの機能を代替できる。Quick Migrationとは、仮想マシンをサスペンドした状態でクラスタのフェールオーバーを実行することによって、比較的短い停止時間でほかのHyper-Vホストに仮想マシンを移行させる機能である。この機能を使用することによって、完全な無停止ではないものの短時間で仮想マシンを移動させることができるため、メンテナンスなどの用途に有効となる。なお、Windows Server 2008 R2で搭載されるHyper-V 2.0から、ライブマイグレーションの機能がサポートされる予定である。
さらに、以下の機能はSystem Center Virtual Machine Manager(SCVMM)との組み合わせにより使用することができる代表的な管理機能である。SCVMMの機能については、「仮想化環境を効率よく管理する『System Center Virtual Machine Manager 2008(SCVMM)』の概要」を参照していただきたい。
■複数の仮想環境の統合管理(Hyper-V、Virtual Server 2005 R2、VMware Infrastructure 3)
SCVMMによって、Hyper-VだけでなくVirtual Server 2005 R2、またVMware VirtualCenter経由でのVMware Infrastructure 3の環境をコンソールから統合管理することができる。それぞれの環境での仮想マシンの作成および削除、電源制御やほかのホストへの仮想マシンの移動(Quick MigrationやVMware VMotionを含む)などの管理作業の実行がSCVMMの管理コンソールから行える。
■ライブラリ機能
仮想マシンをテンプレート化してライブラリに保存しておくことにより、必要に応じてそのテンプレートから新規に仮想マシンを展開できる。
■P2V(Physical to Virtual)およびV2V(Virtual to Virtual)
現在稼働している物理マシンのOSを、Hyper-V上の仮想マシン上で動作するVHD形式に変換することができる。現在のところ、Windows 2000、Windows Server 2003、Windows XP、Windows VistaなどのOSに対応している。また、VMware環境で作成された仮想マシンもHyper-V形式に変換できる。
■Windows PowerShellによるタスクの自動化
SCVMMの管理コンソールによって実行できるタスクは、すべてWindows PowerShellのスクリプトに変換することが可能である。これにより、あらかじめ定義しておいたタスクをスクリプト化して、繰り返し実行するように設定すれば、定型の管理作業を自動化し、管理者の負担を軽減できる。
VMware InfrastructureやCitrix XenServerなどと比較するとまだ機能的には差がある部分はあるが、Hyper-VとSCVMMの組み合わせは、エンタープライズで仮想環境を使用するためのさまざまな管理機能を提供しており現在でも十分に実用的なプラットフォームであるといえる。
■
次回は、VMware ESXとCitrix XenServer、Hyper-Vのそれぞれの違いに注目し、具体的な機能の比較と用途に応じた製品選択の例について解説する。
INDEX | ||
[運用] 3大仮想化ソフトウェア機能比較 | ||
第2回 Citrix XenServerとMicrosoft Hyper-Vのアーキテクチャ概要 | ||
1.Citrix XenServerの概要 | ||
2.Microsoft Hyper-Vの概要 | ||
運用 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|