def start(self, env, upgrade_type=None): import params env.set_params(params) self.configure(env, upgrade_type=upgrade_type) daemon_cmd = get_daemon_cmd(params, self.nodeType, "start") # Verify Database connection on Druid start if params.metadata_storage_type == 'mysql': if not params.jdbc_driver_jar or not os.path.isfile( params.connector_download_dir + os.path.sep + params.jdbc_driver_jar): path_to_jdbc = params.druid_extensions_dir + os.path.sep + "*" error_message = "Error! Sorry, but we can't find jdbc driver for mysql.So, db connection check can fail." + \ "Please run 'ambari-server setup --jdbc-db=mysql --jdbc-driver={path_to_jdbc} on server host.'" Logger.error(error_message) else: path_to_jdbc = params.connector_download_dir + os.path.sep + params.jdbc_driver_jar db_connection_check_command = format( "{params.java8_home}/bin/java -cp {params.check_db_connection_jar}:{path_to_jdbc} org.apache.ambari.server.DBConnectionVerification '{params.metadata_storage_url}' {params.metadata_storage_user} {params.metadata_storage_password!p} com.mysql.jdbc.Driver" ) else: db_connection_check_command = None if db_connection_check_command: sudo.chmod(params.check_db_connection_jar, 0755) Execute(db_connection_check_command, tries=5, try_sleep=10, user=params.druid_user) try: Execute(daemon_cmd, user=params.druid_user) except: show_logs(params.druid_log_dir, params.druid_user) raise
def stop(self, env, upgrade_type=None): import params env.set_params(params) daemon_cmd = get_daemon_cmd(params, self.nodeType, "stop") try: Execute(daemon_cmd, user=params.druid_user) except: show_logs(params.druid_log_dir, params.druid_user) raise
def stop(self, env, upgrade_type=None): import params env.set_params(params) pid_file = getPid(params, self.nodeType) process_id_exists_command = as_sudo(["test", "-f", pid_file]) + " && " + as_sudo(["pgrep", "-F", pid_file]) daemon_cmd = get_daemon_cmd(params, self.nodeType, "stop") try: Execute(daemon_cmd, user=params.druid_user, only_if=process_id_exists_command, ) except: show_logs(params.druid_log_dir, params.druid_user) raise