web-dev-qa-db-ja.com

EC2のPVとHVMの仮想化タイプの違いは何ですか?

AWS EC2は、PVとHVMの2種類のUbuntu Linux EC2マシンの仮想化を提供します。

PV: enter image description here

HVM: enter image description here

これらのタイプの違いは何ですか?

57
Adam Matan

AmazonはXenで実行され、準仮想化(PV)またはハードウェア支援仮想化(HVM)を提供します。

以前は、準仮想化が推奨される選択でした。これにより、パフォーマンスが向上しました(ホストとゲストの両方でパッチを適用した特殊なカーネル/ドライバーを介して仮想化ホストに非常に密接に統合されています)。

ハードウェア支援の仮想化は、最新のハードウェアで提供される利点を利用しており、カスタムカーネルやパッチを一切必要としません。 最近のベンチマーク は、特定のワークロードでHVMが実際に高速であることを証明しています。

48
pauska

AWSドキュメントからの抜粋:

PV AMIとHVM AMIの主な違いは、それらが起動する方法と、パフォーマンスを向上させるために特別なハードウェア拡張機能(CPU、ネットワーク、ストレージ)を利用できるかどうかです。

HVM AMIには、完全に仮想化されたハードウェアのセットが提示され、イメージのルートブロックデバイスのマスターブートレコードを実行することで起動します。この仮想化タイプは、まるでベアメタルハードウェアで実行されているかのように、オペレーティングシステムを変更せずに仮想マシン上で直接実行する機能を提供します。 Amazon EC2ホストシステムは、ゲストに提示される基盤となるハードウェアの一部またはすべてをエミュレートします。 PVゲストとは異なり、HVMゲストは、ホストシステムの基盤となるハードウェアへの高速アクセスを提供するハードウェア拡張を利用できます。 HVM AMIは、拡張ネットワーキングとGPU処理を利用するために必要です。

PV AMIは、PV-GRUBと呼ばれる特別なブートローダーで起動します。これにより、ブートサイクルが開始され、イメージのmenu.lstファイルで指定されたカーネルがチェーンロードされます。準仮想ゲストは、仮想化を明示的にサポートしていないホストハードウェアで実行できますが、拡張ネットワークやGPU処理などの特別なハードウェア拡張を利用することはできません。従来、PVゲストは多くの場合HVMゲストよりもパフォーマンスが優れていましたが、HVM仮想化の機能強化とHVM AMIのPVドライバーの可用性により、これは当てはまりません。

2
anraj

顕著な違いの1つは、準仮想化がGPUインスタンスをサポートしていないことです。

GPUインスタンスとして再起動することを知っていれば、hvmとして作成しました。

編集:うーん、実際には、AMIの作成中に準仮想化からhvmに変更できるようです。

1
Grit

これで、AWSではHVMを使用する必要があり、より高いパフォーマンスを得ることができます。

1)
HVM AMIは、拡張ネットワーキングとGPU処理を利用するために必要です
2)
歴史的に、PVゲストは多くの場合HVMゲストよりもパフォーマンスが優れていましたが、HVM仮想化の機能強化とHVM AMIのPVドライバーの可用性により、これは当てはまりません。

https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/virtualization_types.html

0
beehuang