仮想マシンにおける CPU とメモリの両方のリソース制限は、仮想マシンのリソース境界を形成します。
メモリ制限
メモリ制限が仮想マシンに割り当てられたメモリよりも小さい値に設定されている場合、それはその仮想マシンに直接割り当て可能な物理メモリ量の上限とみなされます。ゲストオペレーティングシステムはこの制限を認識せず、割り当てられたメモリサイズに合わせてメモリ管理オプションを最適化します。
制限に達した場合、または制限を超えた場合でも、ゲストオペレーティングシステムは新しいページを要求することはできますが、制限があるため、VMkernel はゲストが直接物理メモリを消費することを許可せず、仮想マシンをリソースが競合しているかのように扱います。要求されたメモリを仮想マシンが消費できるようにするには、メモリ解放技術が使用されます。
仮想マシンが要求するページ数によっては、最悪の場合、VMkernel は要求を満たすために VMkernel スワップを使用する可能性があります。VMkernel はまず、バルーンドライバを拡張してメモリを解放し、ゲストメモリマネージャがページアウトする内容を決定できるようにします。また、VMkernel はメモリ ページをスワップアウトする前に圧縮を試みます。
esxtop を実行し、MCTLSZ と MCTLTGT、SWCUR と SWTGT、および CACHEUSD を確認することで、メモリ制限の影響を検証できます。
esxtop の使用方法の詳細については、「メモリ パネル」
統計情報を参照してください。
CPU制限
仮想マシンのリソース設定で CPU 制限が設定されている場合、割り当てられた CPU リソースを使い切った仮想マシンは、意図的に PCPU への割り当てが停止されます。これは CPU 使用率に関係なく発生します。指定された制限は、ゲスト OS ではなく、仮想マシン全体の CPU リソースに適用されます。制限が 500MHz に設定されている場合、仮想マシンは PCPU から再割り当てされ、再度割り当てられるまで待機する必要があります。そのため、仮想マシンのパフォーマンスが低下する可能性があります。同じ ESXi ホスト上で多数の仮想マシンに制限が設定されている場合、ESXi 全体の動作に影響を与える可能性があります。
注:SMP 仮想マシンでは、すべての vCPU の合計は指定された制限を超えることはできません。例えば、vCPU が 4 つ搭載され、制限が 1200MHz で、vCPU 間の負荷が均等な場合、vCPU あたりの最大周波数は 300MHz となります。
esxtop を実行して %RDY と %MLMTD を確認することで、CPU 制限の影響を検証できます。
esxtopの使用方法の詳細については、「CPU パネル」
統計情報を参照してください。