请求地址:

请求地址请求方法
/api/vm/createPOST

请求参数

参数类型是否必填最大长度描述示例值
vm_nameString64虚拟机名称,必须唯一性,默认随机生成32位
vm_numv_cpusInt2虚拟机核心数,默认1
extend_paramsString
64业务扩展参数,会原样返回,例如用于交易号
vm_mem_sizeInt8虚拟机内存大小,单位为M,默认512M
vm_data_disk_sizeInt6数据硬盘大小,默认0,大于0才创建磁盘,单位是GB
tpl_system_nameString32

指定代理客户端虚拟机模板名称。

参考配置文件tpl_clone.conf或tpl_ovf.conf节点名称

clientidString32

代理客户端ID


power_onInt1部署完毕是否打开虚拟机电源,1打开,0关闭,默认为1

异步返回示例

{
    "errcode": "200",
    "errmsg": "ok",
    "data": {
        "extend_params": "extend_params",
        "taskid": "e0a0d735fbb6ec6e4b3d4d41b579fe29",
        "vm_name": "win7-x64-31"
    }
}

异步返回参数说明

参数描述
extend_params业务扩展参数
taskid任务ID,可用于获取任务执行信息,详情《取任务记录信息》
vm_name虚拟机名称
event_name事件名称
describe任务描述


任务参数说明

示例:

{
    "TaskID":"4f20f19352a4d7da6def44ae90876303",
    "Describe":"创建虚拟机 - win7-x64-52",
    "Content":{
        "client":{
            "id":"3e1d64ceb02dcd5ec8a0166242d53947"
        },
        "task":{
            "config_progress_bar":"100%",
            "config_progress_describe":"配置虚拟机参数",
            "config_progress_type":"setvm",
            "event_name":"CONST_EVENT_VM_CREATE",
            "task_errcode ":"200",
            "task_errmsg":"success"
        },
        "vm":{
            "vm_data_disk_size":"0",
            "vm_data_name":"data_1t",
            "vm_disk":"/vmfs/volumes/5e5b23b2-a4e7fb00-8d08-c4834f165c2c/user/win7-x64-52/win7-x64-52.vmdk",
            "vm_id":"153",
            "vm_mem_size":"512",
            "vm_name":"win7-x64-52",
            "vm_numv_cpus":"1",
            "vm_path":"/vmfs/volumes/5e5b23b2-a4e7fb00-8d08-c4834f165c2c/user/win7-x64-52",
            "vm_problem_messageid":"78469173",
            "vm_problem_state":"success",
            "vm_state":"3",
            "vm_tpl_name":"win7",
            "vm_vmx":"/vmfs/volumes/5e5b23b2-a4e7fb00-8d08-c4834f165c2c/user/win7-x64-52/win7-x64-52.vmx"
        }
    },
    "InsertTime":1694944922,
    "UpdateTime":1694944960,
    "ExpireTime":1695031322
}

参数说明:

参数描述
clientid代理客户端ID
 Content任务详情参数合集
    task当前任务配置信息
        task_errcode当前任务错误代码,如果不存在该参数时表示任务执行当中,需要等待,200表示成功
        task_errmsg当前任务错误提示如果不存在该参数时表示任务执行当中,需要等待
        event_name当前任务事件名称
        config_progress_type

当前任务配置进度类型,当虚拟机状态(vm_state=20)该参数生效

vm_clone : 克隆虚拟机磁盘文件

import_ovf : 导入ovf模板文件

setvm : 配置虚拟机参数

set_data_disk : 添加数据硬盘

vm_poweron : 打开虚拟机电源

        config_progress_describe当前任务配置描述,当虚拟机状态(vm_state=20)该参数生效
        config_progress_bar当前任务配置进度百分比,当虚拟机状态(vm_state=20)该参数生效
    client代理客户端信息
        id代理客户端ID
    vm当前虚拟机信息
        extend_params业务扩展参数
        vm_data_disk_size虚拟机数据盘大小,单位GB
        vm_data_name默认数据存储名称
        vm_disk虚拟机磁盘文件
        vm_id虚拟机唯一ID
        vm_mem_size虚拟机内存,单位MB
        vm_name虚拟机唯一名称
        vm_numv_cpus虚拟机CPU核心数
        vm_path虚拟机所在路径
        vm_problem_messageid虚拟机问题消息ID,如果未解决状态时可通过《回复虚拟机问题》来解决
        vm_problem_state

虚拟机问题状态:success已解决、unresolved未解决

        vm_state

虚拟机状态:

0 : 等待配置

1 : 有未解决问题消息,克隆虚拟机时有消息弹出问题需要解决

2 : 尝试一次解决问题消息,克隆虚拟机时有消息弹出问题需要解决

3 : 已处理问题消息,克隆虚拟机时有消息弹出问题需要解决

4 : 解决问题消息超时,需要手动到ESXI后台解决

10 : 运行中

20 : 配置中

30 : 电源打开中

31 : 电源已打开

32 : 电源关闭中

33 : 电源已关闭

40 : 挂起中

50 : 已挂起

60 : 重启中

99 : 出现异常


        vm_tpl_name虚拟机模板名称
        vm_vmx虚拟机vmx配置文件
  


任务(task)异常示例

{
    "task":{
        "task_errcode":"500",
        "task_errmsg":"创建虚拟机失败",
        "event_name":"CONST_EVENT_VM_CREATE"
    }
}