第8章 仮想化
8.1. KVM
VirtIO-SCSI
KVM 仮想化のストレージスタックは、virtio-SCSI (SCSI をベースとする KVM 用のストレージアーキテクチャー)を追加することで改善されました。Virtio-SCSI は、SCSI LUN に直接接続する機能を提供し、virtio-blk と比較してスケーラビリティを大幅に向上させます。virtio-SCSI の利点は、約 25 のデバイスを処理し、PCI スロットを使い果たすことができる virtio-blk と比較して、数百のデバイスを処理できることです。
Virtio-SCSI は、次の機能を備えたターゲットデバイスの機能セットを継承できるようになりました。
- virtio-scsi コントローラーを介して仮想ハードドライブまたは CD を接続します。
- QEMU scsi-block デバイスを介してホストからゲストに物理 SCSI デバイスをパススルーします。
- また、ゲストごとに数百のデバイスを使用できるようにします。virtio-blk の 25-device 制限からの改善。
virtio-scsi は、Red Hat Enterprise Linux 6.3 でテクノロジープレビューとして導入され、Red Hat Enterprise Linux 6.4 で完全にサポートされています。Windows ゲスト(Windows XP を除く)も、最新の virtio-win ドライバーでサポートされます。
Intel の Next-generation Core プロセッサーのサポート
Red Hat Enterprise Linux 6.4 では Intel の次世代コアプロセッサーのサポートを qemu-kvm に追加し、KVM ゲストがこのプロセッサーが提供する新機能を活用できるようにします。最も重要な点は次のとおりです。Advanced Vector Extensions 2 (AVX2)、Bit-Manipulation Instructions 1 (BMI1)、Bit-Manipulation Instructions 2 (BMI2)、HLE (HLE)、Restricted Transactional Memory (RTM)、Process-Context Identifier (PCID)、Invalidate Process-Context Identifier (INVPCID) Fused Multiply-Add (FMA)、Big-Endian Move instructions (MOVBE)、F Segment および G Segment BASE 命令(FSGSBASE)、Supervisor Mode Execution Prevention (SMEP)、Enhanced REP MOVSB/STOSB (ERMS)。
AMD Opteron 4xxx シリーズ CPU のサポート
AMD Opteron 4xxx シリーズプロセッサーが qemu-kvm でサポートされるようになりました。これにより、F16C 命令セット、Bit Manipulation、Bit-Manipulation Instructions 1 (BMI1)の宣言、および Fused Multiply-Add (FMA)命令セットなど、このプロセッサーシリーズの新機能を KVM ゲストに公開できます。
SPICE を介した USB 転送を使用したゲストライブマイグレーション
Red Hat Enterprise Linux 6.4 では、KVM は、設定されたすべてのデバイスの既存の USB デバイスリダイレクトを維持しながら、SPICE を介した USB 転送を使用したゲストのライブマイグレーションをサポートします。
USB デバイスを使用したゲストのライブマイグレーション
Red Hat Enterprise Linux 6.4 では、KVM は USB デバイスを使用したゲストのライブマイグレーションをサポートします。Enhanced Host Controller Interface (EHCI)および Universal Host Controller Interface (UHCI)のローカルパススルーと、ストレージデバイス、mice、キーボード、ハブなどのエミュレートされたデバイスがサポートされています。
QEMU ゲストエージェントが更新されました
Red Hat Enterprise Linux 6.4 では、( qemu-guest-agent パッケージにより提供される) QEMU ゲストエージェントに完全に対応するようになりました。アップストリームバージョン 1.1 に更新され、以下の主な機能拡張およびバグ修正が追加されました。
- guest-suspend-disk コマンドおよび guest-suspend-ram コマンドを使用して、Windows システム上の RAM またはディスクにサスペンドできるようになりました。
- guest-network-get-interfaces コマンドを使用して、Linux でネットワークインターフェイス情報を取得できるようになりました。
- この更新により、ファイルシステムのフリーズサポートの改善と修正が提供されます。
- この更新には、さまざまなドキュメントの修正および小さな改善が含まれています。
PV-EOI (準仮想化 end-of-Interrupt Indication)
Red Hat Enterprise Linux 6.3 以前を実行しているホストとゲストには、各割り込みについて 2 つの VM が終了(仮想マシンからハイパーバイザーに切り替わる)が必要です。割り込みを挿入するものと、もう 1 つは割り込みの最後に通知する必要があります。ホストおよびゲストシステムの両方が Red Hat Enterprise Linux 6.4 以降に更新されると、準仮想化エンドオブ割り込み機能をネゴシエートでき、割り込みごとに 1 つのスイッチのみが必要になります。そのため、ホストとゲストの両方として Red Hat Enterprise Linux 6.4 以降を使用すると、virtio ネットワークデバイスを使用した着信ネットワークトラフィックなど、割り込み集約型のワークロードに対して、終了数が半分削減されます。これにより、このようなワークロードのホストの CPU 使用率が大幅に削減されます。エッジ割り込みのみが強化されていることに注意してください。たとえば、e1000 ネットワークはレベル割り込みを使用し、改善されませんでした。
設定可能なサウンドパススルー
(改行と
ライン アウト
として検出されるだけでなく)サウンドデバイスを、ゲストシステムの マイク
または スピーカー
として検出できるように
なりました。音声の録画およびオーディオの特定の入力のみを受け入れるゲストアプリケーションで、サウンドデバイスが正しく機能するようになりました。
8.2. Hyper-V
Microsoft Hyper-V ドライバーのゲストインストールサポートが含まれています。
Microsoft Hyper-V 上の Red Hat Enterprise Linux 6.4 での統合された Red Hat Enterprise Linux ゲストインストールおよび Hyper-V 準仮想化デバイスのサポートにより、ユーザーは Microsoft Hyper-V ハイパーバイザー上で Red Hat Enterprise Linux 6.4 をゲストとして実行できます。以下の Hyper-V ドライバーとクロックソースが、Red Hat Enterprise Linux 6.4 に同梱されるカーネルに追加されています。
- ネットワークドライバー(
hv_netvsc
) - ストレージドライバー(
hv_storvsc
) - HID 準拠のマウスドライバー(
hid_hyperv
) - VMbus ドライバー(
hv_vmbus
) - ユーティリティードライバー(
hv_util
) - IDE ディスクドライバー(
ata_piix
) - バルーンドライバー(
hv_balloon
) - クロックソース(i386、AMD64/Intel 64:
hyperv_propagate
)
Red Hat Enterprise Linux 6.4 には、クロックソースとしての Hyper-V、ゲスト Hyper-V Key-Value Pair (KVP)デーモン(Hyperv
kvpd
)のサポートも含まれています。このデーモンは、ゲスト IP、FQDN、OS 名、OS リリース番号などの基本情報を VMbus 経由でホストに渡します。IP インジェクション機能も提供されており、Hyperv kvpd
デーモンを介してホストからゲストの IP アドレスを変更できます。
。
Hyper-V バルーン
ドライバー
Red Hat Enterprise Linux 6.4 ゲストである
バルーン
ドライバーである Hyper-V ホストでサポートされる動的メモリー管理機能の基本ドライバーが追加されました。バルーン
ドライバーは、仮想マシンからメモリーを動的に削除するために使用されます。Linux 用のバルーンドライバーの現在の実装では、ホット追加機能ではなく、バルーニング機能のみが実装されています。
8.3. VMware ESX
VMware PV ドライバー
VMware 準仮想化ドライバーが更新され、VMware ESX で Red Hat Enterprise Linux 6.4 を実行するときにシームレスに使用できるエクスペリエンスが提供されるようになりました。また、インストールプロセス中に Anaconda インストーラーが更新され、ドライバーを一覧表示するようになりました。以下のドライバーが更新されました。
- ネットワークドライバー(
vmxnet3
) - ストレージドライバー(
vmw_pvscsi
) - メモリーバルーニングドライバー(
vmware_balloon
) - マウスドライバー(
vmmouse_drv
) - ビデオドライバー(
vmware_drv
)