[DRBD-user] Xen live migration on top of DRBD 8.3.1 & heartbeat floating IP stacked devices

Adam Wilbraham adam.wilbraham at technophobia.com
Thu Jul 16 11:58:56 CEST 2009

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.

I originally posted this to the Xen-Users list but as its pretty DRBD 
focused it may be better here...

My current setup is a 2 node Xen cluster using DRBD on top of LVM 
allowing me to live migrate at will between the nodes making use of the 
"allow-two-primaries" feature of DRBD. I had to work around some stuff 
to enable HVM based live migration, but it all works well now.

I want to take advantage of the DRBD 8.3.1 stacked devices feature so 
that I can replicate my DRBD devices off site, which means using 
heartbeat to manage a floating IP address (or number of IP addresses) 
between the two boxes, managing your DRBD device using the drbdupper 
resource agent and referencing the stacked device in your Xen domU 
config rather than the underlying DRBD device. I've had to create a 
"block-drbdstacked" helper script to handle accessing stacked devices 
which works fine and handles promoting to primary and dropping back to 
secondary in the same way that the standard block-drbd script does, 
however I am now at the point where I need to be able to do live migrations.

Currently if I do a "xm migrate test-domu host2 --live" then the running 
domU gets migrated but the storage backend doesn't which is to be 
expected in the setups current state. If I manually force a failover 
using heartbeat then the drbd device moves over, but its too late by 
this point as the running domU has already lost the storage. What I'm 
trying to establish is whether its theoretically possible to do what I'm 
trying to do - trigger a migration which doesn't complete until the 
underlying device has been migrated over by heartbeat. I believe that 
live migration relies on the allow-two-primaries functionality of DRBD 
which is physically impossible using a floating resource like in my 
setup. Has anyone had any experience with configuring a system like this?

Part of me is trying to tell me its one step too far but the other part 
of me says that if its possible to save the state of a domU, switch the 
resource over to the second node and then restore the state of the domU 
onto there then it should definitely be possible to make this work even 
if its not using the actual live migration functionality.

Thanks for any of your thoughts in advance,

Adam Wilbraham - Systems Administrator
TechnoPhobia Limited
The Workstation
15 Paternoster Row
S1 2BX
t: +44 (0)114 2212123
f: +44 (0)114 2212124
e: adam.wilbraham at technophobia.com
w: http://www.technophobia.com/

Registered in England and Wales Company No. 3063669
VAT registration No. 598 7858 42
ISO 9001:2000 Accredited Company No. 21227
ISO 14001:2004 Accredited Company No. E997
ISO 27001:2005 (BS7799) Accredited Company No. IS 508906
Investor in People Certified No. 101507

The contents of this email are confidential to the addressee
and are intended solely for the recipients use. If you are not
the addressee, you have received this email in error.
Any disclosure, copying, distribution or action taken in
reliance on it is prohibited and may be unlawful.

Any opinions expressed in this email are those of the author
personally and not TechnoPhobia Limited who do not accept
responsibility for the contents of the message.

All email communications, in and out of TechnoPhobia,
are recorded for monitoring purposes.

More information about the drbd-user mailing list