主机将由 Limit 参数指定的内存分配给每个虚拟机,除非内存过载。ESXi 向虚拟机分配的内存决不会超过指定的物理内存大小。

例如,1 GB 虚拟机可能具有默认的限制(无限)或用户指定的限制(例如 2 GB)。在这两种情况下,ESXi 主机分配的内存决不会超过 1 GB,即不会超过为其指定的物理内存大小。

当内存过载时,向每个虚拟机分配的内存量介于预留限制指定的内存量之间。授予虚拟机的高于预留量的内存量会因当前的内存负载而异。

主机根据分配给虚拟机的份额数和对最近工作集大小的估计,确定每个虚拟机的分配量。

  • 份额 — ESXi 主机使用经过修改的按比例份额内存分配策略。内存份额给予虚拟机一部分可用物理内存。
  • 工作集大小 — ESXi 主机通过在连续的虚拟机执行时间周期监控内存活动,来估计工作集。采用快速响应工作集大小增加且慢速响应工作集大小减小的技术,在几个时间周期内进行平稳估计。

    该方法确保虚拟机开始更活跃地使用其内存时,已经回收闲置内存的虚拟机可以快速达到基于完整份额的分配量。

    在默认情况下将对内存活动监控 60 秒以估计工作集大小。要修改此默认值,请调整 Mem.SamplePeriod 高级设置。请参见设置高级主机属性