请求地址:
请求地址 | 请求方法 |
/api/vm/create | POST |
请求参数
参数 | 类型 | 是否必填 | 最大长度 | 描述 | 示例值 |
vm_name | String | 是 | 64 | 虚拟机名称,必须唯一性,默认随机生成32位 | |
vm_numv_cpus | Int | 否 | 2 | 虚拟机核心数,默认1 | |
extend_params | String | 是 | 64 | 业务扩展参数,会原样返回,例如用于交易号 | |
vm_mem_size | Int | 否 | 8 | 虚拟机内存大小,单位为M,默认512M | |
vm_data_disk_size | Int | 否 | 6 | 数据硬盘大小,默认0,大于0才创建磁盘,单位是GB | |
tpl_system_name | String | 是 | 32 | 指定代理客户端虚拟机模板名称。 参考配置文件tpl_clone.conf或tpl_ovf.conf节点名称 | |
clientid | String | 是 | 32 | 代理客户端ID | |
power_on | Int | 否 | 1 | 部署完毕是否打开虚拟机电源,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" } }