私は請負業者であり、128GBのRAMを搭載した仮想マシンを受け取りました。これは私が開発しているアプリケーションに必要なものです。
ただし、割り当て速度が大幅に遅くなる前に(ページング?)最大74 GBを割り当てることができ、86 GBではメモリ不足エラーが発生します。
私はループに入り、一度に1 GBのメモリを割り当てる非常に単純なプログラムを作成しました。このプログラムも上記の動作を示しています。
どうなりますか?
仮想マシンが正しく構成されていませんか?
"top"を実行してMを押してメモリごとにソートしましたが、かなりの量のメモリを使用しませんでした(確かに欠落している46 GBではありません)。
ESXiでRed Hatを実行する
答え1
明らかに、仮想マシンのビューは全体的なビューではありません。 Unixコマンドを使用して仮想マシンのメモリを表示しようとすると、環境の制限付きビューがあり、ハイパーバイザーシステムの完全なビューはありません。
VMWareにはオーバーコミットという概念があります。したがって、この現象が発生した場合は、誰かがハイパーバイザーが持っているよりも多くのメモリを提供したか、またはそのホスト上の他のVMがそのメモリを置いて競合しています。ハイパーバイザーはスワップの代わりにスワップを使用します。ラム。
どちらの場合も重要なことは、ハイパーバイザーにVMに要求/使用可能なRAM全体がないことです。
したがって、残念ながら、このVMWareホストを担当する管理者に会ったり会話したりする必要があります。
バラよりvmware技術ジャーナル - ESX Serverのメモリオーバーコミット詳細については。
ESX を使用すると、構成された合計メモリーが物理システムの使用可能なメモリーを超える仮想マシン (VM) を起動できます。これをメモリオーバーコミットと呼びます。
オーバーコミットとは、使用可能な物理リソースよりも多くの仮想リソースを割り当てる機能を意味します。 ESX Serverを使用すると、ユーザーは物理マシン上のメモリとCPUリソースをオーバーコミットできます。
従来のオペレーティングシステムと同様に、ESXを使用すると、ESXが使用可能なメモリを超える可能性がある合計構成済みメモリサイズで仮想マシンを起動できます。この記事の説明では、ESX ServerにインストールされているメモリをESXメモリと呼びます。仮想マシンがすべてのESXメモリを消費する場合、ESXは仮想マシンからメモリを回復します。
メモリオーバーコミットが必ずしもゲストオペレーティングシステムやそのアプリケーションのパフォーマンスを失うわけではありません。 2つの実際のワークロードに関するこの記事の実験結果は、ESXが過度にコミットされるにつれてパフォーマンスが徐々に低下することを示しています。