# 恢复管理

SDK类名:/rep/RepRecovery

# 恢复-1 新建任务

SDK方法名:createRepRecovery;

# URL

//rep/recovery

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
rep_recovery Object
  rc_name String 恢复名称
  rc_type Number 0 恢复类别:

0:即时恢复 1:cdp恢复 2:快照回复 |   rc_method | Number | 否 | 0 | 恢复方式: 0:按规则来恢复 1:按数据目录来恢复 |   rep_uuid | String | 否 | | 复制规则uuid, rc_method为1,可不传 |   data_path | String | 否 | | 恢复数据路径;rc_method为0时,可不传 |   biz_grp_list | Array | 否 | | 业务组uuid |   bk_uuid | String | 否 | | 灾备机uuid |   wk_uuid | String | 否 | | 工作机uuid |   oph_policy | Number | 否 | | 孤儿文件处理方式: 0:不处理 1:删除 |   bk_path | Array | 否 | | 灾备机目录 |   wk_path | Array | 否 | | 恢复到的工作机目录 |   cdp_rc_method | Number | 否 | | (cdp)恢复类型: 0:恢复到异机 1:恢复到备机 |   merge_path | String | 否 | | cdp数据恢复合并目录 |   pointTime | String | 否 | 2019-12-03T10:30:05.886Z | cdp恢复时间点 |   cdp_time | String | 否 | | cdp时间 |   cdp_op | String | 否 | | cdp操作 |   cdp_file | String | 否 | | cdp目录/文件 |   cdp_position | String | 否 | 2019-01-02_16-35-21+-2 | CDP位置(1 获取CDP日志列表接口返回) |   start_time | String | 否 | | cdp恢复时间范围:开始时间 |   end_time | String | 否 | | cdp恢复时间范围:结束时间 |   snapshot_name | String | 否 | | 选择的快照名称 |   snapshot_size | String | 否 | | 选择的快照大小 |   snapshot_time | String | 否 | | 选择的快照时间 |   bk_path_policy | String | 否 | 0 | |   random_str | String | 否 | | |   ct_name_type | Number | 否 | | 文件名转换: 0:关闭文件名转换 1:默认常规-大小写保持不变 2:默认常规-转小写 3:默认常规-转大写 4:用户自定义 |   ct_name_str1 | String | 否 | | 去除前缀 or 匹配正则式 |   ct_name_str2 | String | 否 | | 去除后缀 or 替换规则 |   compress | String | 否 | | 压缩:0不开启;1,低;2,中;3,高 |   encrypt_switch | String | 否 | | 加密开关,0不开启,1开启 |   secret_key | String | 否 | | 加密key |

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
data Object
  code Number 0 @mock=0
  message String
ret Number 200 @mock=200

# 恢复-1 获取单个任务

SDK方法名:describeRepRecovery;

# URL

//rep/recovery/:uuid([A-F0-9-]+)

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
data Object
  code Number 0 @mock=0
  message String
  rep_recovery Object
    rc_method Number
    snapshot_name String c5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14 @mock=c5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14, 名称
    snapshot_size String 1.34 GB @mock=1.34 GB, 大小
    cdp_rc_method Number 0 @mock=0, CDP恢复类型
    rc_name String name @mock=name, 恢复名称
    user_uuid Array ['1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC','1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC'] @mock=$order('1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC','1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC'), 操作者用户名uuid +1
    oph_policy Number 0 @mock=0, 孤儿文件处理策略:0不处理,1删除
    rep_uuid String 7AD64D7A-7D1D-AC51-5DF1-29A58345A288 @mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id
    cdp_file String Baseline @mock=Baseline, 目录/文件对象
    bk_path Array , 备份路径,在复制规则目标节点上),6.2 rc_path
    wk_path Array , 工作路径(数据恢复合并目录)
    rc_uuid String 7AD64D7A-7D1D-AC51-5DF1-29A58345A288 @mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id
    cdp_position String 2017-11-17_15-30-40+-2 @mock=2017-11-17_15-30-40+-2, CDP位置(1 获取CDP日志列表接口返回)
    snapshot_time String 2017-11-17 17:24:14 @mock=2017-11-17 17:24:14, 时间
    src_wk_uuid String @mock=, 云版要用的
    wk_uuid String @pick(["kevin", "Jane", "Grey"]) @mock=@pick(["kevin", "Jane", "Grey"]), 工作机节点uuid
    cdp_time String 2018-04-24 13:43:26.0 @mock=2018-04-24 13:43:26.0, CDP时间
    rc_type Number 0 @mock=0, 恢复类型 0普通,1 CDP,2镜像
    cdp_op String backup @mock=backup, 操作
ret Number 200 @mock=200

# 恢复-1 修改任务

SDK方法名:updateRepRecovery;

# URL

//rep/recovery/:uuid([A-F0-9-]+)

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
rep_recovery Object
  cdp_position String 2017-11-17_15-30-40+-2
  rc_name String
  cdp_time String 2018-04-24 13:43:26.0
  wk_uuid String Jane
  snapshot_size String 1.34 GB
  cdp_rc_method Number 0
  snapshot_time String 2017-11-17 17:24:14
  rc_type Number 0
  snapshot_name String c5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14
  bk_path Array
  oph_policy Number 0
  cdp_file String Baseline
  cdp_op String backup
  wk_path Array
  rep_uuid String
  random_str String

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String

# 恢复-2 删除任务

SDK方法名:deleteRepRecovery;

# URL

//rep/recovery

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
rc_uuids Array ["11111111-1111-1111-1111-111111111111"] , *规则数组

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
ret Number 200 @mock=200
data Object
  code Number 0 @mock=0
  message String

# 恢复-2 获取任务列表(基本信息)

SDK方法名:listRepRecovery;获取列表详细入参说明详见【节点管理-获取节点列表】接口说明;

# URL

//rep/recovery

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
search_field String , 可选,搜索字段
search_value String , 可选,搜索字段对应值(可以模糊)
limit Number , 可选,不传就是全部
type Number , 0: 普通; 1: CDP; 2: 快照;
page Number , 可选,不传就是全部

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
ret Number 200 @mock=200
data Object
  message String
  info_list Array 10
    bk_uuid String 0DD4E727-70AB-62C6-BEB5-D012DFAE46E3 @mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 备机节点uuid
    username String @pick(["admin", "user"]) @mock=@pick(["admin", "user"]), 所有者
    wk_node_name String @pick(["Smith", "Will", "Nary"]) @mock=@pick(["Smith", "Will", "Nary"]), 工作机节点名
    bk_node_name String @pick(["kevin", "Jane", "Grey"]) @mock=@pick(["kevin", "Jane", "Grey"]), 备机节点名
    rc_type Number @pick([0, 1, 2]) @mock=@pick([0, 1, 2]), 恢复类型 0普通,1 CDP,2镜像
    rc_name String 恢复任务 @mock=恢复任务, 恢复名称
    cdp_time String 2017-11-17 17:24:14 @mock=2017-11-17 17:24:14, CDP时间点
    rep_name String 复制规则 @mock=复制规则, 复制规则名
    rc_uuid String 7AD64D7A-7D1D-AC51-5DF1-29A58345A288 @mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id
    snapshot_time String 2017-11-17 17:24:14 @mock=2017-11-17 17:24:14, 快照时间
    create_time Number 1511159470 @mock=1511159470, 创建时间 unix时间戳
    wk_uuid String 0DD4E727-70AB-62C6-BEB5-D012DFAE46E3 @mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 工作机节点uuid
    rep_uuid String 7AD64D7A-7D1D-AC51-5DF1-29A58345A288 @mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id
  total Number 100 @mock=100, 规则总数
  code Number 0 @mock=0
  count Number 10 @mock=10, 规则数量

# 恢复-2 任务操作

SDK方法名:{operate}RepRecovery

# URL

//rep/recovery/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String start start:启动;stop:停止;clear_finish:清除已完成任务
rc_type Number 1 , clear_finish 操作时必传,清除的 rc_type: 0普通,1 CDP,2镜像
rc_uuids Array ["11111111-1111-1111-1111-111111111111"] , start, stop 操作时必传,规则数组

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
ret Number 200 @mock=200
data Object
  code Number 0 @mock=0
  message String

# 恢复-2 任务状态

SDK方法名:listRepRecoveryStatus;

# URL

//rep/recovery/status

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rc_uuids Array ["11111111-1111-1111-1111-111111111111"] , 必传,uuid数组,页面加载第一次获取状态一个一个获取,之后是批量获取;

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
data Object
  status Array 2
    progress Number 0 @mock=0, 进度
    status String FINISH @mock=FINISH, 状态文字
    rc_uuid String 0DD4E727-70AB-62C6-BEB5-D012DFAE46E3 @mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 恢复规则id
    f_total Number 0 @mock=0, 文件总数
    total Number 100 @mock=100, 总大小
    cur Number , 当前大小
    f_cur Number , 当前文件数
  message String
  code Number 0 @mock=0
  count Number 0 @mock=0
ret Number 200 @mock=200

# CDP 恢复-1 获取CDP时间范围

SDK方法名:listRepRecoveryCdpRange;

# URL

//rep/recovery/cdp_range

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rc_method Number 0 恢复方式:

0:按规则来恢复 1:按数据目录来恢复 | rep_uuid | String | 否 | 051E0501-04EF-E1ED-0CEA-2E8751135CE4 | 规则id,rc_method为1,可不传 | bk_uuid | String | 否 | | 灾备机uuid,rc_method为0时,可不传 | data_path | String | 否 | | 恢复数据路径;rc_method为0时,可不传 |

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String @mock=
data Object
  code Number 0 @mock=0
  message String
  start_time String 2017-11-17 15:30:40 @mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的
  end_time String 2017-11-17 15:30:40 @mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的
ret Number 200 @mock=200

# CDP 恢复-1 获取CDP日志列表

SDK方法名:listRepRecoveryCdpLog;

# URL

//rep/recovery/cdp_log

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rc_method Number 0 恢复方式:

0:按规则来恢复 1:按数据目录来恢复 | rep_uuid | String | 否 | 051E0501-04EF-E1ED-0CEA-2E8751135CE4 | 复制规则id,rc_method为1,可不传 | bk_uuid | String | 否 | | 灾备机uuid,rc_method为0时,可不传 | data_path | String | 否 | | 恢复数据路径;rc_method为0时,可不传 | bk_path | Array | 否 | ["G:\cdp2\G\cdp"] | 备份路径数组,如:["E:\CDP2\E\test"] | direction | String | 否 | 0 | 模式,

0:默认值,用CDP恢复时间点过滤:返回用户选择的时间所在baseline区间的log;

1:获取当页最后一条的后面的日志,此时position 传最后一条的 position;

2:获取当页第一条的前面的日志,此时position 传第一条的 position;

3:用baseline时间点过滤:返回baseline时间的那条log;此时传bs_time,不传 cdp_time;

5:拓展模式:获取当页上一页的日志,除position其他参数不变;

6:拓展模式:类似文件树,一个log能点击展开,获取下层;不传 cdp_time;

7:拓展模式:获取当页下一页的日志,除position其他参数不变; | bs_time | String | 否 | 2019-01-02_16-35-21 | 用baseline时间点过滤专用,baseline时间,格式 Y-m-d_H-i-s | cdp_time | String | 否 | 2019-01-08 01:20:54 | 用CDP恢复时间点过滤专用,用户选的时间点,格式 Y-m-d H:i:s | position | String | 否 | 2019-11-17_15-30-40+-2 | 非用CDP恢复时间点过滤时传,log对象中的position值,格式:2019-11-17_15-30-40+-2;

拓展模式上一页时: position是当前扩展页面最顶端的一条记录的position;

拓展模式下一页时: position是当前扩展页面最底端的一条记录的position; | expand_offset | String | 否 | | 拓展模式专用,偏移量,传值为被点开那条的count (limit默认100,不用传) 用来获取下一层的log, 此时: expand_offset值为被点开的log的序号; position 为被点开那条的 position; cdp_time 不用传; direction 固定传6; | baseline_page | Number | 否 | | 用baseline时间点过滤专用,分页的页数,limit后端写死100 |

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  cdp_next Number 1 是否有上一页/下一页,0否1是;
  cdp_log Array
    cdp_file String Baseline 目录/文件对象
    count Number 1 数量
    cdp_time String 2017-11-17 15:30:40.0 时间
    position String 2017-11-17_15-30-40+-2
    cdp_op String backup 操作
  code Number 0
  message String [0] success
msg String
ret Number 200
Last Updated: 5/13/2020, 3:56:32 AM