def backup_postgres(self): global BACKUP_DIR # Identity database to backup metadata_manager = MetadataAPI() list_services = metadata_manager.get_service_links() list_postgresql = [] for service in list_services: service_name = list_services[service] service_name_env = service_name.upper().replace('-', '_') database = {} database['host'] = service_name database['db'] = os.getenv( service_name_env + '_ENV_POSTGRES_DB', os.getenv(service_name_env + '_ENV_POSTGRES_USER')) database['user'] = os.getenv( service_name_env + '_ENV_POSTGRES_USER', 'postgres') database['password'] = os.getenv(service_name_env + '_ENV_POSTGRES_PASSWORD') database['name'] = service list_postgresql.append(database) print("Found Postgresql host to backup : " + service + " (" + service_name + ")") # Backup database for database in list_postgresql: cmd = 'pg_dump -h ' + database['host'] if database['user'] is not None and database[ 'password'] is not None: cmd = 'PGPASSWORD='******'password'] + ' ' + cmd cmd += ' -U ' + database['user'] cmd += ' -d ' + database['db'] path = BACKUP_DIR + '/' + database['name'] os.system('mkdir -p ' + path) os.system('rm ' + path + '/*') cmd += " -f %s/postgres_%s.sql" % (path, database['db']) os.system(cmd) print("We dump " + database['db'] + " (" + database['name'] + ") in " + path)
def detect_gluster(self): global BACKUP_DIR # Identity database to backup metadata_manager = MetadataAPI() list_services = metadata_manager.get_service_links() list_gluster = [] for service in list_services: service_name = list_services[service] service_name_env = service_name.upper().replace('-', '_') gluster = {} gluster['host'] = service_name gluster['name'] = service gluster['volumes'] = os.getenv(service_name_env + '_ENV_GLUSTER_VOLUMES').split(',') list_gluster.append(gluster) print("Found Gluster host to backup : %s (%s)" % (service, service_name)) return list_gluster
def backup_postgres(self): global BACKUP_DIR # Identity database to backup metadata_manager = MetadataAPI() list_services = metadata_manager.get_service_links() list_postgresql = [] for service in list_services: service_name = list_services[service] service_name_env = service_name.upper().replace('-', '_') database = {} database['host'] = service_name database['db'] = os.getenv(service_name_env + '_ENV_POSTGRES_DB', os.getenv(service_name_env + '_ENV_POSTGRES_USER')) database['user'] = os.getenv(service_name_env + '_ENV_POSTGRES_USER', 'postgres') database['password'] = os.getenv(service_name_env + '_ENV_POSTGRES_PASSWORD') database['name'] = service list_postgresql.append(database) print("Found Postgresql host to backup : " + service + " (" + service_name + ")") # Backup database for database in list_postgresql: cmd = 'pg_dump -h ' + database['host'] if database['user'] is not None and database['password'] is not None: cmd = 'PGPASSWORD='******'password'] + ' ' + cmd cmd += ' -U ' + database['user'] cmd += ' -d ' + database['db'] path = BACKUP_DIR + '/' + database['name'] os.system('mkdir -p ' + path) os.system('rm ' + path + '/*') cmd += " -f %s/postgres_%s.sql" % (path, database['db']) os.system(cmd) print("We dump " + database['db'] + " (" + database['name'] + ") in " + path)