1. 创建云服务器
1.1. 描述
创建云服务器
1.2. 请求地址
请求地址的格式如下:
https://<区域服务地址>/v1/vm/create
1.3. 请求参数
参数名称 | 类型 | 是否必须 | 描述 |
---|---|---|---|
projectId | String | 是 | 所属项目ID |
name | String | 是 | 主机名称 |
feeType | String | 是 | 计费类型(按需计费:FEE_TYPE_NEED,包年包月:FEE_TYPE_MONTH_YEAR) |
subnetId | String | 是 | 子网ID |
securityGroupId | String | 是 | 安全组ID |
imageId | String | 是 | 镜像ID |
flavorId | String | 是 | FlavorID |
sysDiskType | String | 是 | 系统盘类型(SSD,HDD) |
sysDiskCapacity | int | 是 | 系统盘大小(GB),系统盘大小的配置介于20到2000之间,且必须为10的整数倍 |
loginType | String | 是 | 登录方式(密码: PASSWORD, SSH密钥: SSHKEY),系统镜像非windows时可选SSH密钥 |
password | String | 否 | 登录方式是密码时必填,密码8-30位字符,需同时包含大小写、英文、数字,不能为键盘上连续3位及以上字符,不可包含空格及以下字符# $ % & * < > |
sshKeyId | String | 否 | 登录方式是SSH密钥时必填 |
cycleCount | int | 否 | 计费类型是包年包月时必填,购买月数(1,2,3,4,5,6,7,8,9,12,24,36)个月 |
pgId | String | 否 | 安置组ID,安置组策略为集中式时,主机子网所在az需与安置组az相匹配 |
userData | String | 否 | Linux操作系统支持使用UserData设置云服务器创建初始化脚本,内容长度限制为16Kb。注意其他不支持的操作系统类型,设置了UserData参数也将忽略。 |
1.4. 请求示例
以创建华东一区某子网下名字为"test"的计费类型为按需计费的云服务器为例:
1.4.1. 请求地址
POST https://cn-east-1.api.yovole.com/v1/vm/create HTTP/1.1
x-ycs-timestamp: 2019-06-19T14:26:26Z
x-ycs-requestid: 2a49cfa2-925b-11e9-bb3a-6c96cfdcd6b9
x-ycs-security-authorization: Authorization: YCS1-HMAC-SHA1 Credential=08e206fb-7b41-45b7-8076-8d43e8aeea89,SignedHeaders=content-type;x-ycs-requestid;x-ycs-timestamp,Signature=2RFjU7C9gICCrQfpAIfAJHqRRlQ=
1.4.2. 接口请求参数
{
"projectId":"8a83a0966a681da5016a874df50b10ce",
"name":"test",
"feeType":"FEE_TYPE_NEED",
"subnetId":"98e6bf98-3283-4bed-80c8-2132a510aebb",
"securityGroupId":"eb667f7f-a0d4-4cc5-908a-e4175c683030",
"imageId":"centos-6.3-64",
"flavorId":"ecs.c1.small",
"sysDiskType":"HDD",
"sysDiskCapacity": 20,
"loginType":"PASSWORD",
"password":"XXXXXXXXXXX"
}
1.5. 返回结果示例
1.5.1. 返回正确结果示例
{
"requestId": "2a49cfa2-925b-11e9-bb3a-6c96cfdcd6b9",
"success": true,
"code": 200,
"message": null,
"model": null
}
1.5.2. 返回错误结果示例
{
"requestId": "2a49cfa2-925b-11e9-bb3a-6c96cfdcd6b9",
"success": false,
"code": 400,
"message": "Required attribute 'projectId' not specified",
"errorCode": "Invalid argument"
}
1.6. 错误码
可以通过错误返回结果中的code、errorCode和message字段了解错误分类和具体的错误原因。
该接口没有特殊错误码,错误码信息和简单的错误分析方法可以参考公共错误码。