プロバイダーはXenでオーバーセルできないため、通常、XenはOpenVZよりも優れています。ただし、Xen PV
、Xen KVM
、およびHVM
の違いは何ですか(このプロバイダーの specs を使用していましたか?目的と理由に適したものはどれですか) ?
ウェブサイトをホストするだけのエンドユーザーにとって、どちらが良いですか?効率性やその他の観点から、一方が他方よりも優れている点はありますか?
Xenがサポートする仮想化タイプ
Xenは、2種類のゲストの実行をサポートしています。 XenゲストはしばしばdomU(非特権ドメイン)と呼ばれます。両方のゲストタイプ(PV、HVM)を単一のXenシステムで同時に使用できます。
Xen準仮想化(PV)
準仮想化は、Xenによって導入された効率的で軽量な仮想化手法であり、後に他の仮想化ソリューションでも採用されました。準仮想化では、ホストCPUからの仮想化拡張機能は必要ありません。ただし、準仮想化ゲストには、Xenでネイティブに実行するように移植された特別なカーネルが必要です。そのため、ゲストはハイパーバイザーを認識し、エミュレーションまたは仮想エミュレートハードウェアなしで効率的に実行できます。 Xen PVゲストカーネルは、Linux、NetBSD、FreeBSD、OpenSolaris、Novell Netwareオペレーティングシステム用に存在します。
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の修正バージョンを使用して、BIOSを含む完全なPCハードウェアをエミュレートしますIDEディスクコントローラー、VGAグラフィックアダプター、USBコントローラー、ネットワークアダプターなど、HVMゲスト用。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サポートなしではオペレーティングシステムを実行できません。 Xen PVでWindowsを実行しないでください)。
Xen HVMとLinuxの両方KVMは、qemu仮想化ソフトウェアの一部を使用して、ゲストシステムでPVドライバーを使用していないデバイスの実際のハードウェアをエミュレートします。
Xen(PVとHVMの両方)は、実行中のゲストを1つの物理サーバーから別の物理サーバーにライブマイグレーションできます。KVMも可能かどうかはわかりません。
XenとKVM=はメモリをオーバーコミットできないため、通常は「真のRAM」を取得できますが、VMwareなどの他のプラットフォームではゲストRAMの一部をディスクにスワップできます。
違いはありますが、通常は特定のインストールに適用され、他の人に販売する汎用仮想プライベートサーバーには適用されません。たとえば、最近のXenハイパーバイザーは、ゲストがサポートしている場合(linuxカーネル> = 3.何か)にメモリ使用率とゲストのパフォーマンスを向上させる可能性がある超越メモリをサポートしています。
これらのテクノロジーはすべて、正しく実装されていれば優れたエクスペリエンスを提供し、ユーザーの視点から見て大きな違いはありません。もちろん、問題が発生する可能性のある方法は1,000通りありますが、特定の仮想化ソリューションとは関係ありません(つまり、ゲストが低速のディスクに格納され、パフォーマンスを低下させる可能性があります)。