我收到了在运行不亲和/反亲和规则的VMware HA/DRS集群中的一组虚拟机上添加VMware vSphere 4.1的请求。
客户端有四台主机,并且希望在主机故障时防止某些虚拟机在同一台主机上运行。
通常,这种类型的请求很简单,您只需避免在同一台计算机上运行app01和app02 .上游有一个单独的应用负载均衡器。
但是,这个请求要求app01、app02、app03、app04、app05和app06在不同的主机上运行。
六个虚拟机,四个主机。我们的第一个响应团队将app01-app06添加到单个“单独的虚拟机”DRS规则中。这似乎不正确,因为在维护模式或升级管理器补救中,结果可能是不可预测的。
类似于:

这样做对四个东道主的影响是什么?这样会否达到预期的目标?不好的一面?
发布于 2013-01-15 14:03:14
如果6个VM已经启动,那么DRS将尽可能多地将它们分开。然后,它将显示一个DRS错误,它无法修复反亲和规则违规,但不会关闭其中任何一个:

如果6台中的4台在不同的主机上运行,并且尝试在其余2台中的一台上供电,DRS规则将拒绝为其供电,并给出以下错误:

最明显的缺点是你不能全部跑6次。可以想象,如果在创建规则之前让它们运行,那么它们就会继续运行,但是由于某种原因,它们最终会因某种原因而关闭,并且由于该规则而无法再次启动,这是不可避免的。根据捕获,他们是关闭的,这样他们就不能把所有的6开关(实际上,在规则中有8在捕获,所以4将保持关闭)。
另一种解决方案(未经测试)将允许启用所有VM,但在两个主机上至少仍有两个VM运行,不能满足客户端对资源的不可能的需求:
您可以创建两个“单独的VM”DRS规则,将VM 1-4放在一个,5-6在另一个。这将允许所有6点启动,但丢失或关闭主机进行维护也意味着您可以运行5 VM max,这仍然比在原始解决方案中运行的4更好,即使所有主机都在运行。
https://serverfault.com/questions/469254
复制相似问题