[Gluster-devel] [SOLVED] "failed to fetch volume file (key:dpkvol)" error , when tried as non-root (vdsm) user
Deepak C Shetty
deepakcs at linux.vnet.ibm.com
Thu Dec 13 10:55:44 UTC 2012
After doing many experiments and inputs I got from vijay on IRC, this is
what finally worked.
1) volume set <volname> server.allow-insecure on
2) option rpc-auth-allow-insecure on in glusterd.vol
If either of the above is not present, i get the same "unable to get
I have tried setting virsh (actually libvirt) to spawn qemu process as
'root', 'vdsm' and 'qemu' user
and it fails for all the 3 if either of the above is NOT set.
Only when both of the above is set, it works for me and I am able to
start a VM via virsh.
Strangely enuf, on Bharata's machine, none of the above options are set,
but it still works for him !
How why is the difference is not clear.
But for now, i think i am good to go for my vdsm work, as this part of
the stack is now working.
On 12/13/2012 12:21 PM, Vijay Bellur wrote:
> On 12/13/2012 11:50 AM, Deepak C Shetty wrote:
>> On 12/13/2012 11:26 AM, Vijay Bellur wrote:
>>> On 12/13/2012 10:20 AM, Deepak C Shetty wrote:
>>>> Here is the qemu process spawned by virsh ( via libvirt )...
>>>> root 2912 1 1 10:16 ? 00:00:00
>>>> /usr/local/bin/qemu-system-x86_64 -name virsh-vm-backed-by-gluster
>>>> -S -M
>>>> pc -cpu qemu64,-svm -enable-kvm -m 1024 -smp
>>>> 1,sockets=1,cores=1,threads=1 -uuid
>>>> -smbios type=1,manufacturer=oVirt,product=oVirt
>>>> -no-user-config -nodefaults -chardev
>>>> -mon chardev=charmonitor,id=monitor,mode=control -rtc
>>>> base=2012-12-13T04:46:48,driftfix=slew -no-shutdown -device
>>>> piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device
>>>> -chardev pty,id=charconsole0 -device
>>>> virtconsole,chardev=charconsole0,id=console0 -vnc 0:0,password -vga
>>>> With this also, i still get the same error which says "unabel to fetch
>>> Did you happen to restart glusterd after setting allow-insecure to ON
>>> in glusterd.vol? Were the results same before and after setting the
>> Yes, today i came in and started glusterd from scratch so that should
>> have covered your point.
>> Also setting allow-insecure in glsuterd.vol ( as you suggested
>> yesterday) doesn't help either, in fact i get a warning msg in the
>> glusterd log saying that option is incorrect and hence ignoring.
> Please set rpc-auth-allow-insecure to on. You can always lookup the
> relevant keys of translator options by looking at the definition of
> struct volume_options within the translator code.
>> Yes in short, with and without that insecure option, i see the same
> Since the option has not been recognized, you haven't still seen it
> being effective.
>> I am curious to know how insecure option can be related to glusterd not
>> able to find volfile ?
> The problem is about not being able to fetch volume file. This can
> happen mostly due to:
> 1. A rpc failure between the client and glusterd
> 2. glusterd unable to locate the volume
> In your case, I suspect it is a rpc failure because of an unprivileged
> client trying to access glusterd.
>> Can you help list all the possible reason why glusterd can ever complain
>> abt not able to fetch volfile ? Maybe that can help me debug my env
> It would be primarily one of the above. You can follow the code path
> from server_getspec in xlators/mgmt/glusterd/src/glusterd-handshake.c
> to determine where it is failing after the unprivileged issue is
> sorted out.
More information about the Gluster-devel