4.3. 仮想化ハードウェアデバイス
Red Hat Enterprise Linux 6 における仮想化は、仮想マシンに以下の3つの異なる種類のシステムデバイスを提示します。
- 仮想化デバイスおよびエミュレートされたデバイス
- 準仮想化デバイス
- 物理共有デバイス
これらのハードウェアデバイスはすべて、仮想化マシンに物理的にアタッチされたように表示されますが、デバイスドライバーの機能の仕方が異なります。
4.3.1. 仮想化デバイスおよびエミュレートされたデバイス
KVM は、ソフトウェアに多くの仮想マシン向けコアデバイスを実装します。これらのエミュレートされたハードウェアデバイスは、オペレーティングシステムの仮想化に必須のものです。
エミュレートされたデバイスは、ソフトウェア内にのみ存在する仮想デバイスです。
エミュレートされたドライバーは、物理デバイスまたは仮想ソフトウェアデバイスを使用することができます。エミュレートされたドライバーは、仮想マシンと (ソースデバイスを管理する) Linux カーネルの間の変換層です。デバイスレベルの指示は KVM ハイパーバイザーによって完全に変換されます。Linux カーネルで認識される、(ストレージやネットワーク、キーボード、マウスなど) 同じタイプのデバイスはいずれも、エミュレートされたドライバーのバッキングソースデバイスとして使用可能です。
- 仮想 CPU (vCPUS)
- ホストシステムはゲストに提示する CPU として、ホストCPUの数にかかわらず最大 160 の仮想 CPU を保持することが可能です。
- エミュレートされたグラフィックデバイス
- エミュレートされたグラフィックデバイスが 2 つ提供されます。これらのデバイスは SPICE プロトコルまたは VNC で接続することができます。
- Cirrus CLGD 5446 PCI VGA カード (cirrus デバイスを使用)
- Bochs VESA 拡張を搭載している標準的な VGA グラフィックカード (すべての非標準モードを含むハードウェアレベル)
- エミュレートされたシステムコンポーネント
- 以下のコアシステムコンポーネントは基本的なシステム機能を提供するためにエミュレートされます。
- Intel i440FX ホスト PCI ブリッジ
- PIIX3 PCI to ISA ブリッジ
- PS/2 マウスおよびキーボード
- EvTouch USB グラフィックタブレット
- PCI UHCI USB コントローラーおよび仮想化 USB ハブ
- エミュレートされたシリアルポート
- EHCI コントローラー、仮想化 USB ストレージ、USB マウス
- エミュレートされたサウンドデバイス
- Red Hat Enterprise Linux 6.1 以降では、エミュレートされた HDA サウンドデバイスである
intel-hda
が提供されます。このデバイスは以下のゲストオペレーティングシステムに対応しています。- Red Hat Enterprise Linux 6 (i386 および x86_64 アーキテクチャー)
- Red Hat Enterprise Linux 5 (i386 および x86_64 アーキテクチャー)
- Red Hat Enterprise Linux 4 (i386 および x86_64 アーキテクチャー)
- Windows 7 (i386 および x86_64 アーキテクチャー)
- Windows 2008 R2 (x86_64 アーキテクチャー)
以下の 2 種類のエミュレートされたサウンドドライバーも利用可能ですが、特定のゲストオペレーティングシステムとの互換性の問題で推奨されません。ac97
エミュレートされた Intel 82801AA AC97 Audio 互換サウンドカードes1370
エミュレートされた ENSONIQ AudioPCI ES1370 サウンドカード
- エミュレートされたウォッチドッグデバイス
- Red Hat Enterprise Linux 6 では、2 種類のエミュレートされたウォッチドッグデバイスが提供されます。ウォッチドッグは、仮想マシンがオーバーロードするか、または応答しない場合に仮想マシンを自動的に再起動するために使用できます。ウォッチドッグパッケージは、ゲスト上にインストールする必要があります。利用可能なデバイスは以下の 2 つです。
i6300esb
エミュレートされた Intel 6300 ESB PCI ウォッチドッグデバイス。 Red Hat Enterprise Linux versions 6.0 以降のゲストオペレーティングシステムに対応しており、使用が推奨されているデバイスです。ib700
エミュレートされた iBase 700 ISA ウォッチドッグデバイス。ib700
ウォッチドッグデバイスは、Red Hat Enterprise Linux 6.2 以降を使用するゲストにのみ対応しています。
これらのウォッチドッグデバイスは両方とも、Red Hat Enterprise Linux 6.2 以降のゲストオペレーティングシステムの i386 および x86_64 アーキテクチャーに対応しています。 - エミュレートされたネットワークデバイス
- エミュレートされたネットワークデバイスは 2 種類あります。
e1000
デバイスは、Intel E1000 ネットワークアダプター (Intel 82540EM、82573L、82544GC) をエミュレートします。rtl8139
デバイスは、 Realtek 8139 ネットワークアダプターをエミュレートします。
- エミュレートされたストレージドライバー
- ストレージデバイスとストレージプールは、これらのエミュレートされたデバイスを使用してストレージデバイスを仮想化ゲストにアタッチすることができます。ゲストは、エミュレートされたストレージドライバーを使用してストレージプールにアクセスします。すべての仮想デバイスと同様、ストレージドライバーはストレージデバイスではない点に注意してください。 バッキングストレージデバイスやファイル、 ストレージプールボリュームなどを仮想ゲストにアタッチするために使用するのがドライバーです。対応する任意のタイプのストレージデバイス、ファイル、ストレージプールボリュームをバッキングストレージデバイスにすることができます。
- エミュレートされたIDE ドライバー
- KVM は 2 種類のエミュレートされた PCI IDE インターフェースを提供します。エミュレートされた IDE ドライバーを使用して、最大 4 つの仮想 IDE ハードディスクまたは仮想 IDE CD-ROM ドライブの組み合わせを仮想マシンにアタッチすることができます。エミュレートされた IDE ドライバーは、仮想CD-ROM および DVD-R ドライブにも使用できます。
- エミュレートされたフロッピーディスクドライブドライバー
- エミュレートされたフロッピーディスクドライブドライバーは、仮想フロッピードライブの作成に使用されます。