调用CreateInstance创建一台预付费实例。此接口可用RunInstances替代,后续CreateInstance不再迭代新功能。
接口说明
单用户调用频率:10 次/秒。
由于创建实例是异步操作,建议您适当增加请求时间。当 API 返回 Code=0 时仅代表请求成功,并不代表成功创建实例,在请求成功时会返回实例 ID,然后您可以根据实例 ID 查询实例是否创建成功。
InvalidUserData.NotInWhiteList 接口限制条件:只有配置了购买权限的相关白名单才可以进行创建,否则报错。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
调试
授权信息
|
操作 |
访问级别 |
资源类型 |
条件关键字 |
关联操作 |
|
ens:CreateInstance |
create |
*Instance
|
无 | 无 |
请求参数
|
名称 |
类型 |
必填 |
描述 |
示例值 |
| InstanceType |
string |
是 |
实例规格。 实例规格详情请参见使用限制。 |
ens.se1.tiny |
| EnsRegionId |
string |
是 |
地域。 |
cn-hangzhou |
| Password |
string |
否 |
实例的密码。 长度为 8 至 30 个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。可以设置以下特殊符号: |
yourPassword:1 |
| Period |
string |
是 |
购买资源的时长,取值范围:1~9 和 12,单位:月。 |
12 |
| ImageId |
string |
否 |
镜像文件 ID,启动实例时选择的镜像资源。 |
yourImage ID |
| SystemDisk.Size |
string |
否 |
系统盘大小,单位:GiB。取值须为 10 的倍数且不能小于镜像大小;有效范围请以 DescribeAvailableResourceInfo 返回的 SystemDiskMinSize 和 SystemDiskMaxSize 为准。20 GiB 和 40 GiB 是常用配置,不表示仅支持这两个值。 |
40 |
| Quantity |
string |
是 |
实例数量。 |
1 |
| DataDisk.1.Size |
string |
否 |
第一块数据盘的容量大小,单位为 GiB,容量至少为 20 GiB 且为 10 的倍数。 |
50 |
| InternetChargeType |
string |
否 |
如果您第一次创建该参数为必传。如果已有实例资源,则默认按照已存在的计费方式。取值:
|
95BandwidthByMonth |
| AutoRenewPeriod |
string |
否 |
每次自动续费的时长,当参数 AutoRenew 取值 True 时为必填。取值:1~12,单位:月。 |
12 |
| AutoRenew |
string |
否 |
是否要自动续费。取值:True|False(默认值)。 |
True |
| IpType |
string |
否 |
IP 类型。取值:
枚举值:
|
ipv4 |
| KeyPairName |
string |
否 |
密钥对名称。仅支持传单个名称。 |
TestKeyPairName |
| UserData |
string |
否 |
自定义数据,以 您可传入自定义数据。数据以 Base64 的方式编码。调用 API 发起请求时,不会加密您设置的自定义数据,建议您不要以明文方式传入机密的信息,例如:密码和私钥等。如果需要传入密码和私钥等内容,请您对内容进行加密后,然后以 Base64 的方式编码后再传入。在实例内部以同样的方式反解密。 详情请参见数据格式。 |
#!/bin/sh echo "Hello World. The time is now $(date -R)!" | tee /home/output.txt |
| VSwitchId |
string |
否 |
交换机 ID。 |
YourVSwitchId |
| PrivateIpAddress |
string |
否 |
内网地址。 如果传了内网地址,则 vSwitch 必传。vSwitch 需要先创建好,否则会报错。 |
10.10.10.10 |
| PaymentType |
string |
否 |
支付方式。目前为固定值 Subscription:预付费实例,暂不支持修改。 枚举值:
|
Subscription |
| InstanceName |
string |
否 |
实例的名称。命名规则如下所示:
如果没有指定该参数,默认值为实例的 InstanceId。 |
test:Instance_Name.1-2 |
| HostName |
string |
否 |
云服务器的主机名。 通用命名规则:英文句号(.)和短横线(-)不能作为首尾字符,更不能连续使用。 具体实例命名规则如下:
|
test-HostName |
| UniqueSuffix |
boolean |
否 |
是否为 HostName 和 InstanceName 添加有序后缀。有序后缀从 001 开始递增,最大不能超过 999。 例如:LocalHost001,LocalHost002 和 MyInstance001,MyInstance002。 默认值:false。 |
false |
| PublicIpIdentification |
boolean |
否 |
公网 IP 是否可以分配给指定实例。取值:
|
true |
| PasswordInherit |
boolean |
否 |
是否使用镜像预设的密码。取值:
|
false |
返回参数
|
名称 |
类型 |
描述 |
示例值 |
|
object |
|||
| RequestId |
string |
请求 ID。 |
4A431388-2D4B-46F4-A96B-D4E6BD0688C1 |
| InstanceIds |
object |
||
| InstanceId |
array |
实例 ID 列表。 |
|
|
string |
实例 ID 列表。 |
[i-7ecpqvkicnchxccozrp****,i-6ecpqvkicnchxccozrp****] |
|
| Code |
integer |
返回码,成功返回 0。 说明
如果您通过 SDK 方式调用该 API 会返回 Integer 类型,通用方式或者 HTTP 方式调用会返回字符串类型。 |
0 |
示例
正常返回示例
JSON格式
{
"RequestId": "4A431388-2D4B-46F4-A96B-D4E6BD0688C1",
"InstanceIds": {
"InstanceId": [
"[i-7ecpqvkicnchxccozrp****,i-6ecpqvkicnchxccozrp****]"
]
},
"Code": 0
}
错误码
|
HTTP status code |
错误码 |
错误信息 |
描述 |
|---|---|---|---|
| 400 | StockNotEnough | The specified instance type has insufficient resource. | |
| 400 | InvalidUserData.NotInWhiteList | The specified user is not authroized to perform this operation. | |
| 400 | MissingParameter | The input parameter that is mandatory for processing this request is not supplied. | |
| 400 | InstanceIdNotFound | The input parameter instancdId that is not found. | 指定的实例ID不存在。 |
| 400 | NoPermission | Permission denied. | |
| 400 | CallInterface | Call Interface Happen Error. | 接口调用出错。 |
| 400 | InvalidParameter | The input parameter is Invalid. | |
| 400 | InvalidParameter.%s | The specified field %s invalid. Please check it again. | |
| 400 | InvalidDiskSize.ValueNotSupported | The specified disk capacity is invalid. Specify another capacity and try again. | |
| 400 | InvalidParameter.Bandwidth | The specified parameter InternetChargeType is not valid. | |
| 400 | InvalidParameter.Image | The specified image does not support. | |
| 400 | InvalidParameter.InstanceType | The specified parameter InstanceType is not valid. | |
| 400 | InvalidAccountStatus.NotEnoughBalance | Your account does not have enough balance. | |
| 400 | unsupported_Ipv6Feature | This ensregion does not support creating instance of the IPv6 type. Select another type. | |
| 400 | Forbidden.CreateInstance | The user is not in the Goods whitelist of creating instance interface. | |
| 400 | ENS_OperationUnsupported_KeyPairName | The KeyPairNameis not available or image not support ssh key. | |
| 400 | ENS_DependencyViolation_WindowsInstance | The instance creating is window, only user password to login. | |
| 400 | ENS_PASSWORDORKEYPAIRNAME_MODULE_NOT_CHOOSEN | The required module pwd or keyPairName is not inputed | |
| 400 | InvalidPrivateIpAddress | Specified private IP address is not in the CIDR block of virtual switch. | |
| 400 | InvalidVSwitchId.NotFound | Specified virtual switch does not exist. | 指定的虚拟交换机 ID 不存在。 |
| 400 | InvalidPrivateIpAddress.Duplicated | Specified private IP address is duplicated. | |
| 400 | InvalidPasswordParam.Mismatch | The input password should be null when passwordInherit is true. |
访问错误中心查看更多错误码。
变更历史
更多信息,参考变更详情。