我今天早些时候在 citrix 论坛上发布了这个帖子,但我想我也在这里尝试一下 :)
我们有 2 个 xenserver 5.5 U2 主机,每个主机都在 HP 刀片服务器 BL460 上运行。每个刀片有 1 个四核英特尔至强处理器 (2.66GHz)、16 GB 内存和两个 300GB 10K SAS SFF 硬盘 (raid 1 阵列)。第一个刀片有 2 个 Windows Server 2003 R2 和 10 个 Windows XP SP3 VM,第二个刀片有 4 个 Windows 服务器。
当大多数用户登录并在其虚拟机上工作时,他们都会同时滞后几秒钟,有时甚至几分钟。单击的图标需要几秒钟才能突出显示,Microsoft Office 变成了一场噩梦,基本上所有东西的速度都慢得可怕。我们首先自然而然地怀疑是网络问题,但最终我们能够排除这种可能性,因为我们重复使用了 cat6 电缆,而且所有交换机都是相对昂贵且不错的。当我通过笔记本电脑直接连接到刀片的千兆交换机并通过 RDC 连接虚拟机时,甚至会发生此问题。现在我们认为这与存储有关。当我们第一次询问刀片的报价时,我们选择不使用 SAN,因为驱动器是 SAS,而且我们只有大约 10 名员工,所以我们只使用刀片上的本地存储。它们对这样的环境来说还不够吗?似乎在某个时候,当活动繁重时(繁重是指每个人都登录并使用非常基本的软件),硬盘会超载,无法同时处理如此多的请求。几乎所有 XP 都配备 1GB 内存(有些配备 2GB)和 2 个 vCPU(有些配备 4 个),Windows 2003 服务器配备 2GB 内存和 4 个 vCPU。
据我所知,xenserver 主机用于多达数十个甚至数百个虚拟机的池中,当然在这种情况下会安装复杂的存储。但本地存储 LVM 是否也用于规模较小的场景(例如我们自己的场景)?任何提示或想法都将不胜感激。
答案1
1.您是否尝试过禁用任务卸载? 2.您是否尝试过 performancevm?(http://support.citrix.com/article/CTX127065)
禁用任务卸载:
对于 Windows 2003 VM,您需要在 HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameter 下创建一个注册表项以禁用任务卸载 – REG_DWORD = 1。最简单的方法是创建一个组策略来推送此注册表项。
禁用校验和卸载:
如果网络性能仍然不佳,您应该尝试的第二个修复方法是禁用 XenServer 接口(虚拟 (VIF) 和物理 (PIF))上的校验和。请注意,您不需要重新启动 XenServer 或 VM。此脚本将自动在 XenServer 池中的所有网络接口上执行此操作。
echo 在 VIF 上设置校验和关闭 VIFLIST= xe vif-list | grep "uuid ( RO) " | awk '{print $5}'
for VIF in $VIFLIST do echo 在 $VIF 上设置 ethtool-tx=off 和 ethtool-rx=off xe vif-param-set uuid=$VIF other-config:ethtool-tx="off" xe vif-param-set uuid=$VIF other-config:ethtool-rx="off" done echo 在 PIF 上设置校验和关闭 PIFLIST= xe pif-list | grep "uuid ( RO) " | awk '{print $5}'
for PIF in $PIFLIST do echo 在 $PIF 上设置 ethtool-tx=off 和 ethtool-rx=off xe pif-param-set uuid=$PIF other-config:ethtool-tx="off" xe pif-param-set uuid=$PIF other-config:ethtool-rx="off" done