实例相关接口

创建实例

前提条件

创建实例需要实名认证,没有通过实名认证的可以前往百度智能云官网控制台中的安全认证下的实名认证中进行认证。

BCC实例

  • 本接口用于创建一个或多个虚拟机实例。
  • 创建计费方式为后付费的实例需要账户现金余额+通用代金券大于100;预付费方式的实例则需要账户现金余额大于等于实例费用。
  • 支持批量创建,且如果创建过程中有一个实例创建失败,所有实例将全部回滚,均创建失败,如果创建时包含CDS,CDS也会回滚。
  • 创建实例时可以指定系统盘大小,指定系统盘大小范围为[40, 500]GB,默认使用免费赠送的40GB的hp1型CDS作为系统盘。可指定系统盘磁盘类型可参见StorageType
  • 百度智能云免费赠送40GB系统盘,超过40GB免费额度按照对应的CDS云磁盘收费。
  • 创建实例时添加的本地磁盘在创建之后无法更改,且不支持单独创建或添加本地磁盘。
  • 本地磁盘不支持挂载、卸载、删除。
  • 创建CDS磁盘和本地磁盘时,磁盘大小限制为5的倍数。
  • 缺省情形下,一个实例最多只能挂载5个云磁盘。
  • BCC实例的本地磁盘最大不能超过500G。
  • BCC实例支持用户自定义安全组和子网,两者需要同时指定在同一个VPC下。如果未指定安全组和子网,在创建专属实例时会自动加入系统默认的安全组和子网内。
  • 指定公网IP带宽创建,计费方式为按照带宽计费。
  • 预付费方式创建时,只支持单独创建实例,不支持组合创建磁盘和带宽。
  • 创建接口为异步创建,可通过查询指定实例详情接口查询实例状态。
  • 可通过该接口指定专属服务器创建实例,专属实例不参与计费。专属实例只能通过ephemeralDisks创建临时盘并指定磁盘类型。
  • 每个实例最多只能购买一块临时数据盘,临时数据盘默认只有hp1类型。
  • 通过instanceType字段指定需要创建的虚机类型,目前API支持创建的虚机类型参见InstanceType。参数instanceTypecpuCountmemoryCapacityInGB可以确定需要的机型以及配置。
  • 创建存储优化型实例时必须购买临时数据盘,通过ephemeralDisks指定临时盘数据盘大小,默认nvme类型数据盘,无需指定。
  • 同一实例不可以同时购买GPU卡和FPGA卡,购买带有GPU卡或FPGA卡的实例时必须通过cardCount指定要购买的虚机所携带的GPU卡或FPGA卡数量。
  • 购买带有GPU卡或FPGA卡虚机时,随着所携带GPU卡或FPGA卡数量、类型的不同,请求中所需购买的CPU核数(cpuCount)、内存大小(memoryCapacityInGB)、本地磁盘类型和大小(ephemeralDisks)应为空或者满足GPU型BCC可选规格配置FPGA型BCC可选规格配置中的要求。

DCC专属实例

本接口也用于在专属服务器上创建实例在创建 DCC 专属实例时,以下操作可能与您的业务相关:

  • 专属实例不参与计费。
  • 本接口用于创建一个或多个专属实例。
  • 支持批量创建,且如果创建过程中有一个专属实例创建失败,所有实例将全部回滚,均创建失败,如果创建时包含CDS,CDS也会回滚。
  • 专属实例支持创建、添加本地磁盘。
  • 本地磁盘不支持挂载、卸载、删除。
  • DCC允许用户自定义专属实例的cpu和内存等参数,所创建的专属实例资源将会使用DCC的资源。
  • 专属实例只能通过ephemeralDisks创建临时盘并指定磁盘类型。
  • 专属实例支持用户自定义安全组和子网,两者需要同时指定在同一个VPC下。如果未指定安全组和子网,在创建专属实例时会自动加入系统默认的安全组和子网内。

请求结构

POST /v{version}/instance?clientToken={clientToken} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

{
    "instanceType": instanceType,
    "cpuCount": cpuCoreCount,
    "memoryCapacityInGB": memoryCapacityInGB,
    "ephemeralDisks": [
    {
        "storageType": storageType,
        "sizeInGB": size
    },
    {
        "storageType": storageType,
        "sizeInGB": size
    }
    ],
    "createCdsList": [
        {
            "storageType": storageType,
            "cdsSizeInGB": cdsSizeInGB
        }
    ],
    "name": "name",
    "imageId": "imageId",
    "localDiskSizeInGB": localDiskSizeInGB,
    "networkCapacityInMbps": networkCapacityInMbps,
    "dedicatedHostId": dedicatedHostId,
    "purchaseCount": purchaseCount,
    "billing":{
        "paymentTiming": paymentTiming,
        "reservation": {
            "reservationLength": reservationLength
        }
    },
    "zoneName": zoneName,
    "subnetId": subnetId,
    "securityGroupId": securityGroupId
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号。
clientToken String Query参数 幂等性Token,是一个长度不超过64位的ASCII字符串。
imageId String RequestBody参数 待创建虚拟机实例的镜像ID,
可通过调用查询镜像列表接口选择获取所需镜像ID。
billing Billing RequestBody参数 订单、计费相关参数
instanceType String RequestBody参数 待创建虚拟机实例的类型,具体可选类型参见下述InstanceType,为空时使用默认虚机类型
cpuCount int RequestBody参数 待创建虚拟机实例的CPU核数
memoryCapacityInGB int RequestBody参数 待创建虚拟机实例的内存容量,单位GB,可选配置请参考区域机型以及可选配置
rootDiskSizeInGb int RequestBody参数 待创建虚拟机实例的系统盘大小,单位GB,默认是40GB,范围为[40, 100]GB,超过40GB按照云磁盘价格收费。注意指定的系统盘大小需要满足所使用镜像最小磁盘空间限制。
rootDiskStorageType String RequestBody参数 待创建虚拟机实例系统盘介质,默认使用hp1型云磁盘,可指定系统盘磁盘类型可参见StorageType
localDiskSizeInGB int RequestBody参数 [已废弃]待创建虚拟机实例的临时数据盘大小(不含系统盘,系统盘为免费赠送),单位为GB,大小为0~500G,请采用ephemeralDisks字段。
ephemeralDisks List<EphemeralDisk> RequestBody参数 DCC实例可以创建多块本地盘,需要指定磁盘类型以及大小。其他类型BCC最多只能使用一块本地盘,使用默认磁盘类型,需要指定磁盘大小。FPGA实例以及GPU实例默认使用一块本地磁盘,根据配置指定本地盘大小,具体请参考GPU型BCC可选规格配置 以及FPGA型BCC可选规格配置
createCdsList List<CreateCdsModel> RequestBody参数 待创建的CDS磁盘列表,具体数据格式参见下述CreateCdsModel
networkCapacityInMbps int RequestBody参数 公网带宽,单位为Mbps。必须为0~200之间的整数,
为0表示不分配公网IP,默认为0Mbps。
dedicatedHostId int RequestBody参数 专属服务器DCC id,指定虚机置放位置时指定该值。
purchaseCount int RequestBody参数 批量创建(购买)的虚拟机实例个数
必须为大于0的整数,可选参数,缺省为1。如果设置值为2以上,则代表创建相同配置的2或多台虚拟机实例。
name String RequestBody参数 虚拟机名字(可选)。默认都不指定name。如果指定name:批量时name作为名字的前缀。后端将加上后缀,后缀生成方式:name{ -序号}。如果没有指定name,则自动生成,方式:{instance-八位随机串-序号}。注:随机串从0~9a~z生成;序号按照count的数量级,依次递增,如果count为100,则序号从000~100递增,如果为10,则从00~10递增。支持大小写字母、数字、中文以及-_ /.特殊字符,必须以字母开头,长度1-65。
adminPass String RequestBody参数 待指定的实例管理员密码,8-16位字符,英文,数字和符号必须同时存在,符号仅限!@#$%^*(),密码需要加密传输,详见链接
zoneName String RequestBody参数 指定zone信息,默认为空,由系统自动选择,
可通过调用查询可用区列表接口查询可用区列表。
zoneName命名规范是小写的“国家-region-可用区序列",
例如北京可用区A为"cn-bj-a"。
专属实例使用专属服务器所在zone,无需指定该字段。
subnetId String RequestBody参数 指定子网,为空时将使用默认子网
securityGroupId String RequestBody参数 指定安全组,为空时将使用默认安全组
gpuCard String RequestBody参数 待创建实例所要携带的GPU卡信息,具体可选信息参照GpuType,非GPU型实例无需指定此字段
fpgaCard String RequestBody参数 待创建实例所要携带的FPGA卡信息,具体可选信息参照FpgaType,非FPGA型实例无需指定此字段
cardCount String RequestBody参数 待创建实例所要携带的GPU卡或FPGA卡数量,仅在gpuCard或fpgaCard字段不为空时有效,且需要满足GPU型实例可选规格配置FPGA型实例可选规格配置中的要求

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 类型 描述
instanceIds List 虚机实例ID的集合,其中ID符合BCE规范,必须是一个定长字符串,且只允许包含大小写字母、数字、连字号(-)和下划线(_)。

错误码

错误码 错误描述 HTTP状态码 中文解释
Instance.InvalidateRootDiskStorageType Invalidate root disk storage type. 400 无效的系统盘介质
Instance.InstanceBeBanned The instance is banned, contact technical support for assistance. 403 Bcc服务已被封禁
Instance.GlobalInstanceQuotaLimitExceeded Quota exceeds limit for regional postpaid instances pool, contact technical support for further assistance. 413 后付费类型的虚机数目超出当前区域预售额度限制
Instance.InstanceQuotaLimitExceeded Quota exceeds limit. 413 实例个数超过限制
Instance.EipQuotaLimitExceeded The number of eip will exceed the limit. 413 合并购买时eip个数超过限制
Instance.InvalidateConfiguration Invalidate cpu memory configuration. 400 无效的虚机配置
Instance.InsufficientRootDiskSize Not enough root disk size. 400 使用镜像过大,系统盘大小不够

创建BCC实例请求示例

POST /v2/instance?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json    
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "instanceType": "N1",
    "cpuCount": 2,
    "memoryCapacityInGB": 2,
    "rootDiskSizeInGb":45,
    "rootDiskStorageType":"cloud_hp1",
    "createCdsList": [
        {
            "storageType": "std1",
            "cdsSizeInGB": 5
        }
    ],
    "name": "example",
    "imageId": "m-mRjO3cjs",
    "localDiskSizeInGB": 5,
    "networkCapacityInMbps": 0,
    "purchaseCount": 1,
    "billing":{
        "paymentTiming":"Prepaid",
        "reservation": {
            "reservationLength": 1
        }
    }
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{

    "instanceIds": [

        "i-T1I3OtUO"

    ]

}

请求示例(GPU型实例创建)

POST /v2/instance?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json    
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
  "instanceType": "G1",
  "gpuCard": "P4",
  "cardCount": 2,
  "cpuCount": 24,
  "memoryCapacityInGB": 80,
  "createCdsList": [
   {
  "storageType": "std1",
  "cdsSizeInGB": 5
   }
  ],
  "name": "example",
  "imageId": "m-Rx1dCMFF",
  "networkCapacityInMbps": 0,
  "purchaseCount": 1,
  "billing": {
"paymentTiming": "Prepaid",
"reservation": {
  "reservationLength": 1
   }
  }
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{
    "instanceIds": [
        "i-T1I3OtUO"
    ]
}

创建专属实例请求示例

POST /v2/instance?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json    
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "cpuCount": 1,
    "memoryCapacityInGB": 2,
    "ephemeralDisks": [
        {
            "storageType": "sata",
            "sizeInGB": 1024
        },
        {
            "storageType": "sata",
            "sizeInGB": 1024
        }
    ],
    "name": "example",
    "imageId": "m-mRjO3cjs",
    "networkCapacityInMbps": 0,
    "dedicatedHostId": "d-YufwpQAe",
    "purchaseCount": 1
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Tue, 06 Sep 2016 10:08:44 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{
    "instanceIds": [
        "i-T1I3OtUO"
    ]
}

查询实例列表

查询所有实例的详细信息。

请求结构

GET /v{version}/instance?marker={marker}&maxKeys={maxKeys}&internalIp={internalIp} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
marker String Query参数 批量获取列表的查询的起始位置,是一个由系统生成的字符串
maxKeys int Query参数 每页包含的最大数量,最大数量通常不超过1000,缺省值为1000。
internalIp String Query参数 内网IP
dedicatedHostId String Query参数 专属服务器id
zoneName String Query参数 可用区信息

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 类型 描述
marker String 标记查询的起始位置
isTruncated boolean true表示后面还有数据,false表示已经是最后一页
nextMarker String 获取下一页所需要传递的marker值。当isTruncated为false时,该域不出现
maxKeys int 每页包含的最大数量
instances List<InstanceModel> 实例信息,由 InstanceModel 组成的集合

请求示例

GET /v2/instance?marker=i-IyWRtII7&maxKeys=1 HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{
    "nextMarker": "i-xktdeMSf",
    "marker": "i-IyWRtII7",
    "maxKeys": 1,
    "isTruncated": true,
    "instances": [
        {
            "id": "i-IyWRtII7",
            "createTime": "2015-08-06T13:23:13Z",
            "name": "instance-j93wzbn1",
            "instanceType": "N1",
            "status": "Running",
            "desc": "console",
            "paymentTiming":"Postpaid",
            "expireTime": null,
            "internalIp": "192.168.6.15",
            "publicIp": "-",
            "cpuCount": 1,
            "memoryCapacityInGB": 1,
            "localDiskSizeInGB": 0,
            "networkCapacityInMbps": 1,
            "imageId": "m-3zfBY1Ku",
              "placementPolicy": "default",
              "zoneName": "cn-bj-a"
        }
    ]
}

查询指定实例详情

查询指定实例的详细信息。

请求结构

GET /v{version}/instance/{instanceId} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 待查询的实例ID

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 类型 描述
instance InstanceModel 返回的实例详情

请求示例

GET /v2/instance/i-YufwpQAe HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{
    "instance": {
        "id": "i-YufwpQAe",
        "createTime": "2015-07-09T10:27:15Z",
        "name": "instance-luz2ef4l-1",
        "instanceType": "N1",
        "status": "Stopped",  
        "desc": "console",
        "paymentTiming":"Postpaid",
        "expireTime": null,
        "internalIp": "192.168.0.25",
        "publicIp": "-",
        "cpuCount": 1,
        "memoryCapacityInGB": 1,
        "localDiskSizeInGB": 0,
        "networkCapacityInMbps": 5,
        "imageId": "m-nky7qeom",
        "placementPolicy": "default",
        "zoneName": "cn-bj-a”,
        "subnetId": "sbn-oioiadda',
        "vpcId": "vpc-i80sab3o'
    }
}

启动实例

启动指定实例。

  • 实例状态必须为Stopped,调用此接口才可以成功返回,否则提示409错误。
  • 接口调用成功后实例进入Starting状态。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 待启动的实例ID
action String Query参数 对实例执行的动作,本接口中该参数取值start

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
Instance.StartInstanceOperationForbidden Instance not stopped when starting. 409 只有 Stopped 状态的实例才可以进行开启

请求示例

PUT /v2/instance/i-YufwpQAe?start HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

停止实例

停止指定实例。

  • 系统后台会在实例实际Stop成功后进入“已停止”状态。
  • 只有状态为Running的实例才可以进行此操作,否则提示409错误。
  • 实例支持强制停止,强制停止等同于断电处理,可能丢失实例操作系统中未写入磁盘的数据。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
    "forceStop":forceStop
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 待启动的实例ID
action String Query参数 对实例执行的动作,本接口中该参数取值stop
forceStop Boolean Request Body参数 指定实例是否强制关机,可选值:true,false 缺省为false

返回头域

除公共头域,无其它特殊头域

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
Instance.StopInstanceOperationForbidden Instance not running when shutting down 409 只有 Running 状态的实例才可以进行关机

请求示例

PUT /v2/instance/i-YufwpQAe?stop HTTP/1.1   
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "forceStop":false
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

重启实例

重启指定实例。

  • 只有状态为Running的实例才可以进行此操作,否则提示409错误。
  • 接口调用成功后实例进入Starting状态。
  • 支持强制重启,强制重启等同于传统服务器的断电重启,可能丢失实例操作系统中未写入磁盘的数据。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
    "forceStop":forceStop
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 待启动的实例ID
action String Query参数 对实例执行的动作,本接口中该参数取值reboot
forceStop boolean Request Body参数 是否强制停止实例,可选值true,false,缺省为false

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
Instance.RebootInstanceOperationForbidden Instance not running when rebooting. 409 只有 Running 状态的实例才可以进行重启

请求示例

PUT /v2/instance/i-YufwpQAe?reboot HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Date: Wed, 01 Mar 2006 12:00:00 GMT
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "forceStop": true
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

修改实例密码

修改指定虚机的管理员密码

  • 只有Running和Stopped状态的实例才可以用调用接口,否则提示409错误。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
    "adminPass": adminPass
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 指定的实例ID
action String Query参数 对实例执行的动作,当前取值changePass
adminPass String Request Body参数 待指定的实例管理员密码,8-32位字符,英文,数字和符号必须同时存在,符号仅限!@#$%^*(),密码需要加密传输,详见密码加密传输规范定义

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
Instance.PasswordOperationForbidden Instance not stopped when changing password. 409 只有 Stopped 状态的实例才可以修改密码

请求示例

PUT /v2/instance/i-YufwpQAe?changePass HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "adminPass": "c5b31add-ffe0-44b0-86eb-063109a1b6fe"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

修改实例属性

修改指定虚机的属性,目前仅支持修改实例名称;

只有 Running 和 Stopped 状态的实例才可以调用该接口,否则提示 409 错误。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

{
    "name": InstanceName
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 指定的实例ID
action String Query参数 对实例执行的动作,当前取值modifyAttribute。
name String Request Body参数 实例名称,支持大小写字母、数字
以及-_ /.特殊字符,必须以字母开头,长度1-65个字符。

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

请求示例

PUT /v2/instance/i-YufwpQAe?modifyAttribute HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "name": "new_instance_name"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

重装实例

使用镜像重建指定虚拟机

  • 实例重装后,基于原系统盘的
  • 快照会自动删除,基于原系统盘的自定义镜像会保留。

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

{
    "imageId": imageId,
    "adminPass":"adminPass"
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 指定的实例ID
action String Query参数 对实例执行的动作,当前取值rebuild
imageId String Request Body参数 待指定的镜像ID
adminPass String Request Body参数 机器密码,密码需要加密传输,详见链接

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

请求示例

PUT /v2/instance/i-YufwpQAe?rebuild HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "imageId": "m-mRjO3cjs",
    "adminPass":"1qaz@WSX"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

释放实例

释放单个云服务器实例,释放后实例所使用的物理资源都被收回,相关数据全部丢失且不可恢复。

  • 只有付费类型为Postpaid或者付费类型为Prepaid且已过期的实例才可以释放。
  • 实例释放后,已挂载的CDS磁盘自动卸载,基于此CDS磁盘的快照会保留。
  • 实例释放后,基于原系统盘的快照会自动删除,基于原系统盘的自定义镜像会保留。

请求结构

DELETE /v{version}/instance/{instanceId} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
…

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 待释放的虚拟机实例ID

返回头域

除公共头域外,无其它特殊头域。

返回参数

无特殊返回参数

请求示例

DELETE /v2/instance/i-YufwpQAe HTTP/1.1
Host: bcc.bj.baidubce.com
ContentType: application/json
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

实例扩缩容

为指定虚机扩缩容,目前支持对虚机的CPU以及内存进行扩缩容操作。

  • 实例计费方式采用后付费时,可弹性扩缩容;采用预付费方式,不能进行缩容操作。
  • 只有实例Running或Stopped状态时才可以进行扩缩容操作。
  • 实例扩缩容之后会重启一次。
  • 异步接口,可通过查询实例详情接口查看扩缩容状态status是否恢复。
  • 专属实例可以通过指定的cpu、内存以及临时盘大小,专属实例临时盘大小只支持扩容而不支持缩容。

请求结构

BCC实例扩容请求示例:

PUT /v{version}/instance/{instanceId}?{action}&clientToken={clientToken} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
    "cpuCount": cpuCount,
    "memoryCapacityInGB": memoryCapacityInGB
}

专属实例扩容请求结构:

PUT /v{version}/instance/{instanceId}?{action}&clientToken={clientToken} HTTP/1.1
Host: dcc.bj.baidubce.com
Authorization: authorization string
{
    "cpuCount": cpuCount,
    "memoryCapacityInGB": memoryCapacityInGB,
    "ephemeralDisks": [
       "sizeInGB":sizeInGB
    ]

}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 虚拟机实例ID
action String Query参数 本接口取值resize
clientToken String Query参数 幂等性Token,是一个长度不超过64位的ASCII字符串,详见ClientToken幂等性
cpuCount int Request Body参数 CPU(Core)个数,指定newInstanceType时无效
memoryCapacityInGB int Request Body参数 内存容量,单位为GB,指定newInstanceType时无效
ephemeralDisks List<EphemeralDisk> Request Body参数 临时盘容量配置,该参数目前只支持存储型专属实例,容量将从对应的专属服务器套餐容量里扣除。

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
BadRequest Bad request parameters or illegal request. 400 请求参数无效
Instance.InstanceBeBanned The instance is banned, contact technical support for assistance. 403 被封禁
NoSuchObject The specified object is not found or resource do not exist. 404 资源不存在
OperationDenied Operation not available. 409 不可操作

请求示例

PUT /v2/instance/i-YufwpQAe?resize&clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "cpuCount": 2,
   "memoryCapacityInGB": 2
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

将实例加入安全组

为指定虚拟机实例添加安全组,每个实例最多关联10个安全组

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
    "securityGroupId" : securityGroupId
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 虚拟机实例ID
action String Query参数 本接口取值bind
securityGroupId String Request Body参数 要关联到该实例上的安全组ID

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
SecurityGroup.BindInstanceExceededLimit Quota exceeds limit when binding instance to security group. 413 实例绑定安全组数目超限
SecurityGroup.ExpiredInstanceForbiddenBind Instance already expired when binding to security group. 403 过期或欠费的实例无法绑定安全组
SecurityGroup.NoSecurityGroup No security group associated for the instance. 400 实例至少需要关联一个安全组

请求示例

PUT /v2/instance/i-YufwpQAe?bind HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
        "securityGroupId" : "g-nky7qeom"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

将实例移出安全组

将指定安全组从指定的虚拟机实例中移出。

  • 每个实例至少关联一个安全组,默认关联默认安全组
  • 如果实例仅属于一个安全组,尝试移出时,请求会报 403 错

请求结构

PUT /v{version}/instance/{instanceId}?{action} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string
{
     "securityGroupId" : securityGroupId
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 虚拟机实例ID
action String Query参数 本接口取值unbind
securityGroupId String Request Body参数 要从该实例取消关联的安全组ID

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

请求示例

PUT /v2/instance/i-YufwpQAe?unbind HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
         "securityGroupId" : "g-nky7qeom"
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

查询实例VNC地址

查询指定实例的VNC 地址URL,

  • VNC地址一次使用后即失效。
  • URL地址有效期为10分钟。

请求结构

GET /v{version}/instance/{instanceId}/vnc HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 虚拟机实例ID

返回头域

除公共头域,无其它特殊头域。

返回参数

参数名称 类型 描述
vncUrl String VNC 地址URL

请求示例

GET /v2/instance/i-YufwpQAe/vnc HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS

{
    "vncUrl": "http://10.105.97.40/vnc_auto.html?token=e4328aa7-d1ba-48be-99d1-aa4bfe51ab38" 
}

实例续费

描述

针对指定预付费实例的续费操作,延长过期时长。

  • 实例扩缩容期间不能进行续费操作。
  • 续费时若实例已欠费停机,续费成功后该实例将重新启动。
  • 支持关联的预付费CDS/EIP/MKT的产品一同续费,关联的后付费CDS/EIP/MKT不会一同续费。
  • 该接口是一个异步接口。
  • 专属实例不支持续费。

请求结构

PUT /v{version}/instance/{instanceId}?{action}&clientToken={clientToken} HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: authorization string

{
    "billing":{
        "reservation":{
            "reservationLength": reservationLength,
            "reservationTimeUnit": reservationTimeUnit
        }
    }
}

请求头域

除公共头域外,无其它特殊头域。

请求参数

参数名称 类型 是否必需 参数位置 描述
version String URL参数 API版本号
instanceId String URL参数 虚拟机实例ID
action String Query参数 本接口中该参数取值purchaseReserved
clientToken String Query参数 幂等性Token,是一个长度不超过64位的ASCII字符串,详见ClientToken幂等性
relatedRenewFlag String Query参数 设置实例关联续费标识,默认为空字符串。可选标识请参照RelatedRenewFlag
billing Billing RequestBody参数 订单详情

返回头域

除公共头域,无其它特殊头域。

返回参数

无特殊返回参数

错误码

错误码 错误描述 HTTP状态码 中文解释
BadRequest Bad request parameters or illegal request. 400 请求参数无效
NoSuchObject The specified object is not found or resource do not exist. 404 资源不存在
OperationDenied Operation not available. 409 不可操作

请求示例

PUT /v2/instance/i-YufwpQAe?purchaseReserved&clientToken=be31b98c-5e41-4838-9830-9be700de5a20&relatedRenewFlag=CDS_EIP_MKT HTTP/1.1
Host: bcc.bj.baidubce.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2015-08-11T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de

{
    "billing":{
        "reservation":{
            "reservationLength":1,
            "reservationTimeUnit":"Month"
        }
    }
}

返回示例

HTTP/1.1 200 OK
x-bce-request-id: 1214cca7-4ad5-451d-9215-71cb844c0a50
Date: Wed, 03 Dec 2014 06:42:19 GMT
Content-Type: application/json;charset=UTF-8
Server: BWS