[Gluster-users] Migrating a VM makes its gluster storage inaccessible
Bernhard Glomm
bernhard.glomm at ecologic.eu
Tue Jan 28 17:41:52 UTC 2014
Hi Paul,
thanks a lot!
Sounds good.
Will try to confirm your findings ASAP
Regards
Bernhard
> Hi again,
>
> First the good news: I found a way to make live migrations work again.
>
> As quoted below, libvirt changes the ownership of the guest image,
> unless it detects that the image is on a shared filesystem. After
> looking at the code for libvirt, they have code to detect NFS, GFS2 and
> SMB/CIFS, but not Gluster. As libvirt does not detect that the storage
> is on a shared file system, the originating host will perform a chown
> back to root:root at the end of a successful migration, whereas the
> destination host will do a chown to libvirt-qemu:kvm. This is in fact a
> race condition, so the difference in behaviour between 3.4.0 and 3.4.1
> could be down to timing differences.
>
> Workaround: stop your guests, then stop libvirt, and edit
> /etc/libvirt/qemu.conf - this contains a commented out entry
> 'dynamic_ownership=1', which is the default. Change this to 0, and
> remove the comment. Then do a chown to libvirt-qemu:kvm for all your
> stopped images. Then you can start the service libvirt-bin again, and
> bring up the guests. Repeat on the other half of your cluster, and test
> a live migration. For me, they work again.
>
> The workaround seems fine with me, but now you have to take care of
> properly setting the ownership of a guest image yourself (presumably
> only once when you create it).
>
> Other possible solutions:
>
> JoeJulian suggested using libgfapi, giving libvirt direct access without
> having to go through the filesystem. This is the preferred setup for
> libvirt+gluster and should also result in better I/O performance. I
> haven't tested this yet, but it's high on my to-do list.
>
> Submit a patch to libvirt so it can detect that the filesystem is
> Gluster. statfs() will only show 'FUSE", but we could then use getxattr
> to see if there is a gluster-specific attribute set (suggested by
> kkeithley). This could be trusted.glusterfs.volume-id, e.g.
>
> Regards, Paul Boven.
>
>
> On 01/28/2014 01:57 PM, Paul Boven wrote:
> > Hi everyone,
> >
> > On the libvirt Wiki, I found the text below which might well apply to
> > our live-migration issue:
> >
> > "The directory used for storing disk images has to be mounted from
> > shared storage on both hosts. Otherwise, the domain may lose access to
> > its disk images during migration because source libvirtd may change the
> > owner, permissions, and SELinux labels on the disk images once it
> > successfully migrates the domain to its destination. Libvirt avoids
> > doing such things if it detects that the disk images are mounted from a
> > shared storage. "
> >
> > So perhaps libvirtd fails to recognize that it is on shared storage, and
> > it is the originating libvirt that throws a wrench in the wheels by
> > changing the ownership?
> >
> > http://wiki.libvirt.org/page/Migration_fails_because_disk_image_cannot_be_found
> >
> >
> > Regards, Paul Boven.
>
> --
> Paul Boven <> boven at jive.nl> > +31 (0)521-596547
> Unix/Linux/Networking specialist
> Joint Institute for VLBI in Europe - www.jive.nl
> VLBI - It's a fringe science
> _______________________________________________
> Gluster-users mailing list
> Gluster-users at gluster.org
> http://supercolony.gluster.org/mailman/listinfo/gluster-users
--
Bernhard Glomm
IT Administration
Phone:
+49 (30) 86880 134
Fax:
+49 (30) 86880 100
Skype:
bernhard.glomm.ecologic
Ecologic Institut gemeinnützige GmbH | Pfalzburger Str. 43/44 | 10717 Berlin | Germany
GF: R. Andreas Kraemer | AG: Charlottenburg HRB 57947 | USt/VAT-IdNr.: DE811963464
Ecologic™ is a Trade Mark (TM) of Ecologic Institut gemeinnützige GmbH
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://supercolony.gluster.org/pipermail/gluster-users/attachments/20140128/461762cc/attachment.html>
More information about the Gluster-users
mailing list