创建实例

最近更新时间:2018-10-12 16:02:28

1. 接口描述

接口请求域名: cvm.tencentcloudapi.com 。

本接口 (RunInstances) 用于创建一个或多个指定配置的实例。

  • 实例创建成功后将自动开机启动,实例状态变为“运行中”。
  • 预付费实例的购买会预先扣除本次实例购买所需金额,按小时后付费实例购买会预先冻结本次实例购买一小时内所需金额,在调用本接口前请确保账户余额充足。
  • 本接口允许购买的实例数量遵循CVM实例购买限制,所创建的实例和官网入口创建的实例共用配额。
  • 本接口为异步接口,当创建请求下发成功后会返回一个实例ID列表,此时实例的创建并立即未完成。在此期间实例的状态将会处于“准备中”,可以通过调用 DescribeInstances 接口查询对应实例的状态,来判断创建有没有最终成功。如果实例的状态由“准备中”变为“运行中”,则为创建成功。

默认接口请求频率限制:10次/每秒。

注意:本接口支持金融区地域。由于金融区和非金融区是隔离不互通的,因此当公共参数 Region 为金融区地域(例如 ap-shanghai-fsi )时,需要同时指定带金融区地域的域名,最好和 Region 的地域保持一致,例如:cvm.ap-shanghai-fsi.tencentcloudapi.com 。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:RunInstances
Version String 公共参数,本接口取值:2017-03-12
Region String 公共参数,详见产品支持的地域列表
Placement Placement 实例所在的位置。通过该参数可以指定实例所属可用区,所属项目,专用宿主机(对于独享母机付费模式的实例创建)等属性。
ImageId String 指定有效的镜像ID,格式形如img-xxx。镜像类型分为四种:
  • 公共镜像
  • 自定义镜像
  • 共享镜像
  • 服务市场镜像

  • 可通过以下方式获取可用的镜像ID:
  • 公共镜像自定义镜像共享镜像的镜像ID可通过登录控制台查询;服务镜像市场的镜像ID可通过云市场查询。
  • 通过调用接口 DescribeImages ,取返回信息中的ImageId字段。
  • InstanceChargeType String 实例计费类型
  • PREPAID:预付费,即包年包月
  • POSTPAID_BY_HOUR:按小时后付费
  • CDHPAID:独享母机付费(基于专用宿主机创建,宿主机部分的资源不收费)
  • SPOTPAID:竞价付费
    默认值:POSTPAID_BY_HOUR。
  • InstanceChargePrepaid InstanceChargePrepaid 预付费模式,即包年包月相关参数设置。通过该参数可以指定包年包月实例的购买时长、是否设置自动续费等属性。若指定实例的付费模式为预付费则该参数必传。
    InstanceType String 实例机型。不同实例机型指定了不同的资源规格。

  • 对于付费模式为PREPAID或POSTPAID_BY_HOUR的实例创建,具体取值可通过调用接口DescribeInstanceTypeConfigs来获得最新的规格表或参见实例类型描述。若不指定该参数,则默认机型为S1.SMALL1。
  • 对于付费模式为CDHPAID的实例创建,该参数以"CDH_"为前缀,根据cpu和内存配置生成,具体形式为:CDH_XCXG,例如对于创建cpu为1核,内存为1G大小的专用宿主机的实例,该参数应该为CDH_1C1G。
  • SystemDisk SystemDisk 实例系统盘配置信息。若不指定该参数,则按照系统默认值进行分配。
    DataDisks.N Array of DataDisk 实例数据盘配置信息。若不指定该参数,则默认不购买数据盘。支持购买的时候指定11块数据盘,其中最多包含1块LOCAL_BASIC数据盘或者LOCAL_SSD数据盘,最多包含10块CLOUD_BASIC数据盘、CLOUD_PREMIUM数据盘或者CLOUD_SSD数据盘。
    VirtualPrivateCloud VirtualPrivateCloud 私有网络相关信息配置。通过该参数可以指定私有网络的ID,子网ID等信息。若不指定该参数,则默认使用基础网络。若在此参数中指定了私有网络ip,表示每个实例的主网卡ip,而且InstanceCount参数必须与私有网络ip的个数一致。
    InternetAccessible InternetAccessible 公网带宽相关信息设置。若不指定该参数,则默认公网带宽为0Mbps。
    InstanceCount Integer 购买实例数量。取值范围:[1,100]。默认取值:1。指定购买实例的数量不能超过用户所能购买的剩余配额数量,具体配额相关限制详见CVM实例购买限制
    InstanceName String 实例显示名称。
  • 不指定实例显示名称则默认显示‘未命名’。
  • 购买多台实例,如果指定模式串{R:x},表示生成数字[x, x+n-1],其中n表示购买实例的数量,例如server_{R:3},购买1台时,实例显示名称为server_3;购买2台时,实例显示名称分别为server_3server_4。支持指定多个模式串{R:x}
  • 购买多台实例,如果不指定模式串,则在实例显示名称添加后缀1、2...n,其中n表示购买实例的数量,例如server_,购买2台时,实例显示名称分别为server_1server_2
  • LoginSettings LoginSettings 实例登录设置。通过该参数可以设置实例的登录方式密码、密钥或保持镜像的原始登录设置。默认情况下会随机生成密码,并以站内信方式知会到用户。
    SecurityGroupIds.N Array of String 实例所属安全组。该参数可以通过调用 DescribeSecurityGroups 的返回值中的sgId字段来获取。若不指定该参数,则默认不绑定安全组。
    EnhancedService EnhancedService 增强服务。通过该参数可以指定是否开启云安全、云监控等服务。若不指定该参数,则默认开启云监控、云安全服务。
    ClientToken String 用于保证请求幂等性的字符串。该字符串由客户生成,需保证不同请求之间唯一,最大值不超过64个ASCII字符。若不指定该参数,则无法保证请求的幂等性。
    更多详细信息请参阅:如何保证幂等性。
    HostName String 云服务器的主机名。
  • 点号(.)和短横线(-)不能作为 HostName 的首尾字符,不能连续使用。
  • Windows 实例:名字符长度为[2, 15],允许字母(不限制大小写)、数字和短横线(-)组成,不支持点号(.),不能全是数字。
  • 其他类型(Linux 等)实例:字符长度为[2, 60],允许支持多个点号,点之间为一段,每段允许字母(不限制大小写)、数字和短横线(-)组成。
  • ActionTimer ActionTimer 定时任务。通过该参数可以为实例指定定时任务,目前仅支持定时销毁。
    DisasterRecoverGroupIds.N Array of String 容灾组id,仅支持指定一个。
    TagSpecification.N Array of TagSpecification 标签描述列表。通过指定该参数可以同时绑定标签到相应的资源实例,当前仅支持绑定标签到云主机实例。
    InstanceMarketOptions InstanceMarketOptionsRequest 实例的市场相关选项,如竞价实例相关参数,若指定实例的付费模式为竞价付费则该参数必传。
    UserData String 提供给实例使用的用户数据,需要以 base64 方式编码,支持的最大数据大小为 16KB。关于获取此参数的详细介绍,请参阅WindowsLinux启动时运行命令。

    3. 输出参数

    参数名称 类型 描述
    InstanceIdSet Array of String 当通过本接口来创建实例时会返回该参数,表示一个或多个实例ID。返回实例ID列表并不代表实例创建成功,可根据 DescribeInstances 接口查询返回的InstancesSet中对应实例的ID的状态来判断创建是否完成;如果实例状态由“准备中”变为“正在运行”,则为创建成功。
    RequestId String 唯一请求ID,每次请求都会返回。定位问题时需要提供该次请求的RequestId。

    4. 示例

    示例1 最简单参数的购买

    输入示例

    https://cvm.tencentcloudapi.com/?Action=RunInstances
    &Placement.Zone=ap-guangzhou-2
    &ImageId=img-pmqg1cw7
    &<公共请求参数>

    输出示例

    {
      "Response": {
        "InstanceIdSet": [
          "ins-1vogaxgk"
        ],
        "RequestId": "3c140219-cfe9-470e-b241-907877d6fb03"
      }
    }

    示例2 包年包月实例购买

    输入示例

    https://cvm.tencentcloudapi.com/?Action=RunInstances
    &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 按小时后付费实例购买

    输入示例

    https://cvm.tencentcloudapi.com/?Action=RunInstances
    &Placement.Zone=ap-guangzhou-2
    &InstanceChargeType=POSTPAID_BY_HOUR
    &ImageId=img-pmqg1cw7
    &InstanceType=S2.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"
      }
    }

    示例4 独享母机的实例购买

    输入示例

    https://cvm.tencentcloudapi.com/?Action=RunInstances
    &Placement.Zone=ap-guangzhou-2
    &Placement.HostIds.0=host-q88gab4i
    &InstanceChargeType=CDHPAID
    &ImageId=img-pmqg1cw7
    &InstanceType=CDH_1C1G
    &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-0s7wsh5x"
        ],
        "RequestId": "3c140219-cfe9-470e-b241-907877d6fb03"
      }
    }

    示例5 指定私有网络ip创建实例

    输入示例

    https://cvm.tencentcloudapi.com/?Action=RunInstances
    &InstanceType=S1.SMALL2
    &SystemDisk.DiskType=CLOUD_BASIC
    &SystemDisk.DiskSize=50
    &Placement.Zone=ap-hongkong-1
    &ImageId=img-dkwyg6sr
    &VirtualPrivateCloud.SubnetId=subnet-dcs9x3gz
    &VirtualPrivateCloud.VpcId=vpc-1urkhbj4
    &VirtualPrivateCloud.PrivateIpAddresses.0=10.0.0.18
    &VirtualPrivateCloud.PrivateIpAddresses.1=10.0.0.19
    &InstanceCount=2
    &<公共请求参数>

    输出示例

    {
      "Response": {
        "InstanceIdSet": [
          "ins-0s7wsh5x",
          "ins-03lw8hok"
        ],
        "RequestId": "3c14def19-cfes-470e-b241-90787u6jf5uj"
      }
    }

    5. 开发者资源

    API Explorer

    该工具提供了在线调用、签名验证、 SDK 代码生成和快速检索接口等能力,能显著降低使用云 API 的难度,推荐使用。

    SDK

    云 API 3.0 提供了配套的开发工具集( SDK ),支持多种编程语言,能更方便的调用 API 。

    命令行工具

    6. 错误码

    以下仅列出了接口业务逻辑相关的错误码,其他错误码详见公共错误码

    错误码 描述
    AccountQualificationRestrictions 该请求账户未通过资格审计。
    InstancesQuotaLimitExceeded 表示当前创建的实例个数超过了该账户允许购买的剩余配额数。
    InvalidClientToken.TooLong 指定的ClientToken字符串长度超出限制,必须小于等于64字节。
    InvalidHostId.NotFound 指定的HostId不存在,或不属于该请求账号所有。
    InvalidInstanceName.TooLong 指定的InstanceName字符串长度超出限制,必须小于等于60字节。
    InvalidInstanceType.Malformed 指定InstanceType参数格式不合法。
    InvalidParameter.InvalidIpFormat 指定的私有网络ip格式不正确。
    InvalidParameterCombination 表示参数组合不正确。
    InvalidParameterValue 无效参数值。参数值格式错误或者参数值不被支持等。
    InvalidParameterValue.Range 无效参数值。参数值取值范围不合法。
    InvalidPassword 无效密码。指定的密码不符合密码复杂度限制。例如密码长度不符合限制等。
    InvalidPeriod 无效时长。目前只支持时长:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 24, 36],单位:月。
    InvalidPermission 账户不支持该操作。
    InvalidZone.MismatchRegion 指定的zone不存在。
    MissingParameter 参数缺失。请求没有带必选参数。
    VpcAddrNotInSubNet 私有网络ip不在子网内。
    VpcIpIsUsed 私有网络ip已经被使用。

    如果有其他疑问,你也可以通过提问形式与我们联系探讨