如何在已安装SQL Server的Windows Server 2008 R2上最小化内存使用并安装Hyper-V角色

时间:2012-11-01 19:34:19

标签: memory virtual-machine windows-server-2008-r2 sql-server-2012 hyper-v

如何在Windows Server Std上安装和设置Hyper-V角色。已安装了带有SQL Server 2012的2008 R2。 SQL Server是此计算机的优先级。将只安装一个虚拟机并用于从服务器的映像备份中测试灾难恢复还原,完成后可以删除测试VM,以便我们可以测试另一台服务器。其他服务器相似或功能较少,内存较少。

我不打算为此创建分区。我们的RAID驱动器目前有足够的空间。我正在考虑使用静态内存并将虚拟机限制为4 GB的RAM并为SQL Server设置12 GB。托管Hyper-V的服务器是戴尔PowerEdge 2900,配备16 GB RAM,Intel Xeon,E5345 @ 3.33 GHZ(2个处理器)。

讨论:

  1. 如果我们没有安装任何虚拟机或正在使用/测试vm,Hyper-V会使用多少内存?
  2. 如果我们安装了虚拟机且我们正在测试还原(非常基本的测试),Hyper-V将使用多少内存。
  3. 当我们不需要时,有没有办法轻松“关闭”Hyper-V?或者我们是否必须一直更改内存设置?
  4. 11月9日更新

    我应该提到我们安装的服务器角色是:Active Directory,DNS,文件服务,WSUS,IIS。虽然IIS仅用于WSUS。我们在域中使用两个域控制器。这可能是我们不应该安装SQL Server并添加Hyper-V角色的最大原因。因此,我们计划购买“裸机”翻新的戴尔服务器来测试灾难恢复,而不是根本不使用Hyper-V。这样就可以将图像恢复测试从我们的生产服务器中恢复出来,我认为这是明智之举。

1 个答案:

答案 0 :(得分:2)

  1. 这取决于您的服务器和安装的角色以及是否打开Hyper-V管理控制台。在您没有打开Hyper-V管理控制台的新引导服务器的配置中,它可能在10-20 MB的活动内存范围内,几乎没有CPU(可能接近10比20)。为您的设置获得一个非常好的数字的好方法是在没有运行VM的情况下干净启动并检查内存空闲然后停止Hyper-V服务并再次检查数量。禁用这些服务,重新启动,检查内存量,然后最终启动服务并再次检查金额。前两个和后两个数字之间的差异将让您了解Hyper-V在您的配置中占多少。

  2. Hyper-V内存使用量增加,但基本的Hyper-V服务主要是运行每个VM运行的vmwp.exe实例。 CPU时间从主处理器切掉,主操作系统保证它自己(相当大)的CPU和内存片。每个VM运行一个vmwp.exe,其中20-MB(取决于VM配置)加上分配给VM的内存量。 CPU时间很难判断,因为这也取决于VM配置和服务器负载,但通常VM的CPU时间会向主机OS播放第二个字符串。计算此数量的一个好方法是在没有运行VM的情况下干净启动,记下可用内存量,然后启动一个典型的VM。等待该VM完成引导,而不是再次释放内存量,然后登录到VM,最后再看一下服务器中的可用内存量。 3之间的差异应该让你很好地了解正在使用的是什么。

  3. Hyper-V本质上是服务和一些执行的进程,每个VM 1个。如果停止nvspwmi服务(Hyper-V网络管理服务),vmms服务(Hyper-V虚拟机管理)和vhdsvc服务(Hyper-V映像管理服务),则可以停止Hyper-V。注意:在停止这些服务之前,您必须关闭所有虚拟机。每个VM都在vmwp.exe的实例中运行。当你停止Hyper-V时,这些将关闭。注意:这些名称在服务器2012下是不同的。虽然这不会消除Hyper-V使用的100%内存/处理器,但它应该可以轻松地减少99%以上。