SQL Server中的VMware

请提供您在VMWare ESX中虚拟化SQL Server的技巧和最佳实践我对高级configuration和设置感兴趣。

请提供推荐背后的推理

编辑:只是澄清,我已经有超过70个虚拟SQL服务器在不同的集群使用iSCSI equallogic San-

我真正想要的是那些高级configuration,如:

你如何configuration你的磁盘/ RDM的

你使用像Mem.ShareScanGHz设置 – http://communities.vmware.com/thread/143828 – 没有很好的logging

通常我讨厌链接到供应商的白皮书,但是VMware发布了一个令人惊讶的好消息:

http://www.vmware.com/files/pdf/solutions/sql_server_virtual_bp.pdf

那里的一切都很重要,我可以为他们保密。 更less的虚拟CPU实际上比其他更好:如果您不是100%的单个CPU饱和,那么您不想添加第二个虚拟CPU。 它与VMware CPU调度的工作方式有关。

唯一没有在文档中明确定义的是多path。 使用ESX 3.5及更早版本,您的SAN不会获得真正的主动/主动多path。 如果您需要为单个虚拟机提供多个HBA带宽,则需要将其保留为物理机器,直到vSphere 4出来为止,即使如此,您也必须获得最高的版本才能获得真正的多path。

我们有一个3节点vmware集群,每个节点都是HP 365(2xCPU 4核,1.8Mhz),每台服务器32 GB RAM,光纤通道连接磁盘。

我们支持超过20个SQL vm(SQL2000,SQL2005和SQL2008,live,dev和test)以及其他通用的Windows 2003服务器(iis6,应用程序,文件和打印等),并且至less还有两倍的迁移到它,预计会有任何性能问题。

三个节点为我们提供了“顶级”的冗余和弹性。 如果一个节点停机(或维护),另外两个节点仍然可以提供相同的性能。 三是奢侈品(或者他们喜欢称之为最佳做法),二是足够的。

实际的VM相当轻。 通常1vCPU和1GB RAM,并且他们主持20或30个数据库。 其中一两个繁忙的虚拟主机是双倍的,但通常是因为使用SQL Server作为玩具(不使用存储过程等,但在“其他”站点上讨论死亡)的书面程序写得很糟糕;

虚拟机使我们能够灵活地创build更多具有相似使用模式的“小型”服务器(使大数据驱动程序远离轻量级网站系统)和/或SLA要求(将所有重要的东西与一个通用的标准化操作实践)。

考虑到我们有RAM,CPU和快速磁盘,我们不必微调我们的系统。 DISK是多个RAID 10arrays(大致分为操作系统,事务日志和数据库),一些大的RAID%用于备份和转储。

大量冗余1GBnetworking连接到冗余边缘交换机。

最近的VMware社区播客深入介绍了这个主题。 请看这里: http : //blogs.vmware.com/vmtn/2009/03/virtualizing-sql-server-podcast-white-paper.html ,并在这里听第42集: http://www.talkshoe .COM / talkshoe /networking/ talkCast.jsp?masterId = 19367