我们正在考虑尝试在虚拟机内为生产环境设置SQL 2008实例。 我们所有的SQL实例都使用千兆以太网上的iSCSI来与NAS进行通信,就像这个新的实例一样。 任何理由,这是一个坏主意或任何考虑,使这项工作很好? VM将在Xen 5.5中运行,或者如果有一个令人信服的情况,我们可以在Hyper-V中进行设置。 而虚拟机的VHD将存储在不同的NAS上,然后SQL存储器就打开。
是的,我已经做了,但不是与NAS,而是SAN(SQL是在Hyper-V下安装的)。 虚拟化SQL最大的缺点就是I / O,而你正在考虑这个问题,所以继续。 我有兴趣听到它在Xen下如何执行。
我帮助Hyper-Vbuild立了一个虚拟的SQL环境。 不幸的是,这是我的一个单独的公司,现在我们已经把一个相当大的分裂,谁来照顾什么。 由于这个原因,我没有直接进入环境看看它是如何performance的,但是我经常和运行它的人交谈,他说事情对他们来说工作得很好。 他们的设置非常类似于您列出的,因为他们也与NAS设备一起工作。
如果您正在考虑采用Hyper-V路线,我相信微软有一些有趣的许可选项。 这可能是值得看看这个链接:
http://www.microsoft.com/licensing/about-licensing/virtualization.aspx
另外,这里是Hyper-V FAQ:
http://www.microsoft.com/windowsserver2008/en/us/hyperv-faq.aspx
我也有一个运行在ESX上的小型SQLtesting环境,它工作得非常好。 这个环境不会与NAS设备对话,所以我很难说在这样的情况下工作会有多好。
Xen非常棒,我们非常喜欢它。 兰多夫提到的I / O是值得关注的。 这也可以通过使用Xen的半虚拟化IO驱动程序来部分解决。 如果您通过iSCSI使用本地磁盘而不是SAN,您也将获得更好的性能,但是如果iSCSI满足您的需求,那么您就可以走了。
除非SQL 2008 Enterprise许可证将不允许在一个盒子上的多个实例,所以你只是巩固硬件。
具有虚拟化支持的网卡将接近线速,这应该不是什么大问题 – 大多数现代服务器可以使用iSCSIstream量来饱和网卡,而不需要太多的努力。
磁盘I / O是一个问题,但你说没有本地磁盘,所以你已经围绕那个工作了。
这里介绍一些关于本地磁盘性能的惊喜: http : //www.bitshop.com/Blogs/tabid/95/EntryId/29/Can-I-virtualize-SQL-Server-Is-performance-good.aspx
史蒂夫Radich – 创始人 – http://www.BitShop.com