From 378b34f62f52d8cf1e4ee3bd5e034363c77c6acc Mon Sep 17 00:00:00 2001 From: Harshavardhana Ranganath Date: Wed, 25 Nov 2009 14:33:55 +0000 Subject: Volgen supporting multidisks and booster configuration for nfs and cifs Signed-off-by: Harshavardhana Signed-off-by: Anand V. Avati BUG: 396 (Volgen multiple export directory support) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=396 --- extras/volgen/CreateBooster.py | 56 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 extras/volgen/CreateBooster.py (limited to 'extras/volgen/CreateBooster.py') diff --git a/extras/volgen/CreateBooster.py b/extras/volgen/CreateBooster.py new file mode 100644 index 000000000..9051f4401 --- /dev/null +++ b/extras/volgen/CreateBooster.py @@ -0,0 +1,56 @@ +GLUSTERFS_BOOSTER_FSTAB = "/etc/gluster/booster.fstab" +GLUSTERFS_UNFS3_EXPORTS = "/etc/gluster/boosterexports" +GLUSTERFS_CIFS_CONFIG = "/etc/gluster/boostersmb.conf" +LOGDIR = "/var/log/glusterfs" +CONFDIR = "/etc/gluster" +fstype = "glusterfs" + +class CreateBooster: + + def __init__ (self, main_name, export_dir): + + self.volume_name = main_name + self.export = export_dir + + def configure_booster_fstab (self): + if self.volume_name is None or self.export is None: + sys.exit(1) + + booster_fstab_fd = file (GLUSTERFS_BOOSTER_FSTAB, "a") + _fstab = "%s/%s.vol %s" % (CONFDIR, self.volume_name, self.export) + _options = "%s subvolume=io-cache" % fstype + _options_log = "logfile=%s/%s.log" % (LOGDIR, self.volume_name) + _options_ext = "loglevel=ERROR,attr_timeout=0" + booster_fstab_fd.write ("%s %s,%s,%s\n" % + (_fstab, + _options, + _options_log, + _options_ext)) + + return + + def configure_nfs_booster (self): + if self.volume_name is None or self.export is None: + sys.exit(1) + + nfs_exports_fd = file (GLUSTERFS_UNFS3_EXPORTS, "a") + nfs_exports_fd.write ("%s 0.0.0.0/0(rw,no_root_squash)\n" % + self.export) + return + + def configure_cifs_booster (self): + + if self.volume_name is None or self.export is None: + sys.exit(1) + + cifs_config_fd = file (GLUSTERFS_CIFS_CONFIG, "a") + cifs_config_fd.write ("[%s]\n" % self.volume_name) + cifs_config_fd.write ("comment = %s volume served by Gluster\n" % + self.volume_name) + cifs_config_fd.write ("path = %s\n" % self.export) + cifs_config_fd.write ("guest ok = yes\n") + cifs_config_fd.write ("public = yes\n") + cifs_config_fd.write ("writable = yes\n") + cifs_config_fd.write ("admin users = gluster\n") + cifs_config_fd.close() + return -- cgit