def create_gluster_uri(params, stripped=False): """ Find/create gluster volume """ vol_name = params.get("gluster_volume_name") error.context("Host name lookup failed") hostname = socket.gethostname() gluster_server = params.get("gluster_server") gluster_port = params.get("gluster_port", "0") if not gluster_server: gluster_server = hostname if not gluster_server or gluster_server == "(none)": if_up = utils_net.get_net_if(state="UP") ip_addr = utils_net.get_net_if_addrs(if_up[0])["ipv4"][0] gluster_server = ip_addr # Start the gluster dameon, if not started # Building gluster uri gluster_uri = None if stripped: gluster_uri = "%s:/%s" % (gluster_server, vol_name) else: gluster_uri = "gluster://%s:%s/%s/" % (gluster_server, gluster_port, vol_name) return gluster_uri
def create_gluster_vol(params): vol_name = params.get("gluster_volume_name") force = params.get('force_recreate_gluster') == "yes" brick_path = params.get("gluster_brick") if not os.path.isabs(brick_path): # do nothing when path is absolute base_dir = params.get("images_base_dir", data_dir.get_data_dir()) brick_path = os.path.join(base_dir, brick_path) error.context("Host name lookup failed") hostname = socket.gethostname() if not hostname or hostname == "(none)": if_up = utils_net.get_net_if(state="UP") for i in if_up: ipv4_value = utils_net.get_net_if_addrs(i)["ipv4"] logging.debug("ipv4_value is %s", ipv4_value) if ipv4_value != []: ip_addr = ipv4_value[0] break hostname = ip_addr # Start the gluster dameon, if not started glusterd_start() # Check for the volume is already present, if not create one. if not is_gluster_vol_avail(vol_name) or force: return gluster_vol_create(vol_name, hostname, brick_path, force) else: return True