[Gluster-devel] Improving subdir export for NFS-Ganesha
Atin Mukherjee
amukherj at redhat.com
Wed Mar 16 03:39:12 UTC 2016
On 03/15/2016 06:39 PM, Jiffin Tony Thottan wrote:
>
>
> On 15/03/16 12:23, Atin Mukherjee wrote:
>>
>> On 03/15/2016 11:48 AM, Jiffin Tony Thottan wrote:
>>> Hi all,
>>>
>>> The subdir export is one of key features for NFS server. NFS-ganesha
>>> have already supports subdir export,
>>> but it has lot of limitations when it is intregrated with gluster.
>>>
>>> Current Implementation :
>>> Following steps are required for a subdir export
>>> * export volume using ganesha.enable option
>>> * edit the export configuration file by adding subdir options
>>> * do refresh-config in that node using ganesha-ha.sh
>>> * limitation : multiple directories cannot be exported at a time via
>>> script.
>>> If user to need to do that(it is possible), all the
>>> steps should be done in manually
>>> which includes creating export conf file, use latest
>>> export id, include it in ganesha conf etc.
>>> And also here it become mandatory to export root
>>> before exporting subdir.
>>>
>>> Suggested approach :
>>>
>>> * Introduce new volume set command "ganesha.subdir" which will handle
>>> above mentioned issue cleanly
>>> for example, gluster volume set <volname> ganesha.subdir
>>> <path1,path2,path3 ...>
>>> if u want to unexport path2, use the same command with
>>> mentioning path2
>>> gluster volume set <volname> ganesha.subdir <path1,path3 ...>.(Is
>>> different option required ?)
>> How do you handle a case where you have to unexport all the paths?
How about the above question?
>>> The root of the volume should be export only using ganesha.enable
>>> options.
>>> This require a lot of additions in glusterd code base and minor
>>> changes in snapshot functionality.
>> Could you detail out what all changes will be required in glusterd
>> codebase when volume set ganesha.subdir <list of path> is executed?
>> Based on that we can only take a call whether its feasible to take this
>> in 3.7.x or move it to 3.8.
>
> This is just a rough estimation :
> 1.) glusterd/cli for introducing new option
> 2.) need to modify functions like ganesha_manage_export() to accommodate
> new option
> 3.) changes related to ganesha scripts
> 4.) minor modification to snapshot
> functionality(glusterd_copy_nfs_ganesha_file) for ganesha
> approximately I expect around 100-150 lines of code to be added
>
> --
> Jiffin
>>> Can above mentioned improvement targeted for 3.7.x release (3.7.10 or
>>> 3.7.11) or should I need to move it for 3.8 release ?
>>> Please provide your valuable feedback on the same.
>>>
>>> Please Note : It is not related to subdir export for fuse mount.
>>>
>>> Regards,
>>> Jiffin
>>>
>>>
>
More information about the Gluster-devel
mailing list