我在带有 HighPoint 4310 RAID 控制器的英特尔 DX58SO 主板上运行 VMWare ESX 4.1.0、260247。
该服务器在 RAID 1 中拥有 2 个 velociraptor 硬盘,在 RAID 1 中也拥有 2 个 WD black 2TB 硬盘。
该设备已经正常运行了一年多,但昨天我们开始注意到虚拟机随机出现极其糟糕的磁盘 IO。无论虚拟机存储在哪个 raid 中,我们都记录了 1MB/s 的读取速度。
如果我们重新启动虚拟机,读取性能将恢复到 80MB/s,但几个小时后就会下降到 1-3。
我们尝试过只保留 1 个虚拟机,但仍然遇到同样的问题。
我以前使用 ESXi 时也遇到过这个问题,但一直找不到解决办法。这种情况似乎会随着时间的推移而发生。
提前感谢任何反馈。
答案1
我遇到过类似的问题,其根本原因是可用 RAM 不足,迫使主机大量使用交换空间,结果导致磁盘 IO 速度大幅下降。请记住,除了各个虚拟机所需的 RAM 之外,还应该为虚拟机管理程序提供大约 1GB 的可用 RAM。
答案2
基于此 VMWare 社区主题我已将其添加到我的 vmx 文件中:
diskLib.dataCacheMaxSize = "0"
diskLib.dataCacheMaxReadAheadSize = "0"
diskLib.dataCacheMinReadAheadSize = "0"
diskLib.dataCachePageSize = "4096"
diskLib.maxUnsyncedWrites = "0"
启动客人后,性能似乎恢复正常。