web-dev-qa-db-ja.com

VMwareはLinuxメモリディスクキャッシングを認識していますか?

私の VMware 環境では、VMはメモリによって「Stressed」とマークされます。合計RAMの75%。

これはDebian9 VMなので、この問題を調査するためにSSHに数回接続しました。 freeコマンドの出力では、平均して2GBの合計のうち約840MBRAMしか使用されておらず、バフ/キャッシュにさらに1GBが使用されていることに気付きました。

私の知る限り、Linuxカーネルは、より多くのメモリが必要な場合、バフ/キャッシュされたRAMを再利用できます。つまり、 VMware vSphere このメカニズム、またはVM設定が間違っていますか?

編集:これは、そのVMからのfree -hコマンドの一般的な出力です。

               total       used        free      shared  buff/cache   available
Mem:           2.0G        927M         76M        156M        1.0G        772M
Swap:          2.0G        293M        1.7G
2
J.B.

要するに、いいえ、VMWareはゲストがRAMを何に使用しているのかを知りません(または気にしません)。RAMを使用しているだけです。 RAMは、ゲストが選択しなくてもできることのために使用されている場合でも、ゲストによって使用されています。

VMWareは、ゲストが全体として利用できるRAMの量、特に他のゲストが利用できる量(ホストのRAMをオーバーブッキングする場合に重要)のみを考慮します。キャッシュ/バッファリング/スワッピングゲストが実行する(または実行しない)ことを選択するのはそのビジネスであるため、その動作を構成する場合は、ゲストで実行します。VMWareは、ゲストのメモリ管理方法を変更しようとはしません。

そのボックスによるRAMの使用)をVMWareに無視させたい場合は、アラートを再構成することをお勧めします。

1
Frank Thomas

ここでは、VMwareバルーンドライバーが関連していると思います。これらすべてのVMがディスクキャッシュのためだけにRAMを使用しているために、ハイパーバイザーがRAMで不足した場合、vmwareツールのバルーンドライバーはRAMの需要を生み出します VM自体、キャッシュに使用するVMの量を減らすようにRAM OSに強制し、このRAMハイパーバイザーを他の場所で使用するため。

0
spoovy