ESXi 禁用 swap 节省硬盘空间

目标

ESXi 主机默认是开启虚拟内存的,它可以在虚拟机的预留内存不足且申请不到物理内存时通过交换文件 (vswap) 申请内存。

为了实现这个功能,虚拟机会在创建时自动根据虚机非预留内存大小创建一个同等大小的 swap 文件,通常位于镜像文件同一目录,文件名以 .vswp 结尾。

例如创建一个内存为 8GB 的虚拟机,且不设置预留内存,那么 .vswap 就会自动创建,并且大小也是 8GB。

这样可以实现虚机的总内存远大于物理机总内存,但对于有些情况来讲可能并不是非常合适。

解决方法

swap 文件的大小等于虚机内存 - 保留内存,所以只需要调大保留内存就可以了。

注意:调整内存时需要先关闭虚拟机

无预留内存时交换文件大小 :
无预留内存

全预留内存时交换文件大小:
全预留内存

很明显只要将预留调整到虚拟机内存大小时就可以直接将 vswp 文件大小减为 0 了。

另外

还有个 VMX 进程的交换文件,这个文件名一般以 vms 打头,想禁用这个文件可以通过:

  1. 关闭虚拟机
  2. 编辑虚拟机设置
  3. 点击虚拟机选项,展开高级
  4. 编辑选项
  5. 添加设置项
  6. 参数名为 sched.swap.vmxSwapEnabled,值为 false
  7. 点击保存后重启就可以了

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注