it-swarm-ja.tech

仮想化マシンの仮想メモリ(VMのスワップファイル?)

仮想メモリを許可することについての意見は何ですか内部仮想マシン?

たとえば、8ギガバイトのメモリを搭載したホストマシンでは、それぞれ2ギガバイトで4つのVMを実行でき(おおよそ)、ホストの交換はありません。ただし、各VMに2Gigページファイルを含めることができるため、仮想サーバーには4Gigの使用可能なメモリ、2つの物理2つの仮想メモリがあります。

または...各VMに4ギガバイトの「メモリ」を割り当て、ホストに8ギガバイトの実メモリと8ギガバイトの仮想メモリを使用させ、各VMにページファイルを持たせないようにすることができます。各VMには引き続き「4Gig」がありますが、ページングは​​ホストで発生します。

私の暖かくファジーな部分は、実際のサーバーと同じように各ゲストでページングを設定すると言っています。しかし、私の分析面では、ホストメモリをオーバーコミットし、VMにページングがないことには2つの大きな利点があります。まず、仮想メモリのIOは、ベアメタルに近いホストOSによって処理されるため、より高速になります。そして第二に、ページングが必要になるのはifホストに使用可能なメモリがなかった場合のみです。ゲストが4Gigを望んでいたが、他のゲストがメモリを使用していなかった場合、ページングは​​必要ありません。

考え?

7
WaldenL

私は仮想化の専門家ではありませんが(実際、ほとんどの場合、これは仕事にとって間違ったツールだと思います)、私が読んだことから、ゲストOSを交換することは許可されるべきではありません。スワッピングを防止する主な理由は、1つの推測OSがホストのIO帯域幅の大部分を占有する方法を表すことです。

また、ホストが大量にスワップする原因となるため、ホストの物理メモリがホストの物理メモリよりも多いと推測するOSのふりをしたくはありませんが、推測OS内のパフォーマンスの問題のデバッグは非常に困難です。ビューのそれらは交換されておらず、ゲストのOSレベルのツールはどれもそれを表示しません。

XenやVmWareなどのツールを使用している場合でも、バルーンメモリドライバを使用しているため、ホストOSのメモリをオーバーコミットすることはできません。

5
Dave Cheney

これは、ホストOSのメモリをオーバーコミットした場合の結果に大きく依存します。たとえば、Linuxのメモリ不足キラーが仮想マシンを殺してしまうとしたら、私は少しイライラするでしょう。私は、ゲストOSごとに、より小さく、個別の、事前に割り当てられた、スナップショットに依存しない(VMソリューションに該当する場合)仮想ディスクを確保し、そのディスクイメージをホストするファイルが断片化されていないことを確認します。 /または高速ドライブ上で、その仮想ディスク上に存在するようにゲストスワップスペースを構成します。今日のハイパーバイザーメモリ管理は、OOMホストスワッピングとOOMゲストスワッピングの違いを感じないのに十分であり、ゲストの動作を個別に微調整できます。 両方の長所。

4

VMは約リソースのより良い分離です。このようなVMは、ホストを下にドラッグすることはできません。 RAM要求—すでに制約されています。VMのシステム以外のディスクにスワップを配置すると、安全でないキャッシュポリシーを設定することもできます。

しかし、「外部」スワップは、むしろリソースのより良い利用についてです。

だからこれはそれです:分離対利用 —あなたの選択。

1
poige

IOの問題があるため、ゲストの仮想メモリを提供しません。また、ゲストが実際に使用していることに気付かないため、ホストの仮想メモリとゲストに物理メモリを提供しすぎません。物理メモリではなく仮想メモリ。

これは解決策を残しませんが、より多くのメモリを購入する必要があります。あなたは本当により多くのメモリの代替を得ることができません。それはとても安いです、あなたのサーバーがより多くをサポートすることができれば、私はより多くを得るでしょう。

1
Adam Gibbins