最佳实践 – VMWare中的SQL 2012和IIS

我们对VMWare来说相当新颖,并且对我们的环境有一些想法。 我们在一台主机上有一个VMWare集群:

VM#1:MS Windows 2008 R2企业版和SQL Server 2012
VM#2:MS Windows 2008 R2 Standard&IIS

IIS的asp.net应用程序直接对话到SQL Server。 几个月前,我们在物理服务器上使用了类似的环境,最近刚刚迁移到虚拟环境。

关于设置,我们没有调整任何的虚拟机资源参数 – 所有设置为标准,所有的工作。

所观察到的是,虚拟机似乎正在慢慢倒退,我们得到的滞后。 当然,这个过程和旧的物理环境一样快,但是我想知道:

*在同一主机上运行SQL Server和IIS服务器是一个好主意吗? 他们是唯一的两个虚拟机。 主机是一个新的戴尔R620与192 GB内存。

  • 看起来似乎没有任何争用时,更改任何CPU或内存预留是否有意义

  • 有没有办法让VM虚拟化,以消除延迟?

这是一个全新的吱吱作响干净的香草安装。

你怎么看?

假设没有资源过度承诺,​​保留不会让你很多。

你需要找出减速的原因是什么

所观察到的是,虚拟机似乎正在慢慢倒退,我们得到的滞后。

你需要做的是找出造成这种情况的资源。 另外“假脱机”不是真正的任何描述。 你需要做一些深入的性能监测,看看是什么造成的。

*在同一主机上运行SQL Server和IIS服务器是一个好主意吗? 他们是唯一的两个虚拟机。 主机是一个新的戴尔R620与192 GB内存。

如果您有两台虚拟机可以进行大量通信并生成大量I / O,则最好将它们放在同一台主机上,但要分开安装卷/ LUN。 这样做将允许两者之间的所有networkingstream量停留在vSwitch上,而不会触及您的物理networking基础架构。 这样可以有相当不错的性能提升。

您应该将它们保留在单独的LUN上,因为您不需要磁盘争用。


TL; DR – 分析您的应用程序。 找出瓶颈在哪里。 如果您有资源争夺,预订只是重要的。 将预订作为诊断措施没有意义,您需要先做诊断,然后担心是否合适。

根据这个线程在VMWare社区论坛 …

要消除延迟,请更改CPU预留:

  1. 右键单击您的虚拟机,然后select“编辑设置”
  2. 点击资源标签
  3. 点击CPU,在右边放几个MHz作为保留
  4. 点击确定。

通常,您不需要更改内存预留。