On Wed, 2 Aug 2017 at 18:41, Kaushal M <[email protected]> wrote: > On Wed, Aug 2, 2017 at 5:03 PM, Prashanth Pai <[email protected]> wrote: > > Hi all, > > > > The ongoing work on glusterd2 necessitates following non-breaking and > > non-exhaustive list of changes to glusterfs source code: > > > > Port management > > - Remove hard-coding of glusterd's port as 24007 in clients and > elsewhere. > > Glusterd2 can be configured to listen to clients on any port (still > > defaults to > > 24007 though) > > - Let the bricks and daemons choose any available port and if needed > report > > the port used to glusterd during the "sign in" process. Prasanna has a > > patch > > to do this. > > - Glusterd <--> brick (or any other local daemon) communication should > > always happen over Unix Domain Socket. Currently glusterd and brick > > process communicates over UDS and also port 24007. This will allow us > > to set better authentication and rules for port 24007 as it shall only > be > > used > > by clients.
We'll also need to account how brick multiplexing would work with this change. > > > > Changes to xlator options > > - Xlator authors do not have to modify glusterd2 code to expose new > xlator > > options. IOW, glusterd2 will not contain the "glusterd_volopt_map" > table. > > Most of its fields will be moved to the xlator itself. Glusterd2 can > load > > xlator's shared object and read it's volume_options table. This also > means > > xlators have to adhere to some naming conventions for options. > > - Add following additional fields (names are indicative) to > volume_option_t: > > - Tag: This is to enable users to list only options having a certain > > tag. > > IOW, it allows us to filter "volume set help" like output. > > Example of tags: debug, perf, network etc. > > - Opversion: The minimum (or a range) op-version required by the > xlator. > > - Configurable: A bool to indicate whether this option is > > user-configurable. > > This may also be clubbed with DOC/NO_DOC > > functionality. > > - Xlators like AFR, changelog require non-static information such as > brick > > path > > to be present in it's options in the volfile. Currently, xlator authors > > have > > to modify glusterd code to get it. > > This can rather be indicated by the xlator itself using > > templates/placehoders. > > For example, "changelog-dir" can be set in xlator's option as as > > <<brick-path>>/.glusterfs/changelogs and then glusterd2 will ensure to > > replace > > <<brick-path>> with actual path during volfile generation. > > One more change in this regard would be that xlators would now need to > ensure that all options have default values. There are cases where > certain xlators options had default values only in the volopt_map and > not in their own opt table. Also this will remove the possibilty of > the defaults differing between volopt_map and xlator options table. +1 > > > > > We'd like to hear your thoughts, suggestions and comments to these > proposed > > changes. > > > > - Glusterd2 team > > > > _______________________________________________ > > Gluster-devel mailing list > > [email protected] > > http://lists.gluster.org/mailman/listinfo/gluster-devel > _______________________________________________ > Gluster-devel mailing list > [email protected] > http://lists.gluster.org/mailman/listinfo/gluster-devel > -- - Atin (atinm)
_______________________________________________ Gluster-devel mailing list [email protected] http://lists.gluster.org/mailman/listinfo/gluster-devel
