# 虚拟化支持

SDK类名:/vp/VirtualizationSupport //

# Dashboard - 虚机规则 成功率

统计报表

SDK方法名:describeVpRuleRate

# URL

//dashboard/vp_rule

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
uuid String 可选,用虚机规则过滤
type String I2VP_BK 可选,用任务类型过滤,

'I2VP_BK': 备份规则, 'I2VP_RC':恢复规则, 'I2VP_MV':迁移规则, 'I2VP_PT':复制规则, 'I2VP_OR':演练规则, | wk_uuid | String | 否 | F28BA5A6-4FF9-E596-4371-1ED203D45143 | 可选,用虚拟平台过滤 | mode | String | 否 | month | 必传,显示近 week | month | year 的统计 | group_uuid | String | 否 | | 可选, 用组规则过滤 |

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  success_num 1-100 Number 23 当前条件下总...
  failed_num 1-100 Number 当前条件下总失败数
  total_num 1-100 Number 2 当前条件下总...
  trans_data_num String 1.27MB 当前条件下总...
  unread_err_num 0-100 Number 2 当前条件下总...
  info_list Array 30
    time String 11-26 月/日 +1
    success_num 0-100 Number 23 成功任务数量
    failed_num 1-100 String
    total_num 0-100 Number 2 总任务数量
    trans_data_num String 1.27MB 传输数据大小
    unread_err_num Number 2 未查看错误数
  all_success_num 1-100 Number 总...
  all_failed_num 1-100 Number 总失败数
  all_total_num 1-100 Number 总...
  all_trans_data_num String 2GB 总...
  all_unread_err_num 0-100 Number 总...

# Dashboard - 虚机 保护率

统计报表

SDK方法名:describeVmProtectRate

# URL

//dashboard/vp_vm

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
vp_uuid String F28BA5A6-4FF9-E596-4371-1ED203D45143 可选(不传获取所有)

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  vm_total Number 21 总...
  vm_protected Number 12 总...
  info_list Array
    vp_name String daaaa 虚拟平台名称
    vm_total Number 21 虚机总量
    vm_protected Number 12 虚机总量
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74 虚拟平台uuid

# ------- 虚拟平台 -------

# URL

//dash0

# Method

GET

# Request

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

# Response

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

# 虚拟平台 - 新建

SDK类名:/vp/VirtualizationSupport; SDK方法名:createVp

# URL

//vp/platform

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
comment String 说明
config_addr String 192.168.72.75 Npsvr ip地址
config_port Number 58083 Npsvr 端口
os_pwd String 12345678 平台密码
os_usr String root 平台用户名
vp_addr String 192.168.88.107 平台ip地址
vp_name String test 平台名称
vp_type Number 0 平台类型:0:Vmware;1:Hyper-V,2:KVM
bind_lic_list Array 绑定的软件许可列表,实时生成,不入库
biz_grp_list Array 分组关系, 当前资源绑定的组uuid列表;
use_credential Number 0 是否使用凭据:

0:不使用 1:使用 | cred_uuid | String | 否 | | 可选,使用凭据时,凭据的uuid | is_drill | Number | 否 | | 是否配置演练平台,0,否;1,是 | drill_config | Object | 否 | | 演练配置,is_drill为1时,必传 |   proxy_name | String | 否 | | 代理网关名称 |   proxy_ip | String | 否 | | 代理网关ip |   proxy_mask | String | 否 | | 代理网关子网掩码 |   proxy_gw | String | 否 | | 代理网关的网关 |   new_hostname | String | 否 | | 主机名 |   new_ds | String | 否 | | 数据存储 |   new_dc | String | 否 | | 数据中心 |   new_dcmor | String | 否 | | 目标平台数据中心托管对象值 |   network_name | String | 否 | | 目标平台网卡名称 |   network_id | String | 否 | | 目标平台网卡ID |

# Response

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

# 虚拟平台 - 获取单个

SDK方法名:describeVp

# URL

//vp/platform/:uuid([A-F0-9-]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功
  vp_platform Object
    username String admin
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vp_name String 88.107
    user_uuid String 1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC
    vp_addr String 192.168.88.107
    os_usr String root
    os_pwd String 12345678
    config_addr String 192.168.72.75
    config_port String 58083
    comment String
    create_time String 1533871285
    random_str String AB790B28-62D6-7236-612F-65D73C80036F
    vp_type Number 0
    biz_grp_list Array ["C58E71F8-4482-4A71-6E5A-46EAF7C45177","D1008DA9-BFD6-FC6A-E795-B66B74F24CC5","030B0DED-10C8-08C7-1218-5BA30A042527"] 分组关系, 当前资源绑定的组uuid列表;
    bind_lic_list Array ["C58E71F8-4482-4A71-6E5A-46EAF7C45177","D1008DA9-BFD6-FC6A-E795-B66B74F24CC5","030B0DED-10C8-08C7-1218-5BA30A042527"]
    cred_uuid String 上一次添加/编辑,使用凭据的uuid
    is_drill Number 是否配置演练平台,0,否;1,是
    drill_config Object 演练配置
      proxy_name String 代理网关名称
      proxy_ip String 代理网关ip
      proxy_mask String 代理网关子网掩码
      proxy_gw String 代理网关的网关
      new_hostname String 主机名
      new_ds String 数据存储
      new_dc String 数据中心
      new_dcmor String 目标平台数据中心托管对象值
      network_name String 目标平台网卡名称
      network_id String 目标平台网卡ID

# 虚拟平台 - 修改

SDK方法名:modifyVp

# URL

//vp/platform/:uuid([A-F0-9-]+)

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
comment String 说明
config_addr String 192.168.72.75 Npsvr ip地址
config_port Number 58083 Npsvr 端口
os_pwd String 12345678 平台密码
os_usr String root 平台用户名
vp_addr String 192.168.88.107 平台ip地址
vp_name String test1 平台名称
vp_type Number 0 平台类型:0:Vmware;1:Hyper-V,2:FusionShpere
bind_lic_list Array 绑定的软件许可列表,实时生成,不入库
biz_grp_list Array 分组关系, 当前资源绑定的组uuid列表;
random_str String 11111111-1111-1111-1111-111111111111
use_credential Number 0 是否使用凭据:

0:不使用 1:使用 | cred_uuid | String | 否 | | 可选,使用凭据时,凭据的uuid | is_drill | Number | 否 | | 是否配置演练平台,0,否;1,是 | drill_config | Object | 否 | | 演练配置 |   proxy_name | String | 否 | | 代理网关名称 |   proxy_ip | String | 否 | | 代理网关ip |   proxy_mask | String | 否 | | 代理网关子网掩码 |   proxy_gw | String | 否 | | 代理网关的网关 |   new_hostname | String | 否 | | 主机名 |   new_ds | String | 否 | | 数据存储 |   new_dc | String | 否 | | 数据中心 |   new_dcmor | String | 否 | | 目标平台数据中心托管对象值 |   network_name | String | 否 | | 目标平台网卡名称 |   network_id | String | 否 | | 目标平台网卡ID |

# Response

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

# 虚拟平台 - 列表

获取平台规则列表,获取列表详细入参说明详见【节点管理-获取节点列表】接口说明;

SDK方法名:listVp

# URL

//vp/platform

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page Number 1 可选
limit Number 10 可选

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200 @mock=200, http code
msg String 提示信息
data Object api content
  code Number 0 @mock=0
  total Number 总量数量
  info_list Array
    os_usr String @name 平台用户名
    vp_type Number 平台类型:0:Vmware;1:h3c;2:openstack 0-2
    vp_uuid String @guid 平台uuid
    username String @name 所有者
    config_addr String @ip 管理地址
    config_port Number 58083 端口
    os_pwd String !@#QWEASD 平台密码
    comment String @word 备注
    vp_name String @word 平台名称
    vp_addr String @ip 平台地址
    random_str String @guid 随机字符串,修改锁,修改则原样传回即可
    create_time Number 1515568566 创建时间
    user_uuid String @guid
    is_drill Number 是否配置演练平台,0,否;1,是
  message String 错误信息提示

# 虚拟平台 - 状态

获取平台规则状态

SDK方法名:listVpStatus

# URL

//vp/platform/status

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功
  status Array
    status String @pick(["ONLINE", "OFFLINE", "NUKNOW", "ERR_TKN"]) ONLINE:在线;OFFLINE:离线;UNKOWN:未知;ERR_TKN:RPC 调用失败;
    vp_uuid String @guid
    data_agent_version String 数据代理版本
    drill_status Number 演练状态,“0”为部署完成,“1”为未部署,“2”为部署中 2

# 虚拟平台 - 操作

SDK方法名:updateDataAgentVp;

# URL

//vp/platform/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String update_data_agent update_data_agent:更新数据代理版本
vp_uuids Array ["11111111-1111-1111-1111-111111111111"]

# Response

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

# 虚拟平台 - 删除

删除虚拟平台,支持批量删除

SDK方法名:deleteVp

# URL

//vp/platform

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
vp_uuids Array ["11111111-1111-1111-1111-111111111111"] 要删的平台uuid数组

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String , 提示
data Object , api content
  code Number 0 @mock=0
  message String , 错误信息提示
  success_list Array
    code Number
    message String
    vp_uuid String
    vp_name String
  fail_list Array
    code Number
    message String
    vp_uuid String
    vp_name String
ret Number 200 @mock=200, http code

# 虚拟平台 - 查 虚机列表

获取虚机列表,URL 参数为 vp_uuid

SDK方法名:listVM

# URL

//vp/platform/:uuid([A-F0-9-]+)/vm

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
path String / (*必填)存储路径,(根目录“/”) 当平台为esxi主机时,可以设置HostAgent,直接获取所有虚机列表
force_rpc Number 0 可选,不传则默认0,1: 强制从RPC获取最新内容(且search_name无效);0:从数据库缓存读取
search_name String 可选,搜索虚机列表缓存中的虚机名称,不搜不传,传则path无效,且force_rpc不能为1

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功
  vm_list Array 12
    name String Fedora 64bit_crosscompile 虚机名称或目录名称
    tmp_type String 5 类别 2:目录 5:虚机名
    time String 保留字段
    size String 保留字段
    morval String 20 客户端对应引用名
    host_ip String 192.168.88.107 主机IP
    exist_rule_type Number @int(0,3) 规则类型 1:备份;2:迁移;3:复制;4:恢复;
    is_dir String 0 0:虚机名 1:目录
    cpu String cpu数
    core_per_sock String 单个cpu核数
    mem_mb String 内存大小
    os_type Number 操作系统:

0:linux; 1:windows |

# 虚拟平台 - 查 平台属性

URL中参数:vp_uuid

SDK方法名:describeVpAttribute

# URL

//vp/platform/:uuid([A-F0-9-]+)/info

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200 @mock=200, http code
msg String 错误信息
data Object
  message String 错误信息提示
  code Number 0 @mock=0
  api_version String 5.5 API版本,如6.0
  ip String @ip 虚拟平台IP
  api_type String HostAgent API类型,如HostAgent

# 虚拟平台 - 查 备机上备份列表(RC)1

SDK方法名:listBakVer;URL中参数:vp_uuid;

# URL

//vp/platform/:uuid([A-F0-9-]+)/bak_ver

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
bk_path String H:\vp_bk5\test2_BAK_vm-11880_192.168.88.22\ 路径
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 备机节点uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
data Object
  list Array 2
    size Number 18446744073709551493
    time String 2018-09-04_14-26-22 备份时间点
    backup_rule_uuid String @guid() 备份点uuid
    is_root String
    data_type String 备份数据类型:o:全备,i:增量,d:差异,f:整盘,n:获取类型失败
  code Number 0
  message String
  vp_type Number
  instant_recovery Number
msg String

# 虚拟平台 - 查 备份点信息(RC)2

获取备份点信息;URL中参数:vp_uuid;

返回字段详细说明参考:https://apiref.info2soft.com/organization/repository/editor?id=22&mod=102&itf=671;

SDK方法名:listBakVerInfo

# URL

//vp/platform/:uuid([A-F0-9-]+)/bak_ver_info

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F (*必填)备机ID
bk_path String H:\vp_bk5\testRC1_BAK_99_192.168.85.139 (*必填)备机规则备份路径
group_uuid String 可选,获取组时必传,用来获取组,备份规则group_uuid,获取此组下所有vm的list
time String 2019-01-07_13-10-45 可选,获取单个时必传,用来获取单个,用户选择的时间点,格式 2018-10-25_16-08-12
ver_sig String A59DB76E-E33D-4E22-BB08-59723B1FC539 可选,获取单个时必传,用来获取单个,配置信息ID;备份列表返回的 backup_rule_uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 11113561
  message String [11113561] 无法读取该文件,请检查路径是否正确;
  success_list Array
    code Number 0
    message String [0] 操作成功。
    anno String
    bk_path String E:\backup\7443_BAK_56_172.20.77.108\
    cdrom String 4,56705130-3e6cb0c0-81df-ecb1d7569443,3,3002,201,0
    controller String 1,1000,100,3,0,1,noSharing,0
    core_per_sock String 2
    cpu String 2
    dc String ha-datacenter
    disk String 2,[datastore1] rhel5.8_64bit_move11/rhel5.8_64bit-000001.vmdk,persistent,1,16384,2000,1000,0,52 6d 0e f6 53 04 d3 df-b8 a7 24 95 27 f8 37 f2/16,0,0
    disk_count String 1
    ds String datastore1
    firmware String
    floppy String 5,2,8000,400,0,
    guest_os_id String rhel5_64Guest
    hostname String localhost.localdomain
    nic String 3,00:0c:29:0f:50:3c,5,4000,100,7,1,VM Network
    nic_count String 1
    storeMem String 0
    valid_data Number 9897984
    vp_uuid String DA23D117-9127-D132-0A10-BACBB385B8B3
    alt_name String
    chg_id String 52 6d 0e f6 53 04 d3 df-b8 a7 24 95 27 f8 37 f2/16
    vm_ref String 56
    vm_version String vmx-11
    mem_mb String 1024
    vm_name String rhel5.8_64bit_move11
    dynamic_mem Number 0
    disk_list Array
      id String 2000
      disk_path String rhel5.8_64bit_move11/
      disk_name String rhel5.8_64bit-000001.vmdk
      total String 16384
    ver_sig String F9A692FF-4707-438C-B666-8FDB4C8B523B
    time String 2019-08-01_10-44-49
    cpuVirtualization String
  fail_list Array
    code Number 11113561
    message String [11113561] 无法读取该文件,请检查路径是否正确;
  info Object
    anno String
    bk_path String E:\backup\7443_BAK_56_172.20.77.108\
    cdrom String 4,56705130-3e6cb0c0-81df-ecb1d7569443,3,3002,201,0
    controller String 1,1000,100,3,0,1,noSharing,0
    core_per_sock String 2
    cpu String 2
    dc String ha-datacenter
    disk String 2,[datastore1] rhel5.8_64bit_move11/rhel5.8_64bit-000001.vmdk,persistent,1,16384,2000,1000,0,52 6d 0e f6 53 04 d3 df-b8 a7 24 95 27 f8 37 f2/16,0,0
    disk_count String 1
    ds String datastore1
    firmware String
    floppy String 5,2,8000,400,0,
    guest_os_id String rhel5_64Guest
    hostname String localhost.localdomain
    nic String 3,00:0c:29:0f:50:3c,5,4000,100,7,1,VM Network
    nic_count String 1
    storeMem String 0
    valid_data Number 9897984
    vp_uuid String DA23D117-9127-D132-0A10-BACBB385B8B3
    alt_name String
    chg_id String 52 6d 0e f6 53 04 d3 df-b8 a7 24 95 27 f8 37 f2/16
    vm_ref String 56
    vm_version String vmx-11
    mem_mb String 1024
    vm_name String rhel5.8_64bit_move11
    dynamic_mem Number 0
    disk_list Array
      id String 2000
      disk_path String rhel5.8_64bit_move11/
      disk_name String rhel5.8_64bit-000001.vmdk
      total String 16384
    ver_sig String F9A692FF-4707-438C-B666-8FDB4C8B523B
    time String 2019-08-01_10-44-49
    cpuVirtualization String

# 虚拟平台 - 查 数据存储下文件列表(RC)3

对应页面:工作目录;URL中参数:vp_uuid

SDK方法名:listDatastoreFile

# URL

//vp/platform/:uuid([A-F0-9-]+)/datastore_file

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
dir_file String / 文件路径("/":查询根目录所有文件),传空返回/
ds_name String datastore107(1) (*必填)数据存储名称
dc_name String ha-datacenter (*必填)数据中心名称

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  message String 错误信息提示
  code Number 0
  list Array 2
    path String /temp 文件路径
    name String Datacenter_@int(10,50) 文件名称
msg String 错误信息
ret Number 200 @mock=200, http code

# 虚拟平台 - 查 数据中心列表(MOVE/REP)1

获取数据中心列表,dcmor 数据中心标识再此npsvr 中返回

SDK方法名:listDatacenter;URL中参数:vp_uuid;

# URL

//vp/platform/:uuid([A-F0-9-]+)/datacenter

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  list Array
    dc_mor String @guid() 数据中心标识
    dc_name String @name 数据中心

# 虚拟平台 - 查 数据中心主机列表 (MOVE/REP)2

通过数据中心获取主机列表

SDK方法名:listDatacenterHost;URL中参数:vp_uuid;

# URL

//vp/platform/:uuid([A-F0-9-]+)/datacenter_host

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
dc_name String ha-datacenter 可选,VMware传, 数据中心
dc_mor String ha-datacenter 可选,VMware传, 数据中心标识

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  list Array ['@name'] 主机列表,如"list":["localhost.localdomain"]
  message String , 错误信息提示
  code Number 0 @mock=0
msg String , 错误信息
ret Number 200 @mock=200, http code

# 虚拟平台 - 查 存储列表 (MOVE/REP/RC)3

根据主机名称获取存储信息

SDK方法名:listDatastore;URL中参数:vp_uuid;

# URL

//vp/platform/:uuid([A-F0-9-]+)/datastore

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
host_name String dev-esxi.6.6.6 必传,主机名
path String / 可选,Hyper-V 传,首次传 /

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  code Number 0
  message String
  list Array VMware数据存储列表
    name String 存储名称
    total String 总大小
    free String 可用空间
    type String 存储类型
  dir_list Array Hyper-V, 数据存储列表
    name String @word 分区名称
    volume_total_size String @integer(100) 分区容量
    volume_free_size String @integer(100) 分区剩余容量
ret Number 200

# 虚拟平台 - 查 存储信息 (MOVE/REP/RC)4

通过存储名称获取存储信息

SDK方法名:listDatastoreInfo;URL中参数:vp_uuid;

# URL

//vp/platform/:uuid([A-F0-9-]+)/datastore_info

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
ds_name String datastore107(1) , 存储名称

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  message String
  total String 924,00 总共大小
  store_type String VMFS 存储类型
  code Number 0
  free String 21.00 剩余空间大小

# 虚拟平台 - 创建存储目录(MOVE/REP/RC)

SDK方法名:createDatastore

# URL

//vp/platform/:uuid([A-F0-9-]+)/datastore

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
host_name String dev-esxi.6.6.6 主机名称
path String C:\abc\ 需要创建的目录路径。如果是HyperV平台,则为一般的windows目录路径,如C:\abc\。如果是vmware平台,则需要带上数据存储,如 [datastore1] vmname/newfolder。

# Response

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

# 虚拟平台 - 查 虚机磁盘 (MOVE/REP)

通过虚机ID获取虚机上的磁盘列表,URL中参数:vp_uuid; SDK方法名:listVmDisk;

# URL

//vp/platform/:uuid([A-F0-9-]+)/vm_disk

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
vm_ref String 123 虚机ID

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  list Array
    id String uuid
    file_name String [datastore1 (1)] 测试11_临时测试11/测试11_临时测试11_5-000002.vmdk 磁盘完整路径, VMware如: [datastore1 (1)] 测试11_临时测试11/测试11_临时测试11_5-000002.vmdk; Hyper-V如: C:\Hyperv\a.vhdx
    disk_name String 测试11_临时测试11_5-000002.vmdk 切下来的磁盘名称
    size String 2GB 格式化后的大小

# 虚拟平台 - 查 虚机网卡

URL中参数:vp_uuid; SDK方法名:listNetwork;

# URL

//vp/platform/:uuid([A-F0-9-]+)/network

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
host_name String (选填) host名称

# Response

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

# 虚拟平台 - 演练配置

SDK方法名:drilConfigInfo;

# URL

//vp/platform/drill_config

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
config_addr String 管理地址
config_port Number 管理地址通讯端口
vp_addr String 虚拟平台IP
vp_type String 平台类型 0:VMware 1:Hyper-V 2:FusionSphere ...
响应内容
use_credential String
cred_uuid String
os_usr String
os_pwd String

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  datacenters Array
    dcmor String
    dcname String
    hosts Array
      name String
      hostId String
      datastores Array
        name String
        type String
        total String
        free String
      networks Array
        network_name String
        network_id String

# 虚拟平台 - 导入虚机 IP映射,模板下载

SDK方法名:dl

# URL

//dl

# Method

GET

# Request

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

# Response

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

# 虚拟平台 - 导入虚机 IP映射

SDK方法名:importVmIpMapping;

# URL

//vp/platform/batch_vm_ip_mapping

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
vp_uuid String 虚拟平台uuid

# Response

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

# ------- 虚机备份 -------

# URL

//dash1

# Method

GET

# Request

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

# Response

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

# 虚机备份 - 新建

添加备份规则

SDK方法名:createVpBackup

# URL

//vp/backup

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_type Number 0 规则类型:0:普通规则;10:模板;
rule_name String vp_bk cky *必填 规则名称
vp_uuid String C6335F62-2565-1957-4BB9-587F2FF46B00 虚拟平台uuid(普通任务必填,模板传空串)
vm_list Array 虚机信息(普通任务必填,模板传空数组)
  vm_name String 测试5
  vm_ref String vm-10811
  new_vm_name String 虚机名称_2020-04-29 新虚机名称
  scripts_type Number 开启验证时:
(*必填)脚本验证的方式,0表示验证ping方法验证,1表示tcp端口验证测试,2表示脚本验证方式。2表示脚本验证方式目前暂存以后实现。默认值为0
  scripts String 开启验证时:
验证内容
  cpu String 开启验证时:
cpu数
  core_per_sock String 开启验证时:
单个cpu核数
  mem_mb String 开启验证时:
内存大小
  os_type Number 开启验证时:
操作系统: 0:linux; 1:windows
biz_grp_list Array 业务分组:组uuid数组
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 备机uuid
bk_path String E:\vp_bk5\ *必填 备份路径
quick_back Number 1 快速备份;1:开;0:关;
lan_free Number 23 lan free 传输;31:开;23:关;
del_bkup_data Number 0 删除备份数据;1:开;0:关;
quiet_snap Number 0 静默快照;1:开;0:关;
mem_snap Number 0 内存快照;0关1开
compress Number 0 是否开启压缩,0关1开
instant_recovery Number 是否可以瞬时恢复,0关1开
bkup_policy Number 1 备份策略,0:一次性(定时),1:周期(循环);
bkup_one_time Number 1546831899 备份策略 - 一次性,执行时间,格式:linux时间戳,非一次型传0
bkup_schedule Array 备份策略 - 周期任务;非周期任务则传空数组;
  limit Number 3 数据保留期限(天)
  sched_day Array [1, 2, 3] 备份策略 - 周期任务 - 哪几天,num数组; 【每月】、【每周】专用参数;取值:每月:1-31;每周:0-6(周日-周六)
  sched_time Array ["00:00"] 备份策略 - 周期任务 - 运行时间;str数组;取值格式HH:mm
  sched_every Number 0 备份策略 - 周期任务 - 策略类型;0:每天;1:每周:2:每月;
  bkup_type Number 0 备份策略 - 周期任务 - 备份方式;0:全备,1:增量,2:差异
band_width String -1 带宽控制,默认为空不启用 格式: 星期几:时间点-带宽;时间点-带宽,星期几:时间点-带宽;时间点-带宽;星期:0-6:日-六;时间点:0-23(0代表0点-0:59分);带宽:0-1000,单位8k;成品串实例:
random_str String 11111111-1111-1111-1111-111111111111 新建不传,sdk测试用
add_drill Number 是否开启认证:

0:否, 1:是, 默认否 | auto | Number | 否 | 0 | 开启验证时必传: 自动验证: 自动:1,手动:0; | drill_plat_uuid | String | 否 | | 开启验证时传: 目标平台的vp_uuid | drill_datacenter | String | 否 | | 开启验证时传: 数据中心 | drill_new_dc_mor | String | 否 | | 开启验证时传: 目标平台数据中心托管对象值 | drill_hostname | String | 否 | | 开启验证时传: 主机名称 | drill_datastore | String | 否 | | 开启验证时传: 数据存储,没有传空串 |

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  message String , 错误信息提示
  code Number 0 @mock=0
  success_list Array 内容类似 fail_list
  fail_list Array
    name String 可能存在名称,此模块没有
    uuid String 可能存在uuid,此模块有
    vm_name String vp 模块专有
    code String 必有
    message String 必有
msg String , 错误信息
ret Number 200 @mock=200, http code

# 虚机备份 - 修改

添加备份规则;URL参数为 group_uuid;

接口入参和新建一样,修改规则为新建完整规则参数,模板则去掉 vp_uuid 和 vm_list;

SDK方法名:modifyVpBackup

# URL

//vp/backup/group/:uuid([A-F0-9-]+)

# Method

PUT

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0
msg String , 错误信息
ret Number 200 @mock=200, http code

# 虚机备份 - 获取单个

查看备份规则,URL参数为 rule_uuid

SDK方法名:describeVpBackup

# URL

//vp/backup/:uuid([A-F0-9-]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  message String
  code Number 0
  vp_backup Object
    del_bkup_data Number 1
    quiet_snap Number 1
    quick_back Number 1
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vp_name String vp_name
    vp_type Number
    bk_path String C:\test\
    bk_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    lan_free Number 1
    rule_name String temp
    bkup_policy Number 0
    bkup_one_time Number 1515568566
    bkup_schedule Array
      limit Number 3
      sched_day Array [1,2,3]
      sched_time Array ["00:00"]
      sched_every Number 0
      bkup_type Number 0
    create_time String 1515568566
    rule_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    random_str String C02B76DB-EBE8-E029-B645-072B2E1A7460
    username String Joseph Johnson
    user_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    bk_node_name String
    vm_name String
    vm_ref String
  total Number 1
ret Number 200
msg String

# 虚机备份 - 获取单个(组)

查看备份规则,URL参数为 group_uuid

SDK方法名:describeVpBackupGroup

# URL

//vp/backup/group/:uuid([A-F0-9-]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  message String
  code Number 0
  vp_backup Object
    del_bkup_data Number 1
    quiet_snap Number 1
    quick_back Number 1
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vp_name String vp_name 平台名称
    vp_type Number
    bk_path String C:\test\
    bk_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    lan_free Number 1
    rule_name String temp
    bkup_policy Number 1
    bkup_one_time Number 1515568566
    bkup_schedule Array
      limit Number 3
      sched_day Array [1,2,3]
      sched_time Array ["00:00"]
      sched_every Number 0
      bkup_type Number 0
    create_time String 1515568566
    rule_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    random_str String C02B76DB-EBE8-E029-B645-072B2E1A7460
    username String Joseph Johnson
    user_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    bk_node_name String 备机名
    group_uuid String @guid
    vm_list Array
      rule_uuid String 虚机对应单个规则uuid
      vm_name String @name
      vm_ref String 110
      scripts String 存在对应演练规则时返回
      scripts_type Number 存在对应演练规则时返回:
脚本验证的方式,0表示验证ping方法验证,1表示tcp端口验证测试,2表示脚本验证方式。2表示脚本验证方式目前暂存以后实现。默认值为0
      cpu String 存在对应演练规则时返回:
cpu数
      core_per_sock String 存在对应演练规则时返回:
单个cpu核数
      mem_mb String 存在对应演练规则时返回:
内存大小
      os_type Number 存在对应演练规则时返回:
操作系统: 0:linux; 1:windows
    band_width String -1
    auto Number 存在对应演练规则时返回:
自动演练:自动:1,手动:0;默认为0
  total Number 1
ret Number 200
msg String

# 虚机备份 - 列表

获取备份规则列表;获取列表详细入参说明详见【节点管理-获取节点列表】接口说明;

SDK方法名:listVpBackup

# URL

//vp/backup

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page Number 1 可选
limit Number 10 可选
type Number 0 规则类型:0:普通规则;10:模板;

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0
  info_list Array 3
    bk_node_name String @name 备机名称
    group_uuid String @guid
    username String @name
    rule_name String @name
    rule_uuid String @guid
    vp_uuid String @guid
    vp_type String
    vp_name String @name 平台名称
    vm_name String @name
    bk_uuid String @guid
    bk_path String /temp/
    last_result Object 上次执行结果详情,内容同统计报表
    last_success_result Object 上次执行成功结果详情,内容同统计报表
  message String
  total Number 1
ret Number 200
msg String

# 虚机备份 - 列表(组)

获取备份规则组列表;

逻辑:是在【获取列表】基础上,融合同组规则,在规则上加入vm_list 数组,其中有 rule_uuid;

获取列表详细入参说明详见【节点管理-获取节点列表】接口说明;

SDK方法名:listVpBackupGroup

# URL

//vp/backup/group

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page Number 1 可选
limit Number 10 可选
type Number 0 规则类型:0:普通规则;10:模板;
where_args[bk_path] String H:\vp_bk5\ (RC) 获取 bk_path 为 H:\tmp\ 的规则组;

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
ret Number 200
msg String
data Object
  message String
  code Number 0
  info_list Array 2
    del_bkup_data Number 1
    quiet_snap Number 1
    quick_back Number 1
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vp_name String vp_name
    vp_type String
    bk_path String C:\test\
    bk_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    lan_free Number 1
    rule_name String temp
    bkup_policy Number 0
    bkup_one_time Number 1515568566
    bkup_schedule Array
      limit Number 3
      sched_day Array [1,2,3]
      sched_time Array ["00:00"]
      sched_every Number 0
      bkup_type Number 0
    create_time String 1515568566
    rule_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    random_str String C02B76DB-EBE8-E029-B645-072B2E1A7460
    username String Joseph Johnson
    user_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    bk_node_name String
    group_uuid String cCBEC2D3-B6FE-853F-33db-d292b2D62De1
    vm_list Array
      vm_name String Christopher Jackson
      vm_ref String 110
  total Number 1
ret Number 200
msg String

# 虚机备份 - 状态

获取备份规则的状态

SDK方法名:listVpBackupStatus

# URL

//vp/backup/status

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"]

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  count String 1
  message String
  code Number 0
  status Array 2
    status String @pick(["STOP","EXECUTING","IDLE","DEAD","FINISH","SWITCH","UNKNOWN","VP_START","VP_CHECK","VP_CFG","VP_CBT"]) stop,executing,idle,dead,finish,switch,unknown,
    progress Number 0-100
    rule_uuid String @guid
    last_result Object 上次执行结果详情,内容同统计报表
    last_success_result Object 上次执行成功结果详情,内容同统计报表
ret Number 200

# 虚机备份 - 操作 启停

SDK方法名:

启动:startVpBackup

停止:stopVpBackup

# URL

//vp/backup/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String "start", "stop","start_immediately"
rule_uuids Array [C6335F62-2565-1957-4BB9-587F2FF46B00] 规则uuid列表
group_uuids Array 组操作,有这个就先用这个,没有就用规则uuid
bkup_type String 立即执行操作(start_immediately)必传,取值为,备份策略 - 周期任务 - 备份方式;0:全备,1:增量,2:差异

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object , api content
  message String , 错误信息提示
  code Number 0 @mock=0
ret Number 200 @mock=200, http code
msg String , 提示信息

# 虚机备份 - 删除

删除备份规则

SDK方法名:deleteVpBackup

# URL

//vp/backup

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"]
group_uuids Array 组操作,有这个就先用这个,没有就用规则uuid

# Response

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

# ------- 虚机恢复 -------

# URL

//dash2

# Method

GET

# Request

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

# Response

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

# 虚机恢复 - 新建

新建恢复规则

SDK方法名:createVpRecovery

# URL

//vp/recovery

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_type Number 0 恢复类型:0:普通;1:瞬时;
api_type String HostAgent API类型,如HostAgent、vcenter、Hyper-V
bk_path String H:\vp_bk5\testRC1_BAK_99_192.168.85.139 数据存放目录
new_ds String datastore1 存储名称、Hyper-V:路径如 E:\hp\
new_hostname String localhost.localdomain 新主机名称
new_dc String ha-datacenter 数据中心
is_create Number 0 是否创建虚拟机 是 :1 否:0
vp_uuid String 928B88A6-CDBA-6F55-ADCB-15A8A935C9C2 虚拟平台的uuid(源虚拟平台)
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 备机节点uuid
new_vp_uuid String 928B88A6-CDBA-6F55-ADCB-15A8A935C9C2 目标平台
rule_name String testRC cky 规则名称
lan_free Number 23 传输方式
auto_startup Number 0 自动开启虚机:0:关;1:开;
new_dc_mor String ha-datacenter 数据中心标识
new_ds_path String / 工作目录:虚机平台是 hostagent 则为用户输入的目录,若虚拟平台是vcenter 则传 /,Hyper-V平台不用传
vm_list Array 虚拟机的数组
  vm_name String 测试5 虚机名称
  new_vm_name String 测试5 新虚拟机名字
  vm_ref String 99 托管对象
  ver_sig String A59DB76E-E33D-4E22-BB08-59723B1FC539 备份点
  disk_list Array 磁盘列表
    id String 同vm_cfg中的id,供底层识别
    disk_name String proxy gateway1.vmdk 磁盘名称
    disk_path String / 磁盘路径,如Hyper-V,则为用户输入的路径(页面上还是叫数组存储)
    is_same Number 1 是否和工作目录一致;1:相同;0:不同;Hyper-V平台不用传;
    new_ds String datastore1 存储名称;Hyper-V平台不用传;
  vm_cfg Object 从【虚拟平台(vp)- 查询 还原点信息/虚机配置信息】接口获取的对象;
    disk_list Array [""]
      id String 2000 id
      disk_name String gateway1.vmdk name
      disk_path String /test1/test2/ vmware:linux path;hyper-v:win path
    alt_name String
    anno String
    bk_path String H:\vp_bk5\testRC1_BAK_99_192.168.85.139\
    cdrom String
    chg_id String 52 19 10 74 e2 c2 b3 63-de 7a 2e d2 9d 40 91 bf/107
    controller String 1,1000,100,3,0,3,noSharing,0
    core_per_sock String 1
    cpu String 1
    dc String ha-datacenter
    disk String 2,[datastore1] 测试5/proxy gateway1.vmdk,persistent,1,2048,2000,1000,0,52 19 10 74 e2 c2 b3 63-de 7a 2e d2 9d 40 91 bf/107,0,1
    disk_count String 1
    ds String datastore1
    floppy String
    guest_os_id String rhel6_64Guest
    hostname String localhost.localdomain
    mem_mb String 1024
    nic String 3,00:50:56:90:ff:ad,1,4000,100,7,1,VM Network;3,00:50:56:90:7b:51,1,4001,100,8,1,VM Network
    nic_count String 2
    storeMem String 0
    time String 2019-01-07_13-10-45
    valid_data Number 4194304
    ver_sig String A59DB76E-E33D-4E22-BB08-59723B1FC539
    vm_name String 测试5
    vm_ref String 99
    vm_version String vmx-08
    vp_uuid String 928B88A6-CDBA-6F55-ADCB-15A8A935C9C2
    vp_type String
    cpuVirtualization String
biz_grp_list Array 业务分组,组uuid
cpu Number 1 处理器个数
core_per_sock Number 1 处理器核心数
mem_mb Number 1024 内存
mac String 3,00:50:56:90:ff:ad,1,4000,100,7,1,VM Network;3,00:50:56:90:7b:51,1,4001,100,8,1,VM Network mac 地址
group_recovery Number 0 是否组恢复;1:是;0:否
backup_rule_name String testRC1 对应备份规则的规则名称
band_width String -1
for_vp_file_rc Number 0否1是,是否用于VP文件级恢复
dynamic_mem Number 是否动态内存,1表示动态内存,0表示非动态内存。
del_vm Number 是否删除虚机,默认为0;0:不删除,1:删除
network_id String
network_name String

# Response

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

# 虚机恢复 - 获取单个 组

查看组规则信息;URL 参数:恢复规则组uuid;

SDK方法名:describeVpRecoveryGroup

# URL

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

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功
  vp_recovery Object
    backup_rule_name String 9_21
    bk_node_name String N3_72.75
    group_uuid String F6FCFC4D-EE04-946B-56F2-A52E91AFD5A8
    rule_uuid String 8264AEDC-815B-0FA1-1FEE-F8B4FD15E1F1
    rule_name String 2221
    user_uuid String 1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC
    bk_uuid String C02B76DB-EBE8-E029-B645-072B2E1A7460
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vp_name String 88.107
    vp_type Number
    new_vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    new_vp_name String 88.107
    new_vp_type Number
    new_dc String ha-datacenter
    new_ds String datastore107(1)
    new_dc_mor String ha-datacenter
    bk_path String H:\vp_bk\111_BAK_119_192.168.88.107\
    new_ds_path String /
    new_hostname String dev-esxi.6.6.6
    new_vm_name String chenky_vp_test
    cpu Number 2
    core_per_sock Number 1
    mem_mb Number 3972
    mac String 3,00:50:56:96:73:51,5,4000,100,7,1,VM Network
    automate Number 0
    api_type String HostAgent
    is_create Number 0
    lan_free Number 23
    create_time Number 1537341291
    rule_type Number 1
    group_recovery Number 0
    random_str String F6FCFC4D-EE04-946B-56F2-A52E91AFD5A8
    mem_snap Number 0
    del_vm Number
    vm_list Array
      vm_name String chenky_vp_test
      vm_ref String 119
      ver_sig String 199EDA68-3512-480A-8355-A0E9C2DA1587
      vm_cfg Object
        anno String
        bk_path String H:\vp_bk\111_BAK_119_192.168.88.107\
        cdrom String 4,55c0a733-34dfe690-1c0c-f07959371ff0,1,3002,201,0
        controller String 1,1000,100,3,0,1,noSharing,0;1,7000,100,22,0,5,,0
        core_per_sock String 1
        cpu String 2
        dc String ha-datacenter
        disk String 2,[datastore107(1)] chenky_vp_test/chenky_vp_test.vmdk,persistent,1,61440,2000,1000,0,52 0e 75 84 1d 0e b9 16-65 85 64 79 2e 0c 02 3e/90,0,0
        disk_count String 1
        ds String datastore107(1)
        floppy String
        guest_os_id String centos64Guest
        hostname String dev-esxi.6.6.6
        nic String 3,00:50:56:96:73:51,5,4000,100,7,1,VM Network
        nic_count String 1
        storeMem String
        vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
        alt_name String
        chg_id String 52 0e 75 84 1d 0e b9 16-65 85 64 79 2e 0c 02 3e/90
        vm_ref String 119
        vm_version String vmx-10
        mem_mb String 3972
        vm_name String chenky_vp_test
        disk_list Array ["chenky_vp_test.vmdk"]
      disk_list Array
        disk_name String chenky_vp_test.vmdk
        disk_path String /
        is_same Number 0
        new_ds String datastore107(1)

# 虚机恢复 - 获取列表

获取规则列表

SDK方法名:listVpRecovery

# URL

//vp/recovery

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
type Number 0 恢复类型:0:普通;1:瞬时;
limit Number 10 可选
page Number 1 可选

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] success
  info_list Array
    backup_rule_name String 9_21
    vp_name String 88.107
    bk_node_name String N3_72.75
    username String admin
    create_time Number 1537341291
    rule_name String 2221
    rule_type Number 1
    ver_sig String 199EDA68-3512-480A-8355-A0E9C2DA1587
    vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    vm_name String chenky_vp_test
    vp_type Number
    new_vp_uuid String 1663DD96-C9BE-B49E-6044-3AB3120F4B74
    new_vp_name String 88.107
    new_vp_type Number
    group_uuid String F6FCFC4D-EE04-946B-56F2-A52E91AFD5A8
    rule_uuid String 8264AEDC-815B-0FA1-1FEE-F8B4FD15E1F1
    bk_ip String 192.168.72.75
    bk_uuid String 8264AEDC-815B-0FA1-1FEE-F8B4FD15E1F1
    can_del Number 1 1
  total Number 1

# 虚机恢复 - 状态

获取规则状态

SDK方法名:listVpRecoveryStatus

# URL

//vp/recovery/status

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  status Array
    rule_uuid String 8264AEDC-815B-0FA1-1FEE-F8B4FD15E1F1
    status String FINISH stop,executing,idle,dead,finish,switch,unknown,
    progress String -6089.0

# 虚机恢复 - 操作

启动和停止恢复规则

SDK方法名:

启动:startVpRecovery

停止:stopVpRecovery

清除已完成:clearFinishVpRecovery

# URL

//vp/recovery/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String start 启动 : start; 停止 : stop; 清除已完成 : clear_finish
rule_uuids Array 641A27BB-B4D1-F482-1FB8-E856898626DA 规则uuid数组, (仅在清除已完成操作时不传)
group_uuids Array 组操作,有这个就先用这个,没有就用规则uuid
rule_type Number 0 clear_finish的恢复类型:0:普通;1:瞬时;(仅在清除已完成操作时传)

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0 @mock=0
  message String 错误信息提示
ret Number 200 @mock=200, http code
msg String 错误信息

# 虚机恢复 - 删除

删除恢复规则

SDK方法名:deleteVpRecovery

# URL

//vp/recovery

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"] 规则uuid数组
group_uuids Array 组操作,有这个就先用这个,没有就用规则uuid
delete_tgtvm Number 删除规则时,判断是否删除目标虚拟机。 1:删除 0:不删除。

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0 @mock=0
  message String 错误信息提示
ret Number 200 @mock=200, http code
msg String 错误信息

# ---- 虚机迁移/复制 ----

# URL

//dash3

# Method

GET

# Request

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

# Response

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

# 虚机迁移/复制 - 新建

time_window字段说明:

格式:星期:时间1,时间2;星期:时间1,时间2,时间3

[0]星期:0-6,周日-周六

[1]时间:0(0:00-0:59),1(1:00-1:59),……,23(23:00-23:59)

SDK方法名:createVpMove/createVpRep

# URL

//vp/(move|rep)

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_type Number 1 规则类型:1: move; 0:rep; 10: template;
rule_name String testMove1 cky 规则名称
src_uuid String 7F16E670-1A61-D565-6905-9C68B9520907 源平台uuid
vm_list Array
  vm_name String 新建虚拟机1
  vm_ref String vm-11877
  shd_name String 新建虚拟机1_move
  disk_list Array 虚机磁盘配置
    id String hyper-v有,磁盘uuid
    disk_path String Vmware暂时传 空串,Hyper-V传用户选的磁盘路径(结尾带)
    disk_name String [datastore1 (1)] 测试11_临时测试11/测试11_临时测试11_5-000002.vmdk 从RPC接口返回的虚机磁盘名称,下发RPC仅需要最后磁盘名称
    new_ds String datastore2 选择一个存储
  network_info String 网卡ID
  network_name String 网卡名称
  scripts_type String 开启验证时: (*必填)脚本验证的方式,0表示验证ping方法验证,1表示tcp端口验证测试,2表示脚本验证方式。2表示脚本验证方式目前暂存以后实现。默认值为0
  scripts String 开启验证时: 验证内容
  cpu String 开启验证时: cpu数
  core_per_sock String 开启验证时: 单个cpu核数
  mem_mb String 开启验证时: 内存大小
  os_type Number 开启验证时: 操作系统: 0:linux; 1:windows
biz_grp_list Array 业务分组:组uuid数组
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F 备机 uuid
bk_path String H:\vp_rep\ 备份路径(临时目录)
tgt_uuid String 7F16E670-1A61-D565-6905-9C68B9520907 目标平台uuid
new_dc String i2test 数据中心
new_dc_mor String datacenter-2 数据中心标识
new_host String 192.168.88.103 主机名称
new_ds String 103-数据盘 存储
network_id String 目标端网卡id
network_name String 目标端网卡名称
bkup_policy Number 0 自动同步开关:0:不开启自动同步;1:开启自动同步;
backup_type String i 默认传 i
bkup_schedule Object 同步策略
  sched_time_start String 0 复制:

自动同步不开启:传 0; 每小时,对应页面上开始时间,格式:2018-09-14 15:38:00; 每天,传 “”空串; 每周/月,传 当前日期(前端生成,如 2018-09-03) + 运行时间(页面输入 08:00:00),格式:2018-09-03 08:00:00; 迁移:空; |   limit | Number | 否 | 0 | 备份数据保留个数:整数;不开自动同步是0; |   sched_day | Array | 否 | "@integer(1, 31)" | 某几天,“每周/每月”循环专用参数,取值(整型):每周:0-6 对应 周日-周六;每月:1-31 对应 第1-31号; |   sched_every | Number | 否 | 0 | 0:每天;1:每周:2:每月;3:每隔(每小时); |   sched_time | Array | 否 | | 某几点:“每天”循环专用参数,取值:为 HH:mm 的数组; |   sched_gap_min | Number | 否 | 0 | 复制:有用到间隔时间填间隔时间>=10,不需要这个值则默认0,迁移: 0 | quick_back | Number | 否 | 1 | 快速传输 选中为1,不选中为0 | quiet_snap | Number | 否 | 1 || @mock=0 | 静默快照:0:开;1:关; | lan_free | Number | 否 | 23 | 选中:31 不选中:23 | del_bkup_data | Number | 否 | 0 | 删除虚拟机 勾选 1 不勾选 0 | overwrite | Number | 否 | | 是否覆盖虚机:1:是;0:否; | band_width | String | 否 | -1 | | support_cbt | Number | 否 | 1 | 支持cbt:1 不支持 cbt :0;暂时默认传1 | time_window | String | 否 | | 勾选时间窗口时候需要下发,格式见说明,暂时传'' | automate | Number | 否 | 0 | 复制,默认:1;迁移:勾选自动迁移 1,不勾选0; | auto_shutdown | Number | 否 | | 迁移完成关闭源机,0否1是,默认0; | auto_startup | String | 否 | | 迁移完成开启备机,0否1是,默认0; | add_drill | Number | 否 | | 是否开启认证: 0:否, 1:是, 默认否 | auto | String | 否 | | 开启验证时必传: 自动验证: 自动:1,手动:0; | drill_plat_uuid | String | 否 | | 开启验证时传: 目标平台的vp_uuid | drill_datacenter | String | 否 | | 开启验证时传: 数据中心 | drill_new_dc_mor | String | 否 | | 开启验证时传: 目标平台数据中心托管对象值 | drill_hostname | String | 否 | | 开启验证时传: 主机名称 | drill_datastore | String | 否 | | 开启验证时传: 数据存储,没有传空串 |

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200 @mock=200, http code
msg String 错误信息
data Object
  code Number 0 @mock=0
  message String 错误信息提示

# 虚机复制 - 修改

URL参数为 group_uuid;

接口入参和新建一样,修改规则为新建完整规则参数;

# URL

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

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
new_ds String 103-数据盘
support_cbt Number 1
tgt_uuid String 7F16E670-1A61-D565-6905-9C68B9520907
del_bkup_swap Number 0
src_uuid String 7F16E670-1A61-D565-6905-9C68B9520907
bk_uuid String 67E33CDB-D75B-15B3-367D-50C764F5A26F
automate Number 0
rule_name String testMove1 cky
new_dc String i2test
bk_path String H:\vp_rep\
backup_type String i
new_host String 192.168.88.103
quiet_snap Number 1
bkup_schedule Object
  sched_time_start String 0
  limit Number 0
  sched_day Number 21
  sched_every Number 0
  sched_time Array
  sched_gap_min Number 0
quick_back Number 1
del_bkup_data Number 0
lan_free Number 23
vm_list Array
  vm_name String 新建虚拟机1
  vm_ref String vm-11877
  shd_name String 新建虚拟机1_move
  overwrite Number 0
  disk_list Array
    disk_path String
    disk_name String [datastore1 (1)] 测试11_临时测试11/测试11_临时测试11_5-000002.vmdk
    new_ds String datastore2
    id String
time_window String
new_dc_mor String datacenter-2
bkup_policy Number 0
band_width String -1
rule_type Number 1
auto_shutdown Number 1

# Response

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

# 虚机迁移/复制 - 获取单个

查看规则

SDK方法名:describeVpMove/describeVpRep

# URL

//vp/(move|rep)/:uuid([A-F0-9-]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  vp_rep Object
    new_ds String
    support_cbt Number 1
    tgt_uuid String @guid()
    del_bkup_swap Number 1
    src_uuid String 83EAde4d-52C8-9D4d-2BDF-52165B83fDAe
    bk_uuid String @guid()
    automate Number 1
    rule_name String @name
    new_dc String
    bk_path String
    backup_type String
    new_host String
    quiet_snap Number 1
    bkup_schedule Object
      sched_time_start String
      limit Number 1
      sched_day Number 24
      sched_every Number 1
      sched_time Array
      sched_gap_min Number 1
    quick_back Number 1
    del_bkup_data Number 1
    lan_free Number 1
    vm_list Array 2
      vm_name String @name
      vm_ref String 1
      shd_name String @name
      overwrite Number 1
      cpu String 存在对应演练规则时返回: cpu数
      core_per_sock String 存在对应演练规则时返回: 单个cpu核数
      mem_mb String 存在对应演练规则时返回: 内存大小
      os_type Number 存在对应演练规则时返回: 操作系统: 0:linux; 1:windows
    time_window String
    new_dcmor String
    src_name String
    tgt_name String
    username String
    user_uuid String @guid()
    rule_uuid String @guid()
    group_uuid String @guid()
    create_time String
    bkup_policy Number 1

# 虚机迁移/复制 - 修改模板

time_window字段说明:

格式:星期:时间1,时间2;星期:时间1,时间2,时间3

[0]星期:0-6,周日-周六

[1]时间:0(0:00-0:59),1(1:00-1:59),……,23(23:00-23:59)

SDK方法名:modifyVpMove/modifyVpRep

# URL

//vp/(move|rep)/:uuid([A-F0-9-]+)

# Method

PUT

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_name String 规则名称
src_uuid String @guid() 源平台uuid
tgt_uuid String 目标平台uuid
bk_uuid String 备机 uuid
bk_path String 备份路径(临时目录)
new_dc String 数据中心
new_dc_mor String 数据中心标识
new_host String 主机名称
new_ds String 存储
quiet_snap Number 1 @mock=0
support_cbt Number 支持cbt:1 不支持 cbt :0
del_bkup_swap Number 复制:勾选删除临时目录 传1 ,不勾选传0,迁移默认为0
automate Number 复制,默认:1;迁移:勾选自动迁移 1,不勾选0;
backup_type String 默认传 i
vm_list Array 2
bkup_policy Number 自动同步开关:0:不开启自动同步;1:开启自动同步;
bkup_schedule Object 同步策略
quick_back Number 快速传输 选中为1,不选中为0
del_bkup_data Number 删除虚拟机 勾选 1 不勾选 0
lan_free Number 选中:31 不选中:23
time_window String 勾选时间窗口时候需要下发,格式见说明

# Response

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

# 虚机迁移/复制 - 获取列表

SDK方法名:listVpMove/listVpRep

# URL

//vp/(move|rep)

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
page Number 1
limit Number 10

# Response

名称 类型 必选 初始值 简介 Mock规则
data Object
  code Number 0
  message String
  info_list Array 2
    rule_name String @word 规则名称
    src_name String @word 源平台名称
    group_uuid String @guid
    tgt_name String @word 目标虚拟平台
    bk_node_name String @name 备机名称
    username String @name 所有者
    rule_uuid String @guid 单个规则uuid
    vm_name String @word 虚机名称
    can_del Number 1 1
ret Number 200
msg String

# 虚机迁移/复制 - 状态

SDK方法名:listVpMoveStatus/listVpRepStatus

# URL

//vp/(move|rep)/status

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"] 规则uuid

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  status Array 2
    rule_uuid String @guid() 规则uuid
    progress Number @int(1,100) 进度
    status String @pick(["STOP","EXECUTING","IDLE","DEAD","FINISH","SWITCH","UNKNOWN","VP_START","VP_CHECK","VP_CFG","VP_CBT","VP_PREPARE_MV","VP_PREPARE_PT","CREATING"]) stop,executing,idle,dead,finish,switch,unknown
  code Number 0
  message String
ret Number 200

# 虚机迁移/复制 - 操作

SDK方法名:

停止:stopVpMove/stopVpRep

开始:startVpMove/startVpRep

开始迁移: moveVpMove

切换: failoverVpRep

回切: failbackVpRep

# URL

//vp/(move|rep)/operate

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
operate String start 开:start;停:stop;迁移:move; 切换:failover;回切:failback;

虚机复制还包括: start_immediately | rule_uuids | Array | 否 | 1C89A121-6B03-24B2-9273-D4B93C0687AD | | group_uuids | Array | 否 | | 组操作,有这个就先用这个,没有就用规则uuid | snap_point | String | 否 | | 切换专用参数:选择需要切换到的时间点 | op_code | String | 否 | | 切换专用参数:0表示临时切换;1表示永久切换 |

# Response

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

# 虚机迁移/复制 - 删除

删除规则

SDK方法名:deleteVpMove/deleteVpRep

# URL

//vp/(move|rep)

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"] 规则uuid
group_uuids Array 组操作,有这个就先用这个,没有就用规则uuid
delete_tgtvm Number 删除规则时,判断是否删除目标虚拟机。

1:删除 0:不删除。 |

# Response

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

# 虚机迁移/复制 - 获取快照

URL中uuid为rule_uuid:

切换操作前,获取快照列表信息;流程:新建个带策略的复制,【已完成】时,点击切换,获取时间点列表,有内容的话,选择一个时间点,选择永久切换还是临时切换,确定;

SDK方法名:listVpRepPointList

# URL

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

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  list Array ["2018-10-24 16:55:09"]

# ----- 虚机文件恢复 -----

# URL

//dash4

# Method

GET

# Request

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

# Response

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

# 虚机文件恢复 - 1 获取恢复虚机ip

SDK方法名:describeVpFileRecoveryVmIp;

1. 新建瞬时恢复,得到一个虚机。

	a. 前端:chkbox改成sw,前端也加这参数;

	b. 后端:瞬时恢复加参数:用于文件级恢复;

2. 在瞬时恢复操作栏,点击文件级恢复。或者在新建文件级恢复页面选择一条瞬时恢复;

用选择的恢复rule_uuid获取虚机ip(vp.GetIpAndRluuid,废弃vp.GetStatusOfIp)

# URL

//vp/file_recovery/vm_ip

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
recovery_uuid String 规则uuid(瞬时恢复规则uuid)

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  bk_ip String 瞬时恢复出的虚机ip

# 虚机文件恢复 - 2 livecd磁盘分区

SDK方法名:vpFileRecoveryLivecdPartition;

执行livecd磁盘分区(rpc.partition_for_livecd,拼host,朝上面获取的ip发送,26821)

# URL

//vp/file_recovery/livecd_partition

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
recovery_uuid String @guid 瞬时恢复的uuid
bk_ip String 瞬时恢复出的虚机ip

# Response

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

# 虚机文件恢复 - 新建

SDK方法名:createVpFileRecovery;

# URL

//vp/file_recovery

# Method

POST

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_name String
recovery_uuid String 对应的瞬时恢复uuid
os_user String 目标用户名(仅恢复到目标虚机传)
os_pwd String 目标虚拟机密码(仅恢复到目标虚机传)
wk_ip String 如果是恢复到目标虚拟机上,则为目标虚拟机的ip(此时为列表“还原目标机”列的内容),若果恢复到灾备机上,则输入灾备机的ip
wk_port Number 26888 RecoverSvr启动端口(默认26888)
wk_path Array 恢复目录路径(如果恢复到目标虚机,此值为空)
bk_ip String 瞬时恢复出的虚机ip
bk_path Array 需要恢复的文件路径
is_override Number 0 如果是恢复到目标虚拟机上,看是否需要覆盖原先的数据,如果恢复到灾备机上则值为0,没有覆盖一说
is_remote Number 是否恢复到目标虚机,0:恢复到备机;1:恢复到目标虚机;

# Response

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

# 虚机文件恢复 - 获取单个

SDK方法名:describeVpFileRecovery;

# URL

//vp/file_recovery/:uuid([A-F0-9-]+)

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String [0] 操作成功。
  vp_file_recovery Object
    username String admin
    id String 13
    bk_ip String 192.168.0.171
    bk_path Array ["/mnt/dev/mapper/vg_mini01-lv_root/"]
    create_time Number 1552897916
    is_override Number 0
    is_remote Number 1
    os_pwd String 123456
    os_user String root
    random_str String 38788002-8ACF-4873-4991-7DEF3571205B
    recovery_uuid String DDD15A4B-AB9A-71C6-9A52-48B052D36F50
    rule_name String test
    rule_type Number 0
    rule_uuid String 38788002-8ACF-4873-4991-7DEF3571205B
    status String
    user_uuid String 1BCFCAA3-E3C8-3E28-BDC5-BE36FDC2B5DC
    wk_uuid String 7AFD547A-C5EA-901C-0D7D-56FE2A8B1A9A
    wk_ip String 192.168.27.155
    wk_path Array
    wk_port Number 26888
    biz_grp_list Array
    biz_grp_name Array

# 虚机文件恢复 - 获取列表

SDK方法名:listVpFileRecovery;

# URL

//vp/file_recovery

# Method

GET

# Request

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

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
  total Number 1
  info_list Array
    tgt_ip String
    tgt_port Number 26888
    tgt_usr String
    tgt_passwd String
    rule_uuid String
    src_dir String
    is_override Number 0
    user_uuid String
    create_time Number 1
    random_str String
    username String

# 虚机文件恢复 - 状态

SDK方法名:listVpFileRecoveryStatus;

# URL

//vp/file_recovery/status

# Method

GET

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"]

# Response

名称 类型 必选 初始值 简介 Mock规则
msg String
data Object
  code Number 0
  message String
  status Array 2
    status String FINISH
    progress Number 54
    rule_uuid String Cc8c80e2-39E1-E5Ca-16cF-BE09cFfBEBf8
ret Number 200

# 虚机文件恢复 - 删除

SDK方法名:deleteVpFileRecovery;

# URL

//vp/file_recovery

# Method

DELETE

# Request

名称 类型 必选 初始值 简介 Mock规则
rule_uuids Array ["11111111-1111-1111-1111-111111111111"]

# Response

名称 类型 必选 初始值 简介 Mock规则
ret Number 200
msg String
data Object
  code Number 0
  message String
Last Updated: 10/20/2020, 9:18:59 AM