[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gluster-devel
Subject:    [Gluster-devel] [SOLVED] "failed to fetch volume file (key:dpkvol)" error , when tried as non-root (
From:       deepakcs () linux ! vnet ! ibm ! com (Deepak C Shetty)
Date:       2012-12-13 11:07:44
Message-ID: 50C9B430.9010007 () linux ! vnet ! ibm ! com
[Download RAW message or body]

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 
volfile" error.
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.

thanx,
deepak



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 
> > > > bdbae806-c272-4b87-ae69-274fd4d57c5f
> > > > -smbios type=1,manufacturer=oVirt,product=oVirt
> > > > Node,version=17-1,serial=762589AD-3D52-42C3-6F65-D682277D5B37_52:54:00:c7:66:ec,uuid=bdbae806-c272-4b87-ae69-274fd4d57c5f \
> > > >  
> > > > 
> > > > -no-user-config -nodefaults -chardev
> > > > socket,id=charmonitor,path=/var/lib/libvirt/qemu/virsh-vm-backed-by-gluster.monitor,server,nowait \
> > > >  
> > > > 
> > > > -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
> > > > virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x3
> > > > -drive
> > > > file=gluster+tcp://vm-vdsm-de-1/dpkvol/debian_lenny_i386_standard.qcow2,if=none,id=drive-ide0-0-0 \
> > > >  
> > > > 
> > > > -device
> > > > ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1
> > > > -chardev pty,id=charconsole0 -device
> > > > virtconsole,chardev=charconsole0,id=console0 -vnc 0:0,password -vga
> > > > cirrus
> > > > 
> > > > With this also, i still get the same error which says "unabel to fetch
> > > > volfile"
> > > > 
> > > 
> > > Did you happen to restart glusterd after setting allow-insecure to ON
> > > in glusterd.vol? Were the results same before and after setting the
> > > option?
> > 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 
> > result.
> 
> 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.
> 
> Regards,
> Vijay
> 
> 
> 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic