def check_all_nodes(check_obj): if check_obj is 'all': if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls --all' else: check_cmd = 'sudo eayunstack doctor cls --all' else: if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls -n %s' % check_obj else: check_cmd = 'sudo eayunstack doctor cls -n %s' % check_obj # get controller node list node_list = get_node_list('controller') # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn('Node list is null !') return else: if check_obj == 'ceph': # only need to check one node for ceph cluster ceph_node = node_list[0] run_doctor_cmd_on_node('controller', ceph_node, check_cmd) else: (proc_list, pipe) = run_doctor_on_nodes('controller', node_list, check_cmd) for proc in proc_list: proc.join() LOG.info(pipe.recv(), remote=True)
def check_all_nodes(check_obj): if check_obj is 'all': if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls --all' else: check_cmd = 'sudo eayunstack doctor cls --all' else: if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls -n %s' % check_obj else: check_cmd = 'sudo eayunstack doctor cls -n %s' % check_obj # get controller node list node_list = get_node_list('controller') # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn('Node list is null !') return else: if check_obj == 'ceph': # only need to check one node for ceph cluster ceph_node = node_list[0] LOG.info('%s Role: %-10s Node: %-13s %s' % ('*'*15, 'controller', ceph_node, '*'*15)) ssh_connect2(ceph_node, check_cmd) else: for node in node_list: LOG.info('%s Role: %-10s Node: %-13s %s' % ('*'*15, 'controller', node, '*'*15)) ssh_connect2(node, check_cmd)
def check_all_nodes(check_obj): if check_obj is 'all': if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls --all' else: check_cmd = 'sudo eayunstack doctor cls --all' else: if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls -n %s' % check_obj else: check_cmd = 'sudo eayunstack doctor cls -n %s' % check_obj # get controller node list node_list = get_node_list('controller') # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn('Node list is null !') return else: if check_obj == 'ceph': # only need to check one node for ceph cluster ceph_node = node_list[0] run_doctor_cmd_on_node('controller', ceph_node, check_cmd) else: nodes = [] for node in node_list: node_info = {} node_info['role'] = 'controller' node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True)
def check_all_nodes(check_obj): if check_obj is 'all': if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls --all' else: check_cmd = 'sudo eayunstack doctor cls --all' else: if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls -n %s' % check_obj else: check_cmd = 'sudo eayunstack doctor cls -n %s' % check_obj # get controller node list node_list = get_node_list('controller') # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn('Node list is null !') return else: if check_obj == 'ceph': # only need to check one node for ceph cluster ceph_node = node_list[0] res = run_doctor_cmd_on_node('controller', ceph_node, check_cmd) LOG.info(res, remote=True) else: nodes = [] for node in node_list: node_info = {} node_info['role'] = 'controller' node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True)
def check_all_nodes(check_obj): if check_obj is 'all': if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls --all' else: check_cmd = 'sudo eayunstack doctor cls --all' else: if LOG.enable_debug: check_cmd = 'sudo eayunstack --debug doctor cls -n %s' % check_obj else: check_cmd = 'sudo eayunstack doctor cls -n %s' % check_obj # get controller node list node_list = get_node_list('controller') # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn('Node list is null !') return else: if check_obj == 'ceph': # only need to check one node for ceph cluster ceph_node = node_list[0] run_doctor_cmd_on_node('controller', ceph_node, check_cmd) else: proc_list = run_doctor_on_nodes('controller', node_list, check_cmd) for proc in proc_list: proc.join()
def check_all_nodes(check_obj): if check_obj is "all": if LOG.enable_debug: check_cmd = "sudo eayunstack --debug doctor cls --all" else: check_cmd = "sudo eayunstack doctor cls --all" else: if LOG.enable_debug: check_cmd = "sudo eayunstack --debug doctor cls -n %s" % check_obj else: check_cmd = "sudo eayunstack doctor cls -n %s" % check_obj # get controller node list node_list = get_node_list("controller") # ssh to all controller node to check obj if len(node_list) == 0: LOG.warn("Node list is null !") return else: if check_obj == "ceph": # only need to check one node for ceph cluster ceph_node = node_list[0] LOG.info("%s Role: %-10s Node: %-13s %s" % ("*" * 15, "controller", ceph_node, "*" * 15)) ssh_connect2(ceph_node, check_cmd) else: for node in node_list: LOG.info("%s Role: %-10s Node: %-13s %s" % ("*" * 15, "controller", node, "*" * 15)) ssh_connect2(node, check_cmd)
def update(): '''update eayunstack-tools on all nodes''' node_list = get_node_list('all') update_cmd = 'yum clean all && yum -y -d 0 update eayunstack-tools' results = run_cmd_on_nodes(node_list, update_cmd) get_current_version = \ 'rpm --queryformat "%{VERSION} %{RELEASE}" -q eayunstack-tools' current_version = run_cmd_on_nodes(node_list, get_current_version) correct_version = run_command( 'rpm --queryformat "%{VERSION} %{RELEASE}" -q eayunstack-tools') for node in node_list: out = results[node][0] err = results[node][1] current_ver = current_version[node][0].split(' ')[0] + \ '-' + current_version[node][0].split(' ')[1].split('.')[0] correct_ver = correct_version[0].split(' ')[0] + \ '-' + correct_version[0].split(' ')[1].split('.')[0] if err or current_ver != correct_ver: LOG.error('Update on %s failed !' % node) LOG.error('Current version: %s' % current_ver) for l in err.split('\n'): LOG.error(l) print else: LOG.info('Update on %s successfully.' % node) LOG.info('Current version: %s' % current_ver) print
def check_nodes(obj_name): # node_list = get_node_list('all') check_cmd = get_check_cmd(obj_name) for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) proc_list = run_doctor_on_nodes(role, node_list, check_cmd) for proc in proc_list: proc.join()
def check_nodes(obj_name): # node_list = get_node_list('all') check_cmd = get_check_cmd(obj_name) for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) (proc_list, pipe) = run_doctor_on_nodes(role, node_list, check_cmd) for proc in proc_list: proc.join() LOG.info(pipe.recv(), remote=True)
def check_nodes(obj_name): # node_list = get_node_list('all') check_cmd = get_check_cmd(obj_name) for role in ['controller', 'compute', 'mongo', 'ceph-osd']: node_list = get_node_list(role) (proc_list, pipe) = run_doctor_on_nodes(role, node_list, check_cmd) for proc in proc_list: proc.join() LOG.info(pipe.recv(), remote=True)
def check_all(): '''Check All Environement Object''' if NODE_ROLE.is_fuel(): check_cmd = get_check_cmd('all') for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) proc_list = run_doctor_on_nodes(role, node_list, check_cmd) for proc in proc_list: proc.join() else: for i in register.all: eval(i)()
def check_nodes(obj_name): # node_list = get_node_list('all') for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) for node in node_list: LOG.info('%s Role: %-10s Node: %-13s %s' % ('*'*15, role, node, '*'*15)) if LOG.enable_debug: out, err = ssh_connect2(node, 'sudo eayunstack --debug doctor env -n %s' % obj_name) else: out, err = ssh_connect2(node, 'sudo eayunstack doctor env -n %s' % obj_name) if err: LOG.error('Check failed !')
def check_nodes(obj_name): # node_list = get_node_list('all') for role in ["controller", "compute", "mongo", "ceph-osd"]: node_list = get_node_list(role) for node in node_list: LOG.info("%s Role: %-10s Node: %-13s %s" % ("*" * 15, role, node, "*" * 15)) if LOG.enable_debug: out, err = ssh_connect2(node, "sudo eayunstack --debug doctor env -n %s" % obj_name) else: out, err = ssh_connect2(node, "sudo eayunstack doctor env -n %s" % obj_name) if err: LOG.error("Check failed !")
def check_all(): '''Check All Environement Object''' if NODE_ROLE.is_fuel(): check_cmd = get_check_cmd('all') for role in ['controller', 'compute', 'mongo', 'ceph-osd']: node_list = get_node_list(role) (proc_list, pipe) = run_doctor_on_nodes(role, node_list, check_cmd) for proc in proc_list: proc.join() LOG.info(pipe.recv(), remote=True) else: for i in register.all: eval(i)()
def check_nodes(obj_name): # node_list = get_node_list('all') check_cmd = get_check_cmd(obj_name) nodes = [] for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) for node in node_list: node_info = {} node_info['role'] = role node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True)
def check_nodes(obj_name): # node_list = get_node_list('all') check_cmd = get_check_cmd(obj_name) nodes = [] for role in ['controller', 'compute', 'mongo', 'ceph-osd']: node_list = get_node_list(role) for node in node_list: node_info = {} node_info['role'] = role node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True)
def check_all(): '''Check All Environement Object''' if NODE_ROLE.is_fuel(): for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) for node in node_list: LOG.info('%s Role: %-10s Node: %-13s %s' % ('*'*15, role, node, '*'*15)) if LOG.enable_debug: out, err = ssh_connect2(node, 'sudo eayunstack --debug doctor env -a') else: out, err = ssh_connect2(node, 'sudo eayunstack doctor env -a') if err: LOG.error('Check failed !') else: for i in register.all: eval(i)()
def check_all(): """Check All Environement Object""" if NODE_ROLE.is_fuel(): for role in ["controller", "compute", "mongo", "ceph-osd"]: node_list = get_node_list(role) for node in node_list: LOG.info("%s Role: %-10s Node: %-13s %s" % ("*" * 15, role, node, "*" * 15)) if LOG.enable_debug: out, err = ssh_connect2(node, "sudo eayunstack --debug doctor env -a") else: out, err = ssh_connect2(node, "sudo eayunstack doctor env -a") if err: LOG.error("Check failed !") else: for i in register.all: eval(i)()
def check_all(): '''Check All Environement Object''' if NODE_ROLE.is_fuel(): check_cmd = get_check_cmd('all') nodes = [] for role in ['controller','compute','mongo','ceph-osd']: node_list = get_node_list(role) for node in node_list: node_info = {} node_info['role'] = role node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True) else: for i in register.all: eval(i)()
def check_all(): '''Check All Environement Object''' if NODE_ROLE.is_fuel(): check_cmd = get_check_cmd('all') nodes = [] for role in ['controller', 'compute', 'mongo', 'ceph-osd']: node_list = get_node_list(role) for node in node_list: node_info = {} node_info['role'] = role node_info['name'] = node nodes.append(node_info) result = run_doctor_on_nodes(nodes, check_cmd) for res in result: LOG.info(res, remote=True) else: for i in register.all: eval(i)()