NFS FILE ID not unique when exporting many brtfs subvolumes

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

 



Hi BTRFS community

I have a problem using btrfs/nfs to store my vmware images.

- following setup :(debian wheezy + backports)

	Linux sncubetest02 3.14-0.bpo.1-amd64 #1 SMP Debian 3.14.12-1~bpo70+1 (2014-07-13) x86_64 GNU/Linux
	> btrfs --version
	Btrfs v3.14.1

	> btrfs fi show
	Label: none  uuid: 8e37c8d0-e0ef-4857-ae9f-9a1be21901ed
	        Total devices 2 FS bytes used 210.27GiB
	        devid    1 size 500.00GiB used 107.03GiB path /dev/sdb1
	        devid    2 size 500.00GiB used 107.01GiB path /dev/sdc1

	> btrfs fi df /vms
	Data, RAID0: total=212.00GiB, used=210.00GiB
	Data, single: total=8.00MiB, used=7.96MiB
	System, RAID0: total=16.00MiB, used=16.00KiB
	System, single: total=4.00MiB, used=0.00
	Metadata, RAID0: total=2.00GiB, used=265.61MiB
	Metadata, single: total=8.00MiB, used=0.00

	linux-image-3.14-0.bpo.1-amd64  	3.14.12-1~bpo70+1
	btrfs-tools                            		3.14.1-1~bpo70+1
	nfs-kernel-server                       		1:1.2.6-4

	>btrfs sub list /vms
	ID 259 gen 1678 top level 5 path w764x/vm
	ID 276 gen 1677 top level 5 path gwacx/vm

	/vms		 			# NFS exported filesystem, btrfs mounted root subvolume
	/vms/ w764x /vm /			# btrfs subvolume sor vm #1
	/vms/ gwacx /vm /			# btrfs subvolume sor vm #2

- vmware is basing its NFS files locks on the nfs fileid field returned from a NFS GETATTR request for the file being locked
	http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1007909
   vmware assumes that these nfs fileid are unique per storage.

- it seemed that these nfs fileid are only unique 'per-subvolume', but because my nfs export contains many subvolumes,
the nfs export has then my files (in different subvolume) with the same nfs fileid.

- no problem when I start all machine alone, but when 2 machines are running at the same time, vmware seems to mix its reference to lock file and 
sometimes kills one vm.

	in esx server, following messages : 	/var/log/vmkwarning.log : 

	2014-07-17T06:31:46.854Z cpu2:268913)WARNING: NFSLock: 1315: Inode (Dup: 260 Orig: 260) has been recycled by server, freeing lock info for .lck-0401000000000000
	2014-07-17T06:34:47.925Z cpu2:114740)WARNING: NFSLock: 2348: Unable to remove lockfile .invalid, not found
	2014-07-17T10:18:50.320Z cpu0:32824)WARNING: NFSLock: 2348: Unable to remove lockfile .invalid, not found

	and in machine log : 
		Message from sncubeesx02: The lock protecting vm-w7-sysp.vmdk has been lost, 
		possibly due to underlying storage issues. If this virtual machine is configured to be highly 
		available, ensure that the virtual machine is running on some other host before clicking OK. 
	
- vmware try to make its own file locking for flowing file type : 
	http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=10051

	VMNAME.vswp 
	DISKNAME-flat.vmdk 
	DISKNAME-ITERATION-delta.vmdk 
	VMNAME.vmx 
	VMNAME.vmxf 
	vmware.log

Is there a way to deal with this problem ? is that a bug ? 

thanks for your support, best regards


Philippe Simonet

Attachment: dmesg.log
Description: dmesg.log


[Index of Archives]     [Linux Filesystem Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux