不久前,我使用 VMWare 转换工具对生产服务器 (W2K3R2 64 位) 进行了 P2V 转换。然后,我在 Windows 服务器上安装了免费的 VMWare Server 2.0 产品,并能够启动并与 VM 客户端交互。我进行这个项目的目的是测试我们的 ERP 软件的一些补丁。
经过进一步的操作,我发现客户操作系统上的磁盘 I/O 性能非常糟糕,甚至无法使用。虽然虚拟磁盘位于一个 1TB SATA RAID1 镜像上,但我需要大约两个小时才能将 250MB 的文件复制到虚拟磁盘,而在主机操作系统环境中复制相同的文件只需一两分钟。与生产系统相比,我不指望这个测试环境的性能会非常出色,所以我可以接受一些性能下降,但这太荒谬了。
我尝试了以下方法:
- 将 VMWare Server 更新至 2.01。
- VM 上的虚拟硬件已更新至 V7。
- 从 LSI 网站将 LSI_SCSI 驱动程序更新为最新的 64 位版本。
- 将虚拟 CPU 减少到 1。
当我启动虚拟机时仍然出现此错误:
Event Type: Warning
Event Source: Lsi_scsi
Event Category: None
Event ID: 26
Date: 8/6/2009
Time: 11:01:46 AM
User: N/A
Computer: VULCAN-TEST
Description:
The driver has detected that device \Device\RaidPort0 has old or out-of-date firmware. Reduced performance may result.
For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 0f 00 18 00 01 00 6a 00 ......j.
0008: 00 00 00 00 1a 00 04 80 .......
0010: 00 00 00 00 00 00 00 00 ........
0018: 00 00 00 00 00 00 00 00 ........
0020: 00 00 00 00 00 00 00 00 ........
0028: 00 00 00 00 00 00 00 00 ........
0030: 00 00 00 00 1a 00 04 80 .......
0038: 00 00 00 00 00 00 00 00 ........
我的假设是,糟糕的 I/O 性能与 LSI_SCSI 驱动程序的这个投诉有关。
主机系统在配备一个 CPU 的 Intel E5405 四核双插槽机箱上运行 Windows Server 2008 x64。
我看到很多关于 VMWare 和 x64 Windows Server 客户机的 I/O 问题的讨论,但我已经尝试了所有建议的方法,但到目前为止没有任何效果。
答案1
您可能希望在主机服务器上安装 ESXi,而不是与 VMware Server 对抗。我已经在 Windows 2003 和 Ubuntu 8.10 主机操作系统上为 4 个不同的客户端安装了 VMware Server 2.0。硬件与您的硬件类似,我们在 PERC RAID 控制器上使用 7200RPM SATA 驱动器。当我们尝试在其上运行 SBS 2003 和 Windows 2003 客户机时,IO 性能非常糟糕(低于 10MB/秒)。当我们安装 ESXi 并在其上迁移客户机操作系统时,IO 性能跃升至 90MB/秒,结果要好得多。
我不知道该服务器上的操作系统有多灵活,但只需迁移到 ESXi,您最终就可以节省更多时间。
答案2
您是否已将 VMWare 工具安装到客户机?它所依赖的 RAID 5 由哪些类型的磁盘组成?
编辑:虽然我真的很想看到 SAS 驱动器具有 10k 主轴速度,但这应该不会太糟糕。但 7200 驱动器应该不错。我更熟悉 ESX,但接下来我要看的是:
- 主机上的 Permon Trace,查看磁盘队列
- 更改为 BusLogic SCSI 适配器(如果虚拟服务器有该选项)并查看是否出现相同的问题。
- 检查主机的事件日志中是否存在相同的错误 - 如果在那里看到,请更新控制器上的固件
- 作为最后的手段并且如果您可以摆脱它,请将 ESXi 放在一个盒子上并复制虚拟机...看看您是否遇到同样的问题。