创建实例(按量计费)

最近更新时间:2023-08-09 10:53:34

说明:

当前页面接口为旧版 API,未来可能停止维护,目前不展示在左侧导航。云服务器 API 3.0 版本接口定义更加规范,访问时延下降显著,建议使用 云服务器 API 3.0

1. 接口描述

本接口 (RunInstancesHour) 用于创建一个或多个指定配置的按量计费实例。
接口请求域名:cvm.api.qcloud.com

  • API 创建的实例遵循 购买约束 文档所描述的数量限制,和官网所创建的实例共用配额。
  • CPU 与内存具体的配比限制参见 实例规格
  • 实例的创建需要一定时间,本接口不会立刻返回实例结果。而是返回一个 InstanceId,在此期间可以通过 DescribeInstances 接口查询该实例的状态。如果状态由“创建中”变为“正在运行”,则为创建成功。
  • 实例创建成功后为“正在运行”的状态,无需再次调用 StartInstances 来启动。
  • 不支持带宽包用户购买按量计费实例。
  • 如需要更改带宽,请在实例创建成功后,使用接口 UpdateInstanceBandwidthHour 更改,公网带宽不指定默认为0
  • 本接口暂不支持在创建实例的同时绑定安全组,所创建的实例默认所有端口都放通,建议用户在创建实例之后使用ModifySecurityGroupsOfInstance 接口给对应云服务器关联的安全组。
  • 支持的实例类型:
机型 系列1 系列2
标准型 CVM.S1 CVM.S2
高IO型 CVM.I1 CVM.I2
内存型 CVM.M1 CVM.M2
计算型 CVM.C2

2. 输入参数

以下请求参数列表仅列出了接口请求参数,其它参数见 公共请求参数 页面。

参数名称 是否必选 类型 描述
zoneId Int 可用区 ID。
cpu Int CPU核数,具体限制见上。
mem Int 内存大小(GB),具体限制见上。
imageId String 镜像 ID。可通过 DescribeImages 接口(链接包含公共镜像名称ID对应表)返回字段中的 unImgId 获取。
storageSize Int 数据盘大小(GB)。最小调整步长为10G,此参数默认值为0,表示不购买数据盘。其所分配数据盘的类型与 storageType 所指定的一致。关于不同类型数据盘的特性与容量限制请参考 云硬盘
instanceType String 实例类型(例如高 IO 型等)。默认为CVM.S1。更多实例类型,可在上文查看“实例类型”一节。
imageType Int 镜像类型。1:私有镜像、2:公有镜像、3:镜像市场、4:共享镜像。默认为2。如果您指定非公有镜像的ImageId,则必须指定ImageType,如使用公有镜像,则无需ImageType参数。
bandwidthType String 带宽的类型。PayByHour:按带宽使用时长计费;PayByTraffic:按流量计费。 默认为按使用时长计费。网络计费模式的区别可以参看 公网计费模式
bandwidth Int 公网带宽(Mbps),当按流量计费时为公网带宽峰值。默认为0
wanIp Int 是否开通公网 IP。1:开通,0:不开通。bandwidth大于0,可自由选择开通与否,默认开通公网 IP;bandwidth为0,则不分配公网IP。
vpcId String 私有网络 ID。私有网络下为必填,不填则为基础网络。
subnetId String 子网 ID,私有网络下为必填(必须保证此subnetId在本可用区内)。
isVpcGateway Int 是否是 公网网关。0:非公网网关;1:公网网关;默认为0。公网网关只有在实例拥有公网IP以及处于私有网络下时才能正常使用。
storageType Int 硬盘类型。硬盘类型。1:本地硬盘、2:普通云硬盘、3:本地 SSD 硬盘;默认为本地硬盘。关于硬盘类型的选择请参考 云硬盘,可选硬盘类型受到实例类型(InstanceType)限制。另外允许购买的最大容量也因硬盘类型的不同而有所差异。
rootSize Int 系统盘大小(GB)。Linux/BSD 系统调整范围为20~50G,最小调整步长为10G,默认免费分配20G。Windows 不可调整,默认为免费分配50G。系统盘类型须与 storageType 所指定的一致。
password String 实例密码。未设置则为随机产生,并通过站内信下发。Linux实例密码必须8到16位,至少包括两项[a-z,A-Z]、[0-9] 和 [( ) ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ' , . ? / ]中的特殊符号。Windows 实例密码必须12到16位,至少包括三项[a-z],[A-Z],[0-9] 和 [( ) ~ ! @ # $ % ^ & * - + = { } [ ] : ; ' , . ? /]中的特殊符号。
keyId String 密钥 ID。关联密钥后可使用密钥登录实例,keyId 可通过接口 DescribeKeyPairs 获取,密钥与密码不能同时指定,同时 Windows 操作系统不支持指定密钥。
needSecurityAgent Int 开启 云安全服务。0:不开通,1:开通。默认开通。
needMonitorAgent Int 开启 腾讯云可观测平台服务。0:不开通,1:开通。默认开通。
projectId Int 项目 ID,不填为默认项目。
instanceName String 实例名称,可任意命名,但不得超过60个字符。默认为“未命名”。
goodsNum Int 购买实例数量。默认为1, 最大100。
clientToken String 保证此 API 幂等的Token,最多64字符。不同的 API 请求携带相同的 Token 视为同一请求,可以防止客户端请求API时因为网络异常而重试,导致多次创建实例的情况。
privateIpAddresses.n array of Strings 私有子网 IP 数组,目前只支持一个 IP。在创建实例、修改实例 VPC 属性操作中可使用此参数。

3. 输出参数

参数名称 类型 描述
code Int 公共错误码。0表示成功,其他值表示失败。详见错误码页面的 公共错误码
message String 模块错误信息描述,与接口相关。
unInstanceIds Array 系统自动生成实例的ID,命名格式为“ins-xxxxxxxx”,可使用此 ID 通过 DescribeInstances API 查询实例的详细信息。

4. 错误码

以下错误码表仅列出了该接口的业务逻辑错误码,更多公共错误码详见 CVM 错误码 页面。

错误码 描述
InvalidParameter.PasswordNotConformSpecs 密码不合规范
InvalidParameter.InvaildZoneId zoneId 不合法
InnerError.VpcError 内部错误 VPC
OperationConstraints.AccountBalanceNotEnough 您的余额不足,请先充值
OperationFail.SystemBusy 资源购买繁忙
InvalidParameter.InvalidIpFormat ip格式不正确
InvalidParameter.NotSupportReservedIp 保留 IP 不可使用
InvalidParameter.IpNotInCidrRange IP 不在子网内
InvalidParameter.IpInUse IP 已经被使用

5. 示例

输入

  https://cvm.api.qcloud.com/v2/index.php?Action=RunInstancesHour
  &imageId=img-3wnd9xpl
  &bandwidth=1
  &cpu=1
  &mem=2
  &storageType=1
  &storageSize=50
  &goodsNum=1
  &zoneId=100001
  &<公共请求参数>

输出

{
    "code": 0,
    "message": "ok",
    "unInstanceIds": [
        "xxxx1",
        "xxxx2"
    ]
}