Re: Migrating a VM makes its gluster storage inaccessible

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Paul & all
the workaround you found is working for me too.
I also would like to try libgfapi but failed to recompile qemu.
Although
http://gluster.org/community/documentation/index.php/Building_QEMU_with_gfapi_for_Debian_based_systems
is pretty accurate I ended up with a missing pxe support which 
I need for the auto install system.
Best regards & thnx again for the workaround
Bernhard

On 28.01.2014 17:26:44, Paul Boven wrote:
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@xxxxxxx> +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@xxxxxxxxxxx
http://supercolony.gluster.org/mailman/listinfo/gluster-users



--

*Ecologic Institute* Bernhard Glomm
IT Administration

Phone: +49 (30) 86880 134
Fax: +49 (30) 86880 100
Skype: bernhard.glomm.ecologic
Website: | Video: | Newsletter: | Facebook: | Linkedin: | Twitter: | YouTube: | Google+:
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

_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://supercolony.gluster.org/mailman/listinfo/gluster-users

[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux