プロバイダーはXenでオーバーセルできないため、Xenは通常OpenVZよりも優れていることを知っています。しかし、違いは何ですかXen PV
、Xen KVM
とHVM
(私はこのプロバイダの通過つもりだったスペック 1は、どのような目的や理由のために優れていますか?
編集:
Webサイトをホストするだけのエンドユーザーにとって、どちらが良いですか?効率または他の観点から、一方が他方より優れている点はありますか?
プロバイダーはXenでオーバーセルできないため、Xenは通常OpenVZよりも優れていることを知っています。しかし、違いは何ですかXen PV
、Xen KVM
とHVM
(私はこのプロバイダの通過つもりだったスペック 1は、どのような目的や理由のために優れていますか?
Webサイトをホストするだけのエンドユーザーにとって、どちらが良いですか?効率または他の観点から、一方が他方より優れている点はありますか?
回答:
Xenがサポートする仮想化タイプ
Xenは、2種類のゲストの実行をサポートしています。Xenゲストは、多くの場合domU(非特権ドメイン)と呼ばれます。両方のゲストタイプ(PV、HVM)を単一のXenシステムで同時に使用できます。
Xen準仮想化(PV)
準仮想化は、Xenによって導入された効率的で軽量な仮想化手法であり、後に他の仮想化ソリューションでも採用されています。準仮想化には、ホストCPUからの仮想化拡張機能は必要ありません。ただし、準仮想化ゲストには、Xenでネイティブに実行するように移植された特別なカーネルが必要です。そのため、ゲストはハイパーバイザーを認識し、エミュレーションまたは仮想エミュレートハードウェアなしで効率的に実行できます。Linux、NetBSD、FreeBSD、OpenSolaris、およびNovell Netwareオペレーティングシステム用のXen PVゲストカーネルが存在します。
PVゲストには仮想エミュレートハードウェアはありませんが、ゲストpvfb(準仮想フレームバッファー)を使用してグラフィカルコンソールを使用できます。PVゲストグラフィカルコンソールは、VNCクライアントまたはRedhatのvirt-viewerを使用して表示できます。各ゲストのPVFBに対して、dom0に個別のVNCサーバーがあります。
Linux 2.6.24以降のアップストリームkernel.org Linuxカーネルには、Linux pvopsフレームワークに基づくXen PVゲスト(domU)サポートが含まれているため、すべてのアップストリームLinuxカーネルは、追加のパッチや変更なしで自動的にXen PVゲストカーネルとして使用できます。
Linux pvops Xenサポートの詳細については、XenParavirtOps wikiページを参照してください。
Xen完全仮想化(HVM)
完全に仮想化された別名HVM(ハードウェア仮想マシン)ゲストには、ホストCPU(Intel VT、AMD-V)からのCPU仮想化拡張機能が必要です。Xenは、Qemuの修正バージョンを使用して、HVMゲスト用のBIOS、IDEディスクコントローラー、VGAグラフィックアダプター、USBコントローラー、ネットワークアダプターなどの完全なPCハードウェアをエミュレートします。CPU仮想化拡張機能は、エミュレーションのパフォーマンスを向上させるために使用されます。完全に仮想化されたゲストは特別なカーネルを必要としないため、たとえばWindowsオペレーティングシステムをXen HVMゲストとして使用できます。通常、完全仮想化ゲストは、必要なエミュレーションのため、準仮想化ゲストよりも低速です。
パフォーマンスを向上させるために、完全仮想化HVMゲストは特別な準仮想デバイスドライバーを使用して、ディスクおよびネットワークIOのエミュレーションをバイパスできます。Xen Windows HVMゲストは、オープンソースのGPLPVドライバーを使用できます。Linux HVMゲスト用のXen PV-on-HVMドライバーの詳細については、XenLinuxPVonHVMdrivers wikiページを参照してください。
これはhttp://wiki.xenproject.org/wiki/XenOverviewからです
KVMはまったくXenではなく、別のテクノロジーです。KVMはLinuxネイティブカーネルモジュールであり、Xenのような追加のカーネルではありません。これにより、KVMの設計が改善されます。ここでの欠点は、KVMがXenよりも新しいため、一部の機能が欠けている可能性があることです。
Xen
メタル(PC /サーバー)上で実行され、ドメインと呼ばれる仮想マシンをホストするハイパーバイザーです。
Xen PV
ドメインは、準仮想化ドメイン手段のオペレーティング・システム(通常は我々がここでのLinuxを話している)Xenの下で実行するように変更されたこと、そして実際にエミュレートハードウェアの必要はありません。これは、パフォーマンスに関して最も効率的な方法です。
Xen HVM
ドメインは、ハードウェアエミュレートされ、オペレーティング・システムが何らかの方法で変更されていないと、ハードウェアをエミュレートされます(何のLinux、Windowsの、することができる)ことを意味し、ドメイン。これはかなり遅いため、通常、重要なハードウェア(通常はディスクとネットワーク)のゲストOSにPVドライバーをインストールするため、ゲスト全体は完全に仮想化されて実行されますが、パフォーマンスが最も重要なハードウェアは準仮想化されて実行されます。最近のLinuxシステムでは、カーネルにディスクとネットワークの両方のpvドライバーがあり、Windows用のさまざまなPVドライバーも存在します。近年のHVMでのすべての開発では、通常、標準ワークロードの場合、HVMとPVのパフォーマンスの差はほとんどありません。
KVM
Xenではなく、Linuxカーネル内に構築された別の仮想化プラットフォームです。ゲストゲストは、完全に仮想化され実行され、いくつかの部分は(再び、ディスクおよびネットワーク)を準仮想化を実行するための特定のドライバがあります:ビューのポイント、それは、Xen HVMに似ています。
Xen HVMとLinux KVMの両方にハードウェア支援仮想化サポート(Intel VT-x、AMD AMD-V)が必要ですが、Xen PVはPVサポートなしではオペレーティングシステムを実行できません(WindowsはXen PVで実行できません)。
Xen HVMとLinux KVMはどちらもqemu仮想化ソフトウェアの一部を使用して、ゲストシステムでPVドライバーを使用していないデバイスの実際のハードウェアをエミュレートします。
Xen(PVとHVMの両方)は、実行中のゲストをある物理サーバーから別のサーバーにライブマイグレーションできます。KVMでもできるかどうかはわかりません。
XenとKVMはどちらもメモリをオーバーコミットできないため、通常は「真のRAM」を取得しますが、VMwareなどの他のプラットフォームはゲストRAMの一部をディスクにスワップできます。
違いはありますが、通常は特定のインストールに適用され、他の人に販売される汎用の仮想プライベートサーバーには適用されません。たとえば、最近のXenハイパーバイザーは、ゲストがサポートしている場合(Linuxカーネル> = 3.something)にメモリ使用率とゲストのパフォーマンスを改善できる超越メモリをサポートしています。
これらのテクノロジーはすべて、正しく実装されていれば素晴らしい経験となり、あなたの観点から大きな違いはありません。もちろん、物事がうまくいかない可能性のある千の方法がありますが、それは特定の仮想化ソリューションとは関係ありません(つまり、ゲストを低速のディスクに保存するとパフォーマンスが低下します)。