如何强制 VMware ESXi 回收内存(使用脚本手动)

如何强制 VMware ESXi 回收内存(使用脚本手动)

设想

我们有一台配备 512GB RAM 的 VMware ESXi 服务器,还有 25 台配备 64GB RAM 的虚拟机,虚拟机的预留内存为“0GB”。它们不会使用所有资源,但我们需要这样做,因为它们每天会使用一次所有内存(64GB)。当它们这样做时,ESXi 会为虚拟机提供 64GB 并尝试将其保留给虚拟机。我知道 ESXi 通过膨胀和其他方式管理内存,但它在虚拟机 64GB 的“主机内存”部分显示已用内存。

  • 服务器总内存:512G​​B
  • 客人总数:5%
  • 总主机内存:470GB

问题

我们想说,如果虚拟机 10 分钟内没有使用内存,ESXi 将回收所有保留内存(主机内存参数)。使用 powercli、VMtools、Linux 脚本、配置等。

  • 虚拟机内存大小:64GB
  • VM 客户机内存:1%
  • VM 主机内存:52GB(我们想回收这个内存)

我知道

我知道内存膨胀,但如果可能的话,我们需要手动回收内存。或者强制 ESXi 快速回收未使用的内存。

答案1

正如我最终所得到的,无法手动回收内存,但我们可以使用 vSphere 高级设置调整内存使用情况。

检查虚拟机是否发生膨胀、压缩和交换,如果发生膨胀和压缩,则不是什么好事,您应该增加资源或减少虚拟机的数量/资源。

在 VMWare 社区中查看更多信息:https://communities.vmware.com/message/2901715

相关内容