文件恢复

November 23, 2021About 12 min

文件恢复

SDK类名:/rep/RepRecovery

恢复-1 新建任务

SDK方法名:createRepRecovery;

URL

//rep/recovery

Method

POST

Request

名称类型必选初始值简介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
  compress_switchNumber0传输压缩开关:0,1
  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_numNumber1并行任务数
  excl_pathArray排除路径
  bk_file_cryptNumber备端加密0,1
  snapshotNumber00:未使用快照, 1:使用快照

Response

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

恢复-1 获取单个任务

SDK方法名:describeRepRecovery;

URL

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

Method

GET

Request

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

Response

名称类型必选初始值简介Mock规则
msgString@mock=
dataObject
  codeNumber0@mock=0
  messageString
  rep_recoveryObject
    rc_methodNumber
    snapshot_nameStringc5809dd2-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_sizeString1.34 GB@mock=1.34 GB, 大小
    cdp_rc_methodNumber0@mock=0, CDP恢复类型
    rc_nameStringname@mock=name, 恢复名称
    user_uuidArray['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_policyNumber0@mock=0, 孤儿文件处理策略:0不处理,1删除
    rep_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id
    cdp_fileStringBaseline@mock=Baseline, 目录/文件对象
    bk_pathArray, 备份路径,在复制规则目标节点上),6.2 rc_path
    wk_pathArray, 工作路径(数据恢复合并目录)
    rc_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id
    cdp_positionString2017-11-17_15-30-40+-2@mock=2017-11-17_15-30-40+-2, CDP位置(1 获取CDP日志列表接口返回)
    snapshot_timeString2017-11-17 17:24:14@mock=2017-11-17 17:24:14, 时间
    src_wk_uuidString@mock=, 云版要用的
    wk_uuidString@pick(["kevin", "Jane", "Grey"])@mock=@pick(["kevin", "Jane", "Grey"]), 工作机节点uuid
    cdp_timeString2018-04-24 13:43:26.0@mock=2018-04-24 13:43:26.0, CDP时间
    rc_typeNumber0@mock=0, 恢复类型 0普通,1 CDP,2镜像
    cdp_opStringbackup@mock=backup, 操作
    data_ip_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288数据地址
    thread_numNumber1并行任务数
    excl_pathArray
    compress_switchNumber
    compressNumber
    snapshotNumber10:未使用快照方式,1:使用快照方式
retNumber200@mock=200

恢复-1 修改任务

SDK方法名:updateRepRecovery;

URL

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

Method

PUT

Request

名称类型必选初始值简介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_numNumber1并行任务数
  excl_pathArray
  compress_switchNumber0
  compressNumber0

Response

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

恢复-2 删除任务

SDK方法名:deleteRepRecovery;

URL

//rep/recovery

Method

DELETE

Request

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

Response

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

Response

名称类型必选初始值简介Mock规则
msgString@mock=
retNumber200@mock=200
dataObject
  messageString
  info_listArray10
    bk_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 备机节点uuid
    usernameString@pick(["admin", "user"])@mock=@pick(["admin", "user"]), 所有者
    wk_node_nameString@pick(["Smith", "Will", "Nary"])@mock=@pick(["Smith", "Will", "Nary"]), 工作机节点名
    bk_node_nameString@pick(["kevin", "Jane", "Grey"])@mock=@pick(["kevin", "Jane", "Grey"]), 备机节点名
    rc_typeNumber@pick([0, 1, 2])@mock=@pick([0, 1, 2]), 恢复类型 0普通,1 CDP,2镜像
    rc_nameString恢复任务@mock=恢复任务, 恢复名称
    cdp_timeString2017-11-17 17:24:14@mock=2017-11-17 17:24:14, CDP时间点
    rep_nameString复制规则@mock=复制规则, 复制规则名
    rc_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 规则id
    snapshot_timeString2017-11-17 17:24:14@mock=2017-11-17 17:24:14, 快照时间
    create_timeNumber1511159470@mock=1511159470, 创建时间 unix时间戳
    wk_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 工作机节点uuid
    rep_uuidString7AD64D7A-7D1D-AC51-5DF1-29A58345A288@mock=7AD64D7A-7D1D-AC51-5DF1-29A58345A288, 复制规则id
    can_delNumber1
    can_upNumber1
    cdp_rc_methodNumber10:异机恢复,1:备机恢复
    snapshotNumber10:未使用快照方式,1:使用快照方式
  totalNumber100@mock=100, 规则总数
  codeNumber0@mock=0
  countNumber10@mock=10, 规则数量

恢复-2 任务操作

SDK方法名:{operate}RepRecovery

URL

//rep/recovery/operate

Method

POST

Request

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

Response

名称类型必选初始值简介Mock规则
msgString@mock=
retNumber200@mock=200
dataObject
  codeNumber0@mock=0
  messageString

恢复-2 任务状态

SDK方法名:listRepRecoveryStatus;

URL

//rep/recovery/status

Method

GET

Request

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

Response

名称类型必选初始值简介Mock规则
msgString@mock=
dataObject
  statusArray2
    progressNumber0@mock=0, 进度
    statusStringFINISH@mock=FINISH, 状态文字
    rc_uuidString0DD4E727-70AB-62C6-BEB5-D012DFAE46E3@mock=0DD4E727-70AB-62C6-BEB5-D012DFAE46E3, 恢复规则id
    totalNumber100@mock=100, 总大小
    currentNumber, 当前大小
    f_totalNumber0@mock=0, 文件总数
    file_totalNumber同 f_total
    f_currentNumber,当前文件数
    file_currentNumber同 f_current
    blistNumber遍历未完成:
0:否;
1:是;
  messageString
  codeNumber0@mock=0
  countNumber0@mock=0
retNumber200@mock=200

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

SDK方法名:listRepRecoveryCdpRange;

URL

//rep/recovery/cdp_range

Method

GET

Request

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

Response

名称类型必选初始值简介Mock规则
msgString@mock=
dataObject
  codeNumber0@mock=0
  messageString
  start_timeString2017-11-17 15:30:40@mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的
  end_timeString2017-11-17 15:30:40@mock=2017-11-17 15:30:40, 时间范围,从cdp复制规则目标文件夹中获取到的
retNumber200@mock=200

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

SDK方法名:listRepRecoveryCdpLog;

URL

//rep/recovery/cdp_log

Method

GET

Request

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

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_timeString2019-01-02_16-35-21用baseline时间点过滤专用,baseline时间,格式 Y-m-d_H-i-s
cdp_timeString2019-01-08 01:20:54用CDP恢复时间点过滤专用,用户选的时间点,格式 Y-m-d H:i:s
positionString2019-11-17_15-30-40+-2非用CDP恢复时间点过滤时传,log对象中的position值,格式:2019-11-17_15-30-40+-2;

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

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

Response

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

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

SDK方法名:viewRepRecoveryData;

URL

//rep/recovery/rc_data_view

Method

POST

Request

名称类型必选初始值简介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规则
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规则
task_uuidString
node_uuidString

Response

名称类型必选初始值简介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规则
node_uuidString

Response

名称类型必选初始值简介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: 6/25/2022, 9:23:18 PM
Contributors: ganl