Hyper-V虚拟机中的资源池共享

我知道我们可以在一台服务器上安装Hyper-V,并在其上运行一些虚拟机,以达到服务器资源的限制。 我想知道是否可以在两台或多台服务器上安装Hyper-V,以便虚拟机可以使用两台服务器的底层资源池? 而且,如果对于“n”个服务器而言也是如此,而不是仅仅两个服务器。

这听起来像你想这样:

  • Hyper-V主机A:4个CPU插槽,运行Guest 1的64GB RAM
  • Hyper-V主机B:4个CPU插槽,运行Guest 2的64GB RAM
  • 某些Windows应用程序可以看到8个CPU插槽,128GB RAM

这不是现成的,但是有一些应用程序可以通过networking相互通信,并在各个节点之间分散工作。 例如,Memcached和Windows AppFabric Velocity是caching工具,可以通过相互通信添加更多节点来扩展。

这是一个应用程序问题,但不是Hyper-V问题。 无论您使用的是物理服务器还是虚拟服务器,问题都是一样的。 什么是你正在寻求解决的业务问题,我们可以谈论做这种缩放的应用程序?

啊。 Hyper-V就像一个比萨 – 你可以从一个披萨上制作切片(VM#),但是你不能从不同的切片中制作一个披萨。

您可以将最多16台服务器(需要共享AN存储)并在它们之间移动虚拟机 – 这对于维护等是很好的,但是每台虚拟机必须在一台机器上运行并从中取出所有资源。

也就是说,你可以做这样的事情,但不能用Hyper-V。 你不想要,因为它会花费你很多。 有一个提供者拥有一个你所要求的技术,形成一个跨越多个服务器的虚拟机。 不是说你可以付钱(它有非常高端的硬件要求)。

你说(在评论中)“现在,我不希望一个虚拟机跨越多个服务器,而是我想要多个虚拟机跨越多个服务器,而不指定特定的虚拟机应该运行在一个特定的主机 – user67905”

这很好,所以你只是在谈论一个标准的Hyper V集群,这完全没有问题。 要运行Hyper V群集,您可以在Enterprise或Datacentre版本中使用免费的Hyper V服务器(尽pipe有人认为这具有群集function)或Windows 2008(+ -R2)。 由于您正在运行虚拟机,您至less需要企业版本,因为这还额外授权了4个虚拟机。

安装时,只需在每台主机上激活“故障转移群集服务”function(或者是angular色,不记得)。 然后在MMC中打开同名群集控制台,然后运行故障转移群集validation向导。 这是一个非常有用的诊断,可以告诉你是否正确设置了套件。 通常会导致错误的区域是存储空间。 完成之后,每次调整之后运行validation工具,并获得一个健康的健康计划,然后享受您的群集。 您将能够将虚拟机从一个虚拟机迁移到另一个虚拟机,池存储,并基本上做你所需要的。 我不记得每个集群允许的最大主机数,但它是12个。顺便说一下,正如其他人所认为的,在主机之间可能没有点积聚内存,这可能是一个昂贵的痛苦。 这是一个应用程序的东西。 除非你有超过三台主机运行超过30个虚拟机,否则我不会用SCVMM或类似的东西。 您将能够手动分发虚拟机,并且随着2008 R2 SP1推出的新dynamic内存function,您可能不会遇到任何内存限制,除非您计划将所有机器都设置为一直敲打着。