Hi all,
What is the difference between an NFS Share for 9.x and 10.x?
Because the same file share it works on 9.x implementations, but when I try to use it on 10.x I get:
"Unexpected permissions on file /opt/vmware/vcloud-director/data/transfer/xyz while performing operation: touch xyz. Expected: root root 644. Found: root, root, 600"
Used in a 9.7 and works without any issues.
Here we have some notes about the NFS share in 10.2, but nothing specific for the right way to fix it.
https://docs.vmware.com/en/VMware-Cloud-Director/10.2/VMware-Cloud-Director-Install-Configure-Upgrad...
I have changed everything I can remember, but still can't put this share to work for vCD 10.2.
Just for information: share was created in a QNAP as NFS Share.
Thanks
NW
Hi! I don't know, what did change between 9 and 10, but I have 10.2 on my site. NFS is on Linux, volume is root:root, rights is 750 recursively.
Note: after vCloud Director fetches NFS share, rights to volume change to 1003:1002
Before 10.2 you set the nfs when deploying the ova. Now you have to set it after deploy into the configuration page.
There is a script called nfsValidate.py that checks nfs permissions and other things. It seems to be that there is a known issue with freenas/truenas.
You can bypass that file or you can try to set your nfs mount point in vcenter as follow:
1. Stop vcloud appliance
2. Go to vcloud appliance > configure > vapp options
and set the property vcloudapp.nfs_mount.VMware_vCloud_Director pointing to your nfs share
Hi mouyaq,
Thanks for your reply.
Yes, it was on the configuration page that I get that issue.
I will try your workaround and update this threat.
PS: I had another test vCD and used a Synology without any issues.
Thanks
There is a bug / inconsistency in nfsValidate.py
In order to fix it you have to change nfs username in script .
Here is problematic area:
===========cut============
# verify that chmod'ed file has correct ownership and permissions
perms_test(TEST_FILE, 'root', 'root', response, '750')
# check that chown works
chown_test(TEST_FILE, response)
# verify that chown'ed file has correct ownership
perms_test(TEST_FILE, 'vcloud', 'vcloud', response) # don't check mode in this test
=======end of cut=============
As you can see script calling sub "perms_test" with different username twice. So unless if your NFS server do not care about username this part will never pass the test. So I changed script to :
===========cut============
# verify that chmod'ed file has correct ownership and permissions
#perms_test(TEST_FILE, 'root', 'root', response, '750')
perms_test(TEST_FILE, 'vcloud', 'vcloud', response, '750')
# check that chown works
chown_test(TEST_FILE, response)
# verify that chown'ed file has correct ownership
perms_test(TEST_FILE, 'vcloud', 'vcloud', response) # don't check mode in this test
=======end of cut=============
and successfully deployed the nodes.
You will ask why than primary node get deployed ? Answer is very simple , this subroutine never get called from primary node deployment routine.
So I recommend vMware to test the code better to avoid such confusion.