I have set up SLES12 SP1 with XEN and the High Availabilty extension pack. Using HAWK 2 and two nodes, I have configured DRBD with dual primary as a HA resource, which starts and promotes the DRBD resource to primary just fine.

I have set up Windows and SLES 11 SP3 guests. I have set up an 'order' constraint for the DRBD HA resource and XEN VM resource - DRBD Promotes to Primary, then the VirtualDomain resource for the XEN guest starts the Windows or SLES 11 SP3 guests. I have the 'Mandatory' score set for this order constraint. I also have 'Yes' set for the Symmetrical option for the order.

The VMs start fine using the order constraint. However, when shutting down or rebooting a host that has one or more of the guests running on it, HA does not automatically stop the VM and demote the DRBD backend it runs from. This causes the VM backend to corrupt. I have expected the order constraint, using the settings mentioned above, to 'reverse' its order when the hosts shuts down or reboots - ie. shutdown the guest, then demote the DRBD resource (secondary), however, it does not. This did not seem to be a problem with xend on SLES11 SP2.

Is there something i am missing with LibVirt and the VirtualDomain HA resource? (it was xend and 'xen' resource on SLES 11 SP2 - only differences I can see)