Jiffin Tony Thottan
2016-Mar-15 13:09 UTC
[Gluster-users] Improving subdir export for NFS-Ganesha
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? >> 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 >> >>
Atin Mukherjee
2016-Mar-16 03:39 UTC
[Gluster-users] Improving subdir export for NFS-Ganesha
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 >>> >>> >