Keep Separate Rule behavior during HA Incident

If i have a 5-Node Cluster with a Keep Separate Rule with 5 VMs in it and one of the Nodes is failing, the affected VM (which is in the Keep separate rule) on this one node will not be restarted by HA on another Node (because Keep separate is “Must” rule) and there are not enough hosts left to satisfy the rule. Is there a way to configure vsphere to ignore the “Keep Separate” rule in case of a HA (vsphere 6.5)?

p.S dont want to use “pin to host” with “should” rules in this case…

View Reddit by tomsonxxxView Source


To see the full content, share this page by clicking one of the buttons below

Related Articles


  1. I am afraid not. As the rule is MUST vmware cannot accommodate this.

    Should would work fine as when all hosts are up the vms are distributed accoording to the should rule. When a host is down (maintenance/failure) the machine is able to start/vmotion on another node.

  2. What exactly are you trying to achieve?

    I’m using must rules only for certain failure scenarios and if the behaviour is predictable.
    All usual VMs are managed by ‘should’ rules.

    For example clustered applications or VMs with HA functionality.
    If I have an Exchange DAG (thank God for exchange online) containing 2 nodes, separated per datacenter, I use a must rule.
    I don’t care if a single exchange goes down because I got another one for that exact reason.
    Same goes with HA pairs of citrix netscaler.
    Why move both of them if the underlying applications are designed for these types of failover?

    And this example applies to every other application handling HA etc within itself.

    If you use a ‘must’ rule it is determined that the VM is only going to be restarted in your hosts within the host group. If no host is available your VM won’t be restarted.
    For all other use cases there are ‘should’ rules.

  3. > Is there a way to configure vsphere to ignore the “Keep Separate” rule in case of a HA (vsphere 6.5)?

    Outside of a “should” affinity rule ? Nope, AFAIK the “must” rules are absolute for VM placement. You could probably wiggle something workable by creating enough host groups and VM groups, and setting anti-affinity rules between a specific set of each. I’d say pick one host as the preferred one and another as the expected fallback host, for each set: give the VM group its own “should” rule between the preferred host and fallback host, and a “must rule” against the rest of the hosts.

Leave a Reply