说明:
1. 接口描述
本接口 (RunInstances) 用于创建一个或多个指定配置的实例。
接口请求域名:cvm.api.qcloud.com
实例创建成功后将自动开机启动,实例状态变为“运行中”。
预付费实例的购买会预先扣除本次实例购买所需金额,按小时后付费实例购买会预先冻结本次实例购买一小时内所需金额,在调用本接口前请确保账户余额充足。
本接口允许购买的实例数量遵循 CVM 实例购买限制,所创建的实例和官网入口创建的实例共用配额。
本接口为异步接口,当创建请求下发成功后会返回一个实例
ID
列表,此时实例的创建并立即未完成。在此期间实例的状态将会处于“准备中”,可以通过调用 DescribeInstancesStatus 接口查询对应实例的状态,来判断生产有没有最终成功。如果实例的状态由“准备中”变为“运行中”,则为创建成功。2. 输入参数
名称 | 类型 | 是否必选 | 描述 |
Version | String | 是 | 表示 API 版本号,主要用于标识请求的不同 API 版本。 本接口第一版本可传:2017-03-12。 |
InstanceChargeType | String | 否 | PREPAID:预付费,即包年包月 POSTPAID_BY_HOUR:按小时后付费 默认值:POSTPAID_BY_HOUR。 |
InstanceChargePrepaid | InstanceChargePrepaid object | 否 | 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。 |
Placement | Placement object | 是 | 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目等属性。 |
InstanceType | String | 否 | 实例机型。不同实例机型指定了不同的资源规格,具体取值可通过调用接口 DescribeInstanceTypeConfigs 来获得最新的规格表或参见 实例类型 描述。若不指定该参数,则默认机型为 S1.SMALL1。 |
ImageId | String | 是 | 指定有效的镜像 ID,格式形如 img-xxx 。镜像类型分为四种:公共镜像 自定义镜像 共享镜像 服务市场镜像 可通过以下方式获取可用的镜像 ID: 通过调用接口 DescribeImages,取返回信息中的 ImageId 字段。 |
SystemDisk | SystemDisk object | 否 | 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。 |
DataDisks.N | 否 | 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘,当前仅支持购买的时候指定一个数据盘。 | |
VirtualPrivateCloud | VirtualPrivateCloud object | 否 | 私有网络相关信息配置。通过该参数可以指定私有网络的 ID,子网 ID 等信息。若不指定该参数,则默认使用基础网络。若在此参数中指定了私有网络 IP,那么InstanceCount参数只能为1。 |
InternetAccessible | InternetAccessible object | 否 | 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。 |
InstanceCount | Integer | 否 | |
InstanceName | String | 否 | 实例显示名称。如果不指定则默认显示"未命名"。最大长度不能超60个字节。 |
LoginSettings | LoginSettings object | 否 | 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。 |
SecurityGroupIds.N | array of Strings | 否 | 实例所属安全组。该参数可以通过调用 DescribeSecurityGroups 的返回值中的 sgId 字段来获取。若不指定该参数,则默认不绑定安全组。不绑定安全组将暴露所有端口到公网和内网,实例的所有业务(如80、443等端口)将均可被访问,但会有一定的安全风险,建议选择按需新建的安全组。当前仅支持购买的时候指定一个安全组。 |
EnhancedService | EnhancedService object | 否 | 增强服务。通过该参数可以指定是否开启云安全、腾讯云可观测平台等服务。若不指定该参数,则默认开启腾讯云可观测平台、云安全服务。 |
ClientToken | String | 否 | 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个 ASCII 字符。若不指定该参数,则无法保证请求的幂等性。 |
3. 输出参数
参数名称 | 类型 | 描述 |
InstanceIdSet | array of Strings | 当通过本接口来创建实例时会返回该参数,表示一个或多个实例 ID 。返回实例ID 列表并不代表实例创建成功,可根据 DescribeInstancesStatus 接口查询返回的 InstancesSet 中对应实例的ID 的状态来判断创建是否完成;如果实例状态由“准备中”变为“正在运行”,则为创建成功。 |
RequestId | String | 唯一请求 ID。每次请求都会返回一个唯一的 RequestId,当客户调用接口失败找后台研发人员处理时需提供该RequestId 具体值。 |
接口执行正常返回参数示例
{"Response": {"InstanceIdSet": ["xxx1","xxx2"],"RequestId": "eac6b301-a322-493a-8e36-83b295459397"}}
接口执行异常返回参数示例
{"Response": {"Error": {"Code": "AuthFailure","Message": "qcloud was not able to validate the provided access credentials"},"RequestId": "eac6b301-a322-493a-8e36-83b295459397"}}
4. 错误码
错误码 | 描述 |
InvalidParameterValue | 无效参数值。参数值格式错误或者参数值不被支持等。 |
InvalidParameterValue.Range | 表示参数取值范围不合法。 |
InvalidParameterCombination | 表示参数组合不正确。 |
MissingParameter | 参数缺失。该请求涉及的必选参数缺失。 |
InvalidPermission | 账户权限限制,无法进行该操作。 |
AccountQualificationRestrictions | 该请求账户未通过资格审计。 |
InvalidZone.MismatchRegion | 指定的可用区 ID 不合法或不属于指定 Region 底下的可用区。 |
InvalidHostId.NotFound | 指定的 HostId 不存在,或不属于该请求账号所有。 |
InvalidPeriod | 指定的购买时长不在合理取值范围内。 |
InvalidInstanceType.Malformed | |
InstancesQuotaLimitExceeded | 表示当前创建的实例个数超过了该账户允许购买的剩余配额数。 |
InvalidInstanceName.TooLong | |
InvalidPassword | 表示指定的密码复杂度符合限制要求。 |
InvalidClientToken.TooLong | 指定的 ClientToken 字符串长度超出限制,必须小于等于64字节。 |
VpcAddrNotInSubNet | 私有网络 IP 不在子网内 |
VpcIpIsUsed | 私有网络 IP 已经被使用 |
5. 示例
示例1
Note:
最简单参数的购买:
只传必传的 Zone 和镜像 ID,其他均采用系统默认值,具体配置如下:实例所在位置为广州二区,镜像 ID 为:img-pmqg1cw7。
请求参数
https://cvm.api.qcloud.com/v2/index.php?Action=RunInstances&Version=2017-03-12&Placement.Zone=ap-guangzhou-2&ImageId=img-pmqg1cw7
返回参数
{"Response": {"InstanceIdSet": ["ins-1vogaxgk"],"RequestID": "3c140219-cfe9-470e-b241-907877d6fb03"}}
示例2
说明:
包年包月实例购买:
实例所在位置为广州二区,付费模式为包年包月,购买一个月,到期自动续费,镜像 ID 为:img-pmqg1cw7,选择机型为:1C1G 标准型(S1.SMALL1),50G大小本地普通系统盘,带100G大小本地普通数据盘,基础网络,公网付费模式为流量按小时后付费,外网带宽上限10Mbps,分配公网 IP,实例命名为 QCLOUD-TEST,设置登录密码为
Qcloud@TestApi123++
,安装腾讯云可观测平台云安全,购买数量为1台。请求参数
https://cvm.api.qcloud.com/v2/index.php?Action=RunInstances&Version=2017-03-12&Placement.Zone=ap-guangzhou-2&InstanceChargeType=PREPAID&InstanceChargePrepaid.Period=1&InstanceChargePrepaid.RenewFlag=NOTIFY_AND_AUTO_RENEW&ImageId=img-pmqg1cw7&InstanceType=S1.SMALL1&SystemDisk.DiskType=LOCAL_BASIC&SystemDisk.DiskSize=50&DataDisks.0.DiskType=LOCAL_BASIC&DataDisks.0.DiskSize=100&InternetAccessible.InternetChargeType=TRAFFIC_POSTPAID_BY_HOUR&InternetAccessible.InternetMaxBandwidthOut=10&InternetAccessible.PublicIpAssigned=TRUE&InstanceName=QCLOUD-TEST&LoginSettings.Password=Qcloud@TestApi123++&EnhancedService.SecurityService.Enabled=TRUE&EnhancedService.MonitorService.Enabled=TRUE&InstanceCount=1
返回参数
{"Response": {"InstanceIdSet": ["ins-bfw5zq3y"],"RequestID": "3c140219-cfe9-470e-b241-907877d6fb03"}}
示例3
说明:
按小时后付费实例购买:
实例所在位置为广州二区,付费模式为按小时后付费,镜像ID为:img-pmqg1cw7,选择机型为:1C1G 标准型(S1.SMALL1),50G大小本地普通系统盘,带100G大小本地普通数据盘,基础网络,公网付费模式为流量按小时后付费,外网带宽上限10Mbps,分配公网 IP,实例命名为 QCLOUD-TEST,设置登录密码为
Qcloud@TestApi123++
,安装腾讯云可观测平台云安全,购买数量为1台。请求参数
https://cvm.api.qcloud.com/v2/index.php?Action=RunInstances&Version=2017-03-12&Placement.Zone=ap-guangzhou-2&InstanceChargeType=POSTPAID_BY_HOUR&ImageId=img-pmqg1cw7&InstanceType=S1.SMALL1&SystemDisk.DiskType=LOCAL_BASIC&SystemDisk.DiskSize=50&DataDisks.0.DiskType=LOCAL_BASIC&DataDisks.0.DiskSize=100&InternetAccessible.InternetChargeType=TRAFFIC_POSTPAID_BY_HOUR&InternetAccessible.InternetMaxBandwidthOut=10&InternetAccessible.PublicIpAssigned=TRUE&InstanceName=QCLOUD-TEST&LoginSettings.Password=Qcloud@TestApi123++&EnhancedService.SecurityService.Enabled=TRUE&EnhancedService.MonitorService.Enabled=TRUE&InstanceCount=1
返回参数
{"Response": {"InstanceIdSet": ["ins-32kcaqoa"],"RequestID": "3c140219-cfe9-470e-b241-907877d6fb03"}}