Glusterd2 - Some anticipated changes to glusterfs source

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

 



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.

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. 

We'd like to hear your thoughts, suggestions and comments to these proposed
changes.

- Glusterd2 team
_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://lists.gluster.org/mailman/listinfo/gluster-devel

[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux