いまさら聞けないMicrosoftのハイパーバイザー「Hyper-V」の概要今だからこそ学び直すHyper-V再入門(1)

サーバ仮想化技術が企業システムで利用されるようになって20年以上が経過し、当たり前すぎてもはや誰も意識することはなくなりました。また、パブリッククラウド誕生から15年以上が経過した今日では、クラウドを扱うエンジニアは多数いるものの、オンプレミスの仮想化技術に関するノウハウが薄れつつあり、苦労している現場もあると聞いています。そこで本連載では、あらためてMicrosoftが提供する仮想化技術「Hyper-V」を学び直していきます。

» 2024年12月23日 05時00分 公開
[後藤諭史@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「今だからこそ学び直すHyper-V再入門」のインデックス

連載目次

Hyper-Vの歴史と特徴

 ハードウェア仮想化(サーバ仮想化)技術の歴史は、それこそ1960年代までさかのぼることができます。企業システムにおけるx86アーキテクチャのハードウェア仮想化の歴史は、1998年のVMwareの誕生、翌1999年の初の商用ハードウェア仮想化製品「VMware Workstation 1.0」の提供から始まったといっても過言ではないでしょう。

 それから幾つものベンダーがハードウェア仮想化技術を提供し始めました。Microsoftもその中の一社になります。

 Microsoftが同社初のハードウェア仮想化製品「Microsoft Virtual Server」を2004年にリリースし、Windows Serverの標準機能として仮想化技術「Hyper-V」を搭載した初のWindows Server OS「Windows Server 2008」をリリースしたのは2008年でした。翌2009年登場の「Windows Server 2008 R2」でHyper-Vは「Hyper-V 2.0」となって大きな進化を遂げ、最新の「Windows Server 2025」に至るまで進化を続けています。

 また、Hyper-VはWindows Serverのみの機能ではなく、2012年に提供が開始された「Windows 8」(ただしPro、Enterpriseに限る)では、「クライアントHyper-V」としてクライアントOSでもハードウェア仮想化技術が使えるようになりました。

 クライアントOSでも使用可能なHyper-Vですが、その大きな特徴は以下の点といえます。

  1. Windows OSの標準機能として利用可能
  2. マイクロカーネル型ハイパーバイザー
  3. VMBusによるチャネルベースの通信メカニズム
  4. 世界最大規模の実績を持つハイパーバイザー

Windows OSの標準機能として利用可能

 1つ目の特徴は、Windows OSを購入するだけで、追加コストを負担することなくハードウェア仮想化技術を使用可能という点です。

 企業システムでは、Linuxをはじめとする多くのOSが使用されていますが、多くはWindows Server OSが占めているでしょう。他社のハードウェア仮想化製品を利用して仮想化基盤を構築した場合、ハイパーバイザーのライセンスはもちろんのこと、ゲスト用のOSライセンスとしてWindows Serverのライセンスを調達することが必要です。

 一方、Hyper-Vを利用する場合、Hyper-Vは仮想化ホストとなるWindows Serverの標準機能のため、ハイパーバイザーのライセンスはOSのライセンスに含まれています。また、ゲスト用のWindows Serverライセンスは、仮想化ホストとなるWindows Serverのライセンスに一部または無制限で含まれているため、別途購入する必要がありません。

 Windows Server Datacenter Editionを購入することで、そのライセンスが割り当てられたHyper-Vホスト上では、無制限にWindows Server OSの仮想マシンを稼働させることが可能となり、コストメリットは大きいといえるでしょう。

マイクロカーネル型ハイパーバイザー

 2つ目の特徴は、Hyper-Vは「マイクロカーネル型ハイパーバイザー」であるため、ハードウェアを制御するデバイスドライバは、Windows Serverで利用可能なものであればそのまま利用可能である点です。

 以下の図1はマイクロカーネル型ハイパーバイザーと、よく比較されるモノリシック型ハイパーバイザーの実装概念図です。両者の大きな違いは、ハードウェアを制御するためのデバイスドライバをどの層で保持しているか、という点になります。

ALT 図1 モノリシック型ハイパーバイザーとマイクロカーネル型ハイパーバイザー

 モノリシック型ハイパーバイザーは、ハイパーバイザー内にデバイスドライバを保持しているため、ハイパーバイザーベンダーによって提供される場合がほとんどです(ハードウェアベンダーが専用ドライバを提供することもあります)。

 ハイパーバイザーに組み込まれた専用のデバイスドライバであるため高いパフォーマンスが得られますが、専用のデバイスドライバを開発する必要があるため、対応ハードウェアが限定されることが弱点です。

 対してHyper-Vが搭載されるWindows Serverの最大の特徴は、巨大なエコシステムが構築されている点になります。さまざまな、数多くのハードウェアがWindows OSをサポートしており、安定した動作が期待できます。これらのエコシステムを切り捨てて、ハイパーバイザー用にWindows OSをサポートする全てのハードウェアの新たな専用デバイスドライバを再開発するのは現実的ではありません。従って、Hyper-VではWindowsエコシステムを生かせるようにマイクロカーネル型を採用しています。

 Hyper-Vを有効化すると、Windows OSのさらに下にハイパーバイザーが挿入されます。このハイパーバイザーは軽量なものとなっており、ネットワークサービスやストレージサービスは一切提供しません。

 では、それらのサービスは誰が提供するのでしょうか。Hyper-Vを有効化したWindows OSが「親パーティション」(「ルートパーティション」とも呼ばれます)としてハイパーバイザーが提供する機能の一部を、ハイパーバイザーに代わって提供することになります。

 デバイスドライバはネットワークデバイスやストレージデバイスをコントロールするために必要なものであり、親パーティションであるWindows OSに組み込むことで、それらデバイスをHyper-Vでも使用可能にしています。

 今まで築き上げてきたWindowsを中心とする巨大なエコシステムを活用するためにも、Hyper-Vでマイクロカーネル型を採用するのは必然だったのでしょう。

VMBusによるチャネルベースの通信メカニズム

 3つ目の特徴である「VMBus」は、Hyper-Vの中核的なサービスといってもよいでしょう。簡単に説明すると、ハードウェア仮想化技術はハードウェアをエミュレーションし、仮想マシンに仮想的なハードウェアを提供する技術です。仮想マシンから見えるハードウェアは全て仮想デバイスであり、仮想デバイスへの要求は親パーティション内のデバイスにリダイレクトされます。

 VMBusはゲストOSと親パーティションをつなぐ「通信チャネル」の役割を持ち、仮想デバイスへの要求をVMBus経由でリダイレクトすることで、パフォーマンス低下を極限まで抑えて、高いパフォーマンスを発揮させます(図2)。

ALT 図2 VMBusの概念図

 VMBusは図2の通り、「統合サービス」(IC)や「仮想化サービスクライアント」(VSC)と連携して稼働するため、「Hyper-V統合サービス」を仮想マシンにインストールすることで使用可能になります。

 Windowsゲスト用のHyper-V統合サービスは、かつてはISOイメージが提供されていましたが、現在はWindows OSに組み込まれており、また必要に応じて「Windows Update」で更新されるようになったため別途インストールする必要はなくなりました。

 Linux OSに関しても、かつては「Linux Integration Services」(LIS)を別途ダウンロードしてインストールする必要がありましたが、例えば「Red Hat Enterprise Linux(RHEL)6.4」以降では組み込みの統合サービスが提供されており、インストールする必要ありません。

 なお、RHEL 6系とRHEL 7系に関しては、Hyper-V上で使用する機能によっては、組み込みの統合サービスではなく、Microsoftが提供するLISをインストールする必要があります。詳細は以下のWebページを確認してください。

 RHEL以外のLinux OSに関しては、以下のWebページから該当するOSを選択してLISの有無を確認してください。

メモ

 統合サービスが組み込まれているバージョンでも、特定の機能を有効にする場合は追加でパッケージをインストールしなければならない場合があります。詳細は上記Webページのドキュメントを確認してください。


世界最大規模の実績を持つハイパーバイザー

 最後の「世界最大規模の実績を持つハイパーバイザー」という特徴ですが、以下のWebページのドキュメントに興味深い記述があります。

 このドキュメントの冒頭に「The Azure hypervisor system is based on Windows Hyper-V」と記述されている通り、世界最大級のパブリッククラウドサービスである「Microsoft Azure」はHyper-Vを基盤としており、その動作実績は類を見ないものといえます。

 Microsoft Azureで培われたテクノロジーがHyper-Vに生かされている形であり、まさに日々進化し続けるハイパーバイザーといえるでしょう。

Hyper-Vの構成要素

 Hyper-Vを学ぶためには、Hyper-Vを構成する各コンポーネント/機能の理解が不可欠です。以下のコンポーネントや機能を、今後の連載で詳しく説明していきます。

  1. Hyper-Vホストの構成と管理機能
  2. 仮想マシンの構成
  3. 仮想スイッチと仮想ネットワークアダプター
  4. ストレージ構成とハイパーコンバージドインフラストラクチャ
  5. 冗長化機能(フェイルオーバークラスター)
  6. ハードウェアオフロード機能

 (1)〜(4)では単体のHyper-Vホストにおける構成を学び直し、(5)で企業システムでの利用に必要不可欠な冗長化機能を振り返ります。そして、(6)で高いパフォーマンスを引き出すために必要なハードウェア周りの機能を紹介する予定です。

筆者紹介

後藤 諭史(ごとう さとし)

Microsoft MVP for Cloud and Datacenter Management(2012-2025)。現業の傍ら、コミュニティーイベントでの登壇や著作にてMicrosoftテクノロジーに関する技術情報の発信、共有を続けている。ネットワークやハードウェアといった物理層に近いところが大好きな、昔ながらのインフラ屋さん。得意技はケーブル整線。近著は『詳解! Windows Server仮想ネットワーク』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。