新增模板信息
功能介绍
新增源端模板信息。
调用方法
请参见如何调用API。
URI
POST /v3/vm/templates
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | X-Auth-Token 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 最小长度:1 最大长度:16384 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| template | 是 | TemplateRequest object | 模板信息 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| name | 是 | String | 模板名称 最小长度:0 最大长度:255 |
| is_template | 是 | Boolean | 是否是通用模板,如果模板关联一个任务,则不算通用模板 |
| region | 是 | String | Region信息 最小长度:0 最大长度:255 |
| projectid | 是 | String | 项目ID 最小长度:0 最大长度:255 |
| target_server_name | 否 | String | 目标端服务器名称 最小长度:0 最大长度:255 |
| availability_zone | 否 | String | 可用区 最小长度:0 最大长度:255 |
| volumetype | 否 | String | 磁盘类型 SAS:串行连接SCSI SSD:固态硬盘 SATA:串口硬盘 枚举值:
|
| flavor | 否 | String | 虚拟机规格 最小长度:0 最大长度:65535 |
| vpc | 否 | VpcObject object | vpc对象 |
| nics | 否 | Array of Nics objects | 网卡信息,支持多个网卡,如果是自动创建,只填一个,ID使用“autoCreate” 数组长度:0 - 65535 |
| security_groups | 否 | Array of SgObject objects | 安全组,支持多个安全组,如果是自动创建,只填一个,ID使用“autoCreate” 数组长度:0 - 65535 |
| publicip | 否 | PublicIp object | 公网ip |
| disk | 否 | Array of TemplateDisk objects | 磁盘信息 数组长度:0 - 65535 |
| data_volume_type | 否 | String | 数据盘磁盘类型 SAS:串行连接SCSI SSD:固态硬盘 SATA:串口硬盘 枚举值:
|
| target_password | 否 | String | 目的端密码 最小长度:0 最大长度:1024 |
| image_id | 否 | String | 新建目的虚拟机用户选择的镜像版本Id值 最小长度:0 最大长度:255 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 是 | String | 虚拟私有云ID,如果是自动创建,填“autoCreate” 最小长度:1 最大长度:255 |
| name | 是 | String | 虚拟私有云名称 最小长度:1 最大长度:255 |
| cidr | 否 | String | VPC的网段,默认192.168.0.0/16 最小长度:1 最大长度:255 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 是 | String | 子网ID,如果是自动创建,使用"autoCreate" 最小长度:0 最大长度:255 |
| name | 是 | String | 子网名称 最小长度:0 最大长度:255 |
| cidr | 是 | String | 子网网关/掩码 最小长度:0 最大长度:255 |
| ip | 否 | String | 虚拟机IP地址,如果没有这个字段,自动分配IP 最小长度:0 最大长度:255 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| type | 是 | String | 弹性公网IP类型,默认为5_bgp。 详细类型请参考EIP服务API文档中“查询弹性公网IP详情”部分,查看响应参数的中type字段描述 最小长度:0 最大长度:255 |
| bandwidth_size | 是 | Integer | 带宽大小,单位:Mbit/s。 调整带宽时的最小单位会根据带宽范围不同存在差异。 小于等于300Mbit/s,默认最小单位为1Mbit/s。300Mbit/s~1000Mbit/s,默认最小单位为50Mbit/s。大于1000Mbit/s:默认最小单位为500Mbit/s。 最小值:1 最大值:2000 |
| bandwidth_share_type | 否 | String | 带宽共享类型(长文本信息,非枚举数据,来源于EIP服务) 详细类型请参考EIP服务API文档中“查询弹性公网IP详情”部分,查看响应参数的中bandwidth_share_type字段描述 最小长度:0 最大长度:255 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| id | 否 | Long | 磁盘ID 最小值:0 最大值:9223372036854775807 |
| index | 是 | Integer | 磁盘序号,从0开始 最小值:0 最大值:2147483647 |
| name | 是 | String | 磁盘名称 最小长度:0 最大长度:255 |
| disktype | 是 | String | 磁盘类型,同volumetype字段(长文本信息,非枚举数据,来源于EVS服务) 详细类型请参考EIP服务API文档中“查询单个云硬盘详情”部分,查看响应参数的中volume_type字段描述 最小长度:0 最大长度:255 |
| size | 是 | Long | 磁盘大小,单位:GB 最小值:0 最大值:9223372036854775807 |
| device_use | 否 | String | 磁盘使用 最小长度:0 最大长度:255 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 服务端返回的新添加的模板的ID 最小长度:0 最大长度:255 |
状态码:403
| 参数 | 参数类型 | 描述 |
|---|---|---|
| error_code | String | 错误代码 最小长度:0 最大长度:255 |
| error_msg | String | 错误信息 最小长度:0 最大长度:255 |
| encoded_authorization_message | String | 加密授权信息 最小长度:0 最大长度:65535 |
| error_param | Array of strings | 错误参数 最小长度:0 最大长度:65535 数组长度:1 - 20 |
| details | Array of details objects | 详细错误信息 数组长度:1 - 20 |
请求示例
-
创建迁移任务的模板信息,模板名称是xxxx,region信息是region,项目ID是00924d0ad2df4f21ac476dd9f3288xxx。
POST https://{endpoint}/v3/vm/templates { "template" : { "name" : "", "is_template" : false, "region" : "region", "target_server_name" : "abcd", "availability_zone" : "availability_zone", "projectid" : "xxxxxxxxxxxxxxxxxxxxxxxx00000001", "volumetype" : "", "image_id" : "", "vpc" : { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "sms-1566979232(192.168.0.0/16)" }, "security_groups" : [ { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "kubernetes.io-default-sg(入方向:udp/1-65535;tcp/22,1-65535,3389; 出方向:--)" } ], "nics" : [ { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "sms-1566979244(192.168.0.0/16)", "cidr" : "192.168.0.0/16", "ip" : "" } ], "flavor" : "s2.medium.2", "publicip" : { "type" : "5_bgp", "bandwidth_size" : 5, "bandwidth_share_type" : "PER" }, "disk" : [ { "index" : 0, "name" : "system", "disktype" : "", "size" : 40 } ] } } -
创建模板的参数
POST https://{endpoint}/v3/vm/templates { "template" : { "name" : "xxxx", "is_template" : true, "region" : "region", "target_server_name" : "ggg-win16-t", "availability_zone" : "availability_zone", "projectid" : "xxxxxxxxxxxxxxxxxxxxxxxx00000001", "target_password" : "********", "flavor" : "c3.medium.2", "vpc" : { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "Migrate-SSd-1", "cidr" : "192.168.0.0/16" }, "nics" : [ { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "Migrate-SSd-35", "cidr" : "192.168.0.0/16", "ip" : "" } ], "security_groups" : [ { "id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001", "name" : "Migrate-dddd" } ], "disk" : [ { "id" : "0", "index" : 0, "name" : "Disk 0", "disktype" : "SATA", "size" : 40, "device_use" : "BOOT" } ], "volumetype" : "SATA", "publicip" : { "type" : "5_g-vm", "bandwidth_size" : 10, "bandwidth_share_type" : "PER" } } }
响应示例
状态码:200
新增模板信息成功
{
"id" : "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx0001"
} 状态码:403
鉴权失败
{
"error_code" : "SMS.9004",
"error_msg" : "The current account does not have the permission to execute policy. You do not have permission to perform action XXX on resource XXX.",
"encoded_authorization_message" : "XXXXXX",
"error_param" : [ "You do not have permission to perform action XXX on resource XXX." ],
"details" : [ {
"error_code" : "SMS.9004",
"error_msg" : "You do not have permission to perform action XXX on resource XXX."
} ]
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 新增模板信息成功 |
| 403 | 鉴权失败 |
错误码
请参见错误码。