导出备份 本节主要介绍如何使用API导出备份。 此操作用来导出备份。 说明 仅本地卷支持导出备份。 备份分为全量备份和增量备份: 全量备份:导出从卷创建到快照时刻数据到备份文件中。 增量备份:导出同一个卷的两个快照之间的差异数据到备份文件中,如创建snap1snap2的增量备份,即导出从快照snap1时刻到快照snap2时刻的卷数据。 注意 只有在快照均为Normal状态下才可以导出备份。 只有卷在Normal状态下才可以导出备份。 导出备份时,不能删除相关的快照和卷。 请求语法 请求语法1 plaintext POST /rest/v1/block/backup/export HTTP/1.1 Date: date ContentType: application/json; charsetutf8 ContentLength: length Host: ip:port Authorization: authorization { "snapshot": snapshot, "fromSnap": snapshot, "breakpoint": breakpoint, "compression": compression } 请求语法2 plaintext GET /rest/v1/block/backup/export?snapshotsnapshotName&checkFlagcheckFlag&fromSnapsnapshotName&breakpointbreakpoint&compressioncompression HTTP/1.1 Date: date ContentType: application/json; charsetutf8 ContentLength: length Host: ip:port Authorization: authorization 参数 参数 类型 描述 是否必须 snapshot String 快照名称,表示将快照时刻的数据进行导出。 是 fromSnap String 快照名称,表示导出此快照时刻之后的数据。 说明 导出增量备份时必须设置此参数,表示增量备份的起始快照名称。不设置此参数,表示从卷的起始位置开始备份。 否 breakpoint Long 断点位置,本次备份任务导出任务的起始位置。如果上次导出时中断,本次导出任务需要从中断位置进行导出。 取值:268435456的倍数,单位是bytes。不输入或者0表示导出全部数据。如果超过了备份文件的大小,则以空数据生成一个空备份文件。 说明 针对非压缩模式的备份文件,由固定大小的分片(256MiB)组成。在计算导出任务的中断位置时,根据已经导出的备份文件大小,以及固定分片大小,计算出已经成功导出的分片文件大小,即中断位置。 示例: 1. 第一次中断时,已写入257 MiB,向下取整到256 MiB,故中断位置 268435456 bytes(1个完整 256 MiB分片)。 2. 第二次中断时,累计写入256 + 530 786 MiB,向下取整到 768 MiB(3 个完整 256 MiB 分片),故中断位置 805306368 bytes。 后续中断依此规则类推。 否 compression String 是否对备份文件压缩。 取值: Enabled:压缩。 Disabled:不压缩。 如果breakpoint取值不为0,默认值为Disabled;如果breakpoint取值为0,或者没有赋值,默认值为Enabled。 注意 compressionEnabled和breakpoint!0不能同时存在。 否 checkFlag Boolean 是否仅校验参数。 取值: true:仅校验参数。参数无问题返回200;参数有问题返回具体错误。 false:校验参数并返回文件流。参数无问题直接返回文件流;参数有问题返回具体错误信息。 默认值为false。 否