文件恢复

November 18, 2022About 13 min

文件恢复

SDK类名:/rep/RepRecovery

恢复-1 新建任务

SDK方法名:createRepRecovery;

URL

/rep/recovery

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
rep_recoveryObject
  rc_nameString
  rc_typeNumber0
  wk_uuidStringJane
  bk_uuidString
  wk_pathArray
  bk_pathArray
  bk_path_policyNumber复制规则路径映射类型(接口未用到)
  rc_path_policyNumber恢复任务 路径映射类型:
0:一对一;
1:多对一;
0
  snapshot_nameStringc5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14
  snapshot_sizeString1.34 GB
  snapshot_timeString2017-11-17 17:24:14
  oph_policyNumber0
  cdp_rc_methodNumber0
  cdp_positionString2017-11-17_15-30-40+-2
  cdp_timeString2018-04-24 13:43:26.0
  cdp_fileStringBaseline
  cdp_opStringbackup
  biz_grp_listArray[]
  cdpShowOneStringtrue
  cdpShowTwoStringfalse
  compress_switchNumber传输压缩开关:0,10
  compressNumber0
  ct_name_str1String''
  ct_name_str2String''
  ct_name_typeString0
  data_pathString''
  encrypt_switchString0
  encryptNumber传输加密类型:0-不加密 1-传输AES加密 2-SM4加密
  isShowTimeBooleanfalse
  merge_pathString''
  pointTimeString2020-10-19T06:57:59.399Z
  secret_keyString''
  snapTableArray
  start_timeString
  end_timeString''
  data_ip_uuidString
  traversing_syncNumber遍历时传输: 1-开启 0-不开启
  thread_numNumber并行任务数1
  excl_pathArray排除路径
  bk_file_cryptNumber备端加密0,1
  snapshotNumber0:未使用快照, 1:使用快照0
  auto_startNumber开关默认关闭(0),即默认恢复任务提交后不自动启动,需手动点击启动。
0:不自动启动,1:自动启动。
  is_remote_rcNumberCDP是否开启远程恢复
  storage_uuidString存储节点uuid
  storage_pool_uuidString存储池uuid

Response

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

恢复-1 获取单个任务

SDK方法名:describeRepRecovery;

URL

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

Method

GET

Request

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

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
dataObject
  codeNumber@mock=00
  messageString
  rep_recoveryObject
    rc_methodNumber
    snapshot_nameString@mock=c5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14, 名称c5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14
    snapshot_sizeString@mock=1.34 GB, 大小1.34 GB
    cdp_rc_methodNumber@mock=0, CDP恢复类型0
    rc_nameString@mock=name, 恢复名称name
    user_uuidArray@mock=$order('1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC','1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC'), 操作者用户名uuid['1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC','1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC']+1
    oph_policyNumber@mock=0, 孤儿文件处理策略:0不处理,1删除0
    rep_uuidString@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id7AD64D7A-7D1D-AC51-5DF1-29A58345A288
    cdp_fileString@mock=Baseline, 目录/文件对象Baseline
    bk_pathArray, 备份路径,在复制规则目标节点上),6.2 rc_path
    wk_pathArray, 工作路径(数据恢复合并目录)
    rc_uuidString@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id7AD64D7A-7D1D-AC51-5DF1-29A58345A288
    cdp_positionString@mock=2017-11-17_15-30-40+-2, CDP位置(1 获取CDP日志列表接口返回)2017-11-17_15-30-40+-2
    snapshot_timeString@mock=2017-11-17 17:24:14, 时间2017-11-17 17:24:14
    src_wk_uuidString@mock=, 云版要用的
    wk_uuidString@mock=@pick(["kevin", "Jane", "Grey"]), 工作机节点uuid@pick(["kevin", "Jane", "Grey"])
    cdp_timeString@mock=2018-04-24 13:43:26.0, CDP时间2018-04-24 13:43:26.0
    rc_typeNumber@mock=0, 恢复类型 0普通,1 CDP,2镜像0
    cdp_opString@mock=backup, 操作backup
    data_ip_uuidString数据地址7AD64D7A-7D1D-AC51-5DF1-29A58345A288
    thread_numNumber并行任务数1
    excl_pathArray
    compress_switchNumber
    compressNumber
    snapshotNumber0:未使用快照方式,1:使用快照方式1
    auto_startString0:不自动启动,1:自动启动
    rc_path_policyString恢复任务路径映射类型:
retNumber@mock=200200

恢复-1 修改任务

SDK方法名:updateRepRecovery;

URL

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

Method

PUT

Request

名称类型必选简介Mock初始值Mock规则
rep_recoveryObject
  cdp_positionString2017-11-17_15-30-40+-2
  rc_nameString
  cdp_timeString2018-04-24 13:43:26.0
  wk_uuidStringJane
  snapshot_sizeString1.34 GB
  cdp_rc_methodNumber0
  snapshot_timeString2017-11-17 17:24:14
  rc_typeNumber0
  snapshot_nameStringc5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14
  bk_pathArray
  oph_policyNumber0
  cdp_fileStringBaseline
  cdp_opStringbackup
  wk_pathArray
  rep_uuidString
  random_strString
  thread_numNumber并行任务数1
  excl_pathArray
  compress_switchNumber0
  compressNumber0
  auto_startNumber0:不自动启动,1:自动启动0

Response

名称类型必选简介Mock初始值Mock规则
retNumber200
msgString
dataObject
  codeNumber0
  messageString

恢复-2 删除任务

SDK方法名:deleteRepRecovery;

URL

/rep/recovery

Method

DELETE

Request

名称类型必选简介Mock初始值Mock规则
rc_uuidsArray, *规则数组["11111111-1111-1111-1111-111111111111"]
forceNumber1 - 强制删除 0 - 非强制删除

Response

名称类型必选简介Mock初始值Mock规则
msgString
dataObject
  codeNumber11110001
  messageString
  fail_listArray
    codeNumber11110001
    messageString[-1] 离线
    rc_uuidStringE28184D8-869B-BF56-A77C-3CC835FAAC34
    rc_nameStringtest2
  success_listArray
    codeNumber11110001
    messageString[0] success
    rc_uuidStringEA8184D8-869B-BF56-A77C-3CC835FAAC34
    rc_nameStringtest
retNumber200

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

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

URL

/rep/recovery

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
search_fieldString, 可选,搜索字段
search_valueString, 可选,搜索字段对应值(可以模糊)
limitNumber, 可选,不传就是全部
typeNumber, 0: 普通; 1: CDP; 2: 快照;
pageNumber, 可选,不传就是全部

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
retNumber@mock=200200
dataObject
  messageString
  info_listArray10
    bk_uuidString@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 备机节点uuid0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    usernameString@mock=@pick(["admin", "user"]), 所有者@pick(["admin", "user"])
    wk_node_nameString@mock=@pick(["Smith", "Will", "Nary"]), 工作机节点名@pick(["Smith", "Will", "Nary"])
    bk_node_nameString@mock=@pick(["kevin", "Jane", "Grey"]), 备机节点名@pick(["kevin", "Jane", "Grey"])
    rc_typeNumber@mock=@pick([0, 1, 2]), 恢复类型 0普通,1 CDP,2镜像@pick([0, 1, 2])
    rc_nameString@mock=恢复任务, 恢复名称恢复任务
    cdp_timeString@mock=2017-11-17 17:24:14, CDP时间点2017-11-17 17:24:14
    rep_nameString@mock=复制规则, 复制规则名复制规则
    rc_uuidString@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id7AD64D7A-7D1D-AC51-5DF1-29A58345A288
    snapshot_timeString@mock=2017-11-17 17:24:14, 快照时间2017-11-17 17:24:14
    create_timeNumber@mock=1511159470, 创建时间 unix时间戳1511159470
    wk_uuidString@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 工作机节点uuid0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    rep_uuidString@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id7AD64D7A-7D1D-AC51-5DF1-29A58345A288
    can_delNumber1
    can_upNumber1
    cdp_rc_methodNumber0:异机恢复,1:备机恢复1
    snapshotNumber0:未使用快照方式,1:使用快照方式1
  totalNumber@mock=100, 规则总数100
  codeNumber@mock=00
  countNumber@mock=10, 规则数量10

恢复-2 任务操作

SDK方法名:{operate}RepRecovery

URL

/rep/recovery/operate

Method

POST

Request

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

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
retNumber@mock=200200
dataObject
  codeNumber@mock=00
  messageString

恢复-2 任务状态

SDK方法名:listRepRecoveryStatus;

URL

/rep/recovery/status

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
rc_uuidsArray, 必传,uuid数组,页面加载第一次获取状态一个一个获取,之后是批量获取;["11111111-1111-1111-1111-111111111111"]
force_refreshNumber点击操作栏刷新按钮必传,下发1,表示从rpc获取;其他情况不传

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
dataObject
  statusArray2
    progressNumber@mock=0, 进度0
    statusString@mock=FINISH, 状态文字FINISH
    rc_uuidString@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 恢复规则id0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    totalNumber@mock=100, 总大小100
    currentNumber, 当前大小
    f_totalNumber@mock=0, 文件总数0
    file_totalNumber同 f_total
    f_currentNumber,当前文件数
    file_currentNumber同 f_current
    blistNumber遍历未完成:
0:否;
1:是;
  messageString
  codeNumber@mock=00
  countNumber@mock=00
retNumber@mock=200200

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

SDK方法名:listRepRecoveryCdpRange;

URL

/rep/recovery/cdp_range

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
rc_methodNumber恢复方式:
0:按规则来恢复
1:按数据目录来恢复
0
rep_uuidString规则id,rc_method为1,可不传051E0501-04EF-E1ED-0CEA-2E8751135CE4
bk_uuidString灾备机uuid,rc_method为0时,可不传
data_pathString恢复数据路径;rc_method为0时,可不传

Response

名称类型必选简介Mock初始值Mock规则
msgString@mock=
dataObject
  codeNumber@mock=00
  messageString
  start_timeString@mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的2017-11-17 15:30:40
  end_timeString@mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的2017-11-17 15:30:40
retNumber@mock=200200

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

SDK方法名:listRepRecoveryCdpLog;

URL

/rep/recovery/cdp_log

Method

GET

Request

名称类型必选简介Mock初始值Mock规则
rc_methodNumber恢复方式:
0:按规则来恢复
1:按数据目录来恢复
0
rep_uuidString复制规则id,rc_method为1,可不传051E0501-04EF-E1ED-0CEA-2E8751135CE4
bk_uuidString灾备机uuid,rc_method为0时,可不传
data_pathString恢复数据路径;rc_method为0时,可不传
bk_pathArray备份路径数组,如:["E:\CDP2\E\test"]["G:\cdp2\G\cdp"]
directionString模式,

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其他参数不变;
0
bs_timeString用baseline时间点过滤专用,baseline时间,格式 Y-m-d_H-i-s2019-01-02_16-35-21
cdp_timeString用CDP恢复时间点过滤专用,用户选的时间点,格式 Y-m-d H:i:s2019-01-08 01:20:54
positionString非用CDP恢复时间点过滤时传,log对象中的position值,格式:2019-11-17_15-30-40+-2;

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

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

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  cdp_nextNumber是否有上一页/下一页,0否1是;1
  cdp_logArray
    cdp_fileString目录/文件对象Baseline
    countNumber数量1
    cdp_timeString时间2017-11-17 15:30:40.0
    positionString2017-11-17_15-30-40+-2
    cdp_opString操作backup
  codeNumber0
  messageString[0] success
msgString
retNumber200

恢复 - CDP在线查看任意时间点数据

SDK方法名:viewRepRecoveryData;

URL

/rep/recovery/rc_data_view

Method

POST

Request

名称类型必选简介Mock初始值Mock规则
rep_recoveryObject
  rc_nameString
  rc_typeNumber0
  wk_uuidStringJane
  bk_uuidString
  wk_pathArray
  bk_pathArray
  bk_path_policyString
  snapshot_nameStringc5809dd2-e8be-4389-ac0d-0a657ff94da0_snap_2017-11-17_17-24-14
  snapshot_sizeString1.34 GB
  snapshot_timeString2017-11-17 17:24:14
  oph_policyNumber0
  cdp_rc_methodNumber0
  cdp_positionString2017-11-17_15-30-40+-2
  cdp_timeString2018-04-24 13:43:26.0
  cdp_fileStringBaseline
  cdp_opStringbackup
  biz_grp_listArray[]
  cdpShowOneStringtrue
  cdpShowTwoStringfalse
  compressString0
  ct_name_str1String''
  ct_name_str2String''
  ct_name_typeString0
  data_pathString''
  encrypt_switchString0
  isShowTimeBooleanfalse
  merge_pathString''
  pointTimeString2020-10-19T06:57:59.399Z
  secret_keyString''
  snapTableArray
  start_timeString
  end_timeString''
  data_ip_uuidString

Response

名称类型必选简介Mock初始值Mock规则
dataObject
  codeNumber0
  messageString[0] success
  task_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288
  oph_pathString/data/oph
msgString
retNumber200

恢复-状态 在线查看任意时间点数据专用

SDK方法名:listRcpRecoveryDataViewStatus;

URL

/rep/recovery/rc_data_view_status

Method

GET

Request

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

Response

名称类型必选简介Mock初始值Mock规则
msgString
dataObject
  messageString
  codeNumber0
  statusObject
    progressNumber0
    statusStringFINISH
    rc_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3
    f_totalNumber0
    totalNumber100
    curNumber1
    f_curNumber1
retNumber200

恢复 - 孤儿文件列表-CDP时间点数据

SDK方法名:listCDPRcData;

参数请参考https://apiref.info2soft.com/organization/repository/editor?id=23&itf=462

URL

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

Method

GET

Request

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

Response

名称类型必选简介Mock初始值Mock规则
msgString
dataObject
  codeNumber0
  orphan_listArray10
    nameString@name
    timeString1998-09-20 10:25:23
    is_dirBoolean1
    sizeNumber7.495474676667337e15
  separatorString/
  messageString[0] 操作成功
  rep_oph_pathString/test/oph_path/
retNumber200
Last update: 11/18/2022, 3:56:21 PM
Contributors: ganl