def create_backup(self, context, backup_id, instance_id): instance_tasks = models.BuiltInstanceTasks.load(context, instance_id) flavorid = instance_tasks.flavor_id flavor = KSC_Instance._check_flavor(context, flavorid)._info disk = max(flavor.get("disk", 1), 1) ram = max(flavor.get("ram", 1), 1) LOG.info("create backup for backupid:%s,flavor info disk:%s,ram:%s" % (backup_id,disk,ram)) timeout = disk * backup_timeout_pergb set_blkiotune(context,instance_tasks.id) instance_tasks.create_backup(backup_id,type=instance_tasks.type) try: KSC_Backup.wait_backup(context, backup_id, timeout) except Exception as e: LOG.error("wait_backup error!backup_id:%s.exception:%s" % (backup_id,e)) pass finally: set_blkiotune(context,instance_tasks.id,disk=disk,ram=ram)