[Pacemaker] Fwd: VirtualDomain broken for live migration.

Steven Hale email at stevenhale.co.uk
Mon Aug 18 16:37:22 EDT 2014

Dear all,

I'm in the process of setting up my first four-node cluster.  I'm
using CentOS7 with PCS/Pacemaker/Corosync.

I've got everything set up with shared storage using GlusterFS.  The
cluster is running and I'm in the process of adding resources.  My
intention for the cluster is to use it to host virtual machines.  I
want the cluster to be able to live-migrate VMs between hosts.  I'm
not interested in monitoring resources inside the guests, just knowing
that the guest is running or not is fine.

I've got all the virtualization working with libvirt using KVM.  Live
migration works fine.  Now I'm trying to make it work through the

I am using the VirtualDomain resource in heartbeat.  I can add and
remove VMs.  It works.  But the live migration feature is broken.
Looking at the source, the fault is on this line:

  virsh ${VIRSH_OPTIONS} migrate --live $DOMAIN_NAME ${remoteuri} ${migrateuri}

I guess virsh must have changed at some point, because the "--live"
flag does not exist any more.  I can make it work with the following

  virsh ${VIRSH_OPTIONS} migrate --p2p --tunnelled $DOMAIN_NAME
${remoteuri} ${migrateuri}

This works, at least for my case where I'm tunnelling the migration
over SSH.  But it's not a real bug fix because it's going to need
extra logic somewhere to determine whether it needs to add the
"--tunnelled" flag or not, and whatever other flags are required.

I see that the VirtualDomain resource hasn't been worked on in over
four years.  Similarly the Wiki page has had no updated in this time.


Is this project still in active development?  Is anyone actually
working on this?  While I could do the work to fix the VirtualDomain
resource to work with the latest version of virsh, I don't see the
point if the project is dead.  I gather Heartbeat became what is now
Pacemaker, but there doesn't seem to be a new up-to-date version of
VirtualDomain included with Pacemaker.

Indeed even the Pacemaker documentation seems completely out of date.
I spent hours working with ClusterMon and these pages


just trying to get my cluster to send notification emails.  It was
only when I looked at the ClusterMon source and the man page for
crm_mon that I realised the documentation is completely wrong and
ClusterMon has no ability at all to send emails.  The "extra_options"
field lists options that crm_mon doesn't even show as supported!

What does everybody else use for managing virtual machines on a
Pacemaker cluster?  If heartbeat VirtualDomain is no longer supported,
can anyone point me in the direction of something is that is still in

Thanks for any help and advice anyone can offer.


More information about the Pacemaker mailing list