def configure_general_environment(self, cluster_context, instances=None): LOG.debug('Executing post configure hooks') mapr_user_pass = pu.get_mapr_password(cluster_context.cluster) if not instances: instances = cluster_context.get_instances() def set_user_password(instance): LOG.debug('Setting password for user "mapr"') if self.mapr_user_exists(instance): with instance.remote() as r: r.execute_command('echo "%s:%s"|chpasswd' % ('mapr', mapr_user_pass), run_as_root=True) else: LOG.warning(_LW('User "mapr" does not exists')) def create_home_mapr(instance): target_path = '/home/mapr' LOG.debug("Creating home directory for user 'mapr'") args = {'path': target_path, 'user': '******', 'group': 'mapr'} cmd = ('mkdir -p %(path)s && chown %(user)s:%(group)s %(path)s' % args) if self.mapr_user_exists(instance): with instance.remote() as r: r.execute_command(cmd, run_as_root=True) else: LOG.warning(_LW('User "mapr" does not exists')) util.execute_on_instances(instances, set_user_password) util.execute_on_instances(instances, create_home_mapr)
def get_ui_info(self, cluster_context): # Hue uses credentials of the administrative user (PAM auth) return [('HUE', HUE, { s.SERVICE_UI: 'http://%s:8888', 'Username': '******', 'Password': pu.get_mapr_password(cluster_context.cluster) })]
def configure_general_environment(self, cluster_context, instances=None): LOG.debug('Executing post configure hooks') mapr_user_pass = pu.get_mapr_password(cluster_context.cluster) if not instances: instances = cluster_context.get_instances() def set_user_password(instance): LOG.debug('Setting password for user "%s"' % pu.MAPR_USER_NAME) if self.mapr_user_exists(instance): with instance.remote() as r: r.execute_command( 'echo "%s:%s"|chpasswd' % (pu.MAPR_USER_NAME, mapr_user_pass), run_as_root=True) else: LOG.warning(_LW('User "mapr" does not exists')) def create_home_mapr(instance): target_path = '/home/%s' % pu.MAPR_USER_NAME LOG.debug("Creating home directory for user '%s'" % pu.MAPR_USER_NAME) args = {'path': target_path, 'user': pu.MAPR_USER_NAME, 'group': _MAPR_GROUP_NAME} cmd = ('mkdir -p %(path)s && chown %(user)s:%(group)s %(path)s' % args) if self.mapr_user_exists(instance): with instance.remote() as r: r.execute_command(cmd, run_as_root=True) else: LOG.warning(_LW('User "mapr" does not exists')) util.execute_on_instances(instances, set_user_password) util.execute_on_instances(instances, create_home_mapr)
def _update_cluster_info(self, cluster_context): LOG.debug('Updating UI information.') info = { 'Admin user credentials': { 'Username': '******', 'Password': pu.get_mapr_password(cluster_context.cluster) } } for service in cluster_context.cluster_services: for title, node_process, ui_info in ( service.get_ui_info(cluster_context)): removed = cluster_context.removed_instances(node_process) instances = cluster_context.get_instances(node_process) instances = [i for i in instances if i not in removed] if len(instances) == 1: display_name_template = "%(title)s" else: display_name_template = "%(title)s %(index)s" for index, instance in enumerate(instances, start=1): args = {"title": title, "index": index} display_name = display_name_template % args data = ui_info.copy() data[srvc.SERVICE_UI] = (data[srvc.SERVICE_UI] % instance.get_ip_or_dns_name()) info.update({display_name: data}) ctx = context.ctx() conductor.cluster_update(ctx, cluster_context.cluster, {'info': info})
def _update_cluster_info(self, cluster_context): LOG.debug('Updating UI information.') info = {'Admin user credentials': {'Username': pu.MAPR_USER_NAME, 'Password': pu.get_mapr_password (cluster_context.cluster)}} for service in cluster_context.cluster_services: for title, node_process, ui_info in (service.get_ui_info (cluster_context)): removed = cluster_context.removed_instances(node_process) instances = cluster_context.get_instances(node_process) instances = [i for i in instances if i not in removed] if len(instances) == 1: display_name_template = "%(title)s" else: display_name_template = "%(title)s %(index)s" for index, instance in enumerate(instances, start=1): args = {"title": title, "index": index} display_name = display_name_template % args data = ui_info.copy() data[srvc.SERVICE_UI] = (data[srvc.SERVICE_UI] % instance.management_ip) info.update({display_name: data}) ctx = context.ctx() conductor.cluster_update(ctx, cluster_context.cluster, {'info': info})
def get_ui_info(self, cluster_context): # MCS uses credentials of the administrative user (PAM auth) return [ ( "MapR Control System (MCS)", WEB_SERVER, { s.SERVICE_UI: "https://%s:8443", "Username": pu.MAPR_USER_NAME, "Password": pu.get_mapr_password(cluster_context.cluster), }, ) ]
def get_ui_info(self, cluster_context): # Hue uses credentials of the administrative user (PAM auth) return [('HUE', HUE, {s.SERVICE_UI: 'http://%s:8888', 'Username': pu.MAPR_USER_NAME, 'Password': pu.get_mapr_password(cluster_context .cluster)})]
def get_ui_info(self, cluster_context): # MCS uses credentials of the administrative user (PAM auth) return [('MapR Control System (MCS)', WEB_SERVER, {s.SERVICE_UI: 'https://%s:8443', 'Username': pu.MAPR_USER_NAME, 'Password': pu.get_mapr_password(cluster_context.cluster)})]
def get_ui_info(self, cluster_context): # MCS uses credentials of the administrative user (PAM auth) return [('MapR Control System (MCS)', WEB_SERVER, {s.SERVICE_UI: 'https://%s:8443', 'Username': '******', 'Password': pu.get_mapr_password(cluster_context.cluster)})]