我注意到一些基于 Linux 的虚拟机逐渐变慢,直到我重新启动它们。起初我怀疑是黑客攻击和资源滥用,但在从头开始重建了几次虚拟机并在安全方面格外小心之后,我排除了黑客攻击的可能性。现在我怀疑 ESX 主机没有足够的 RAM,正在将其交换给不太繁忙的虚拟机。
我如何验证是否确实如此?
眼镜:
ESX#1: ESX 3.5 8x3GHz, 32GB RAM. 7 vms
ESX#2: ESX 3.5 8x3GHz, 32GB RAM. 25 vms
70GB configured guest RAM in total over all the vms.
ESX1 偶尔会发出内存不足的警报,但实际上只有 32GB 中的 24GB。
答案1
这可能是主机、虚拟机或两者的资源问题。检查 VI 客户端中的性能选项卡。切换到内存。它使用交换还是膨胀?现在切换到磁盘并选择性能。(需要 4.1)你的延迟是多少毫秒?小于 10 毫秒的一切都没问题。SATA 磁盘可能会达到 300 毫秒或更糟。最后尝试从 Linux VM 运行 htop。它会交换吗?每个主机上使用多少个 vcpu。如果向主机添加太多 vsmp VM,主机将浪费大量周期。通过 SSH 进入主机并运行 esxtop。查看数字 rdy。这是 VM 等待 CPU 访问的时间。如果这个时间超过 10,你可能会遇到问题。顺便说一句,你应该升级到 4.1。3.5 存在巨大的性能问题。
答案2
我手头只有 v4.1u1 主机,但在 VIClient.exe 上查看资源下的主机摘要页面 - 它应该显示该主机上正在使用多少内存。
答案3
看起来您的主机没有 RAM 资源问题。这可能是您个人虚拟机的问题。
查看这些特定的 Linux VM 内部,您能看到是否正在交换吗?
您如何配置这些 VM 的 RAM?
您是否在使用资源池?