閱讀586 返回首頁    go 阿裏雲


創建實例__實例相關接口_API 參考_雲服務器 ECS-阿裏雲

描述

創建實例需要通過實名認證。沒有通過實名認證的可以前往 阿裏雲官網 中的用戶中心—>會員信息中進行實名認證。

根據傳入參數創建彈性計算實例。

  • 在創建實例時,必須要選擇鏡像,用來確定新創建實例的係統盤配置。鏡像包含操作係統以及應用軟件配置,基於鏡像創建實例後,實例的係統盤即為此鏡像的完全克隆。

  • 一個實例創建時必須指定加入一個安全組。安全組需要預先創建,可通過創建安全組接口創建,可以在新創建實例時指定,也可通過 修改實例屬性 的接口來完成實例所屬安全組變更。在同一個安全組內的實例內網可以相互訪問,但不同安全組之間默認有防火牆隔離,不可相互訪問,但可通過安全組授權(通過授權安全組權限接口實現)來設置此安全組的防火牆權限。同一個安全組內的實例數量不能超過1000個,若組內實例數量超出限製,創建實例時若指定該安全組,會提示失敗。

  • 在創建實例時,如果參數InternetChargeType的值設置為PayByBandwidth(按固定帶寬付費),則InternetMaxBandwidthOut的設置值即為所選的固定帶寬值;如果參數InternetChargeType的值設置為PayByTraffic(按流量付費),則InternetMaxBandwidthOut隻是一個帶寬的上限設置,計費以發生的網絡流量為依據。設置InternetChargeType和InternetMaxBandwidthOut時,應仔細核算可能發生的帶寬費用。

  • InternetMaxBandwidthIn的值在任何情況下都與計費無關,實例的入數據流量是免費的。

  • 創建實例時,可以選擇是否為IO優化實例(IoOptimized)。

  • 實例創建時,係統會根據用戶所指定鏡像為實例分配一個相應大小的係統盤,係統盤容量=Max{40,ImageSize};也可以指定係統盤的容量SystemDisk.size參數,該參數必須大於等於max{40,ImageSize};同時,可以指定係統盤的種類:普通雲盤(cloud)、高效雲盤(cloud_efficiency)、SSD雲盤(cloud_ssd)、本地 SSD 盤(ephemeral_ssd)。

  • 當實例選擇為IO優化實例時,係統盤隻能選擇高效雲盤(cloud_efficiency)及SSD雲盤(cloud_ssd)

  • ECS不支持單獨創建或者添加本地SSD盤,因此本地SSD盤必須在創建實例時指定,實例創建完成後不能再添加。各個實例規格對不同磁盤種類大小的限製見 實例資源規格對照表

  • 單塊普通雲盤(cloud)容量最大不能超過2000GB,單塊高效雲盤(cloud_efficiency)容量最大不超過32TB(32768GB),單塊SSD雲盤(cloud_ssd)容量最大不能超過32TB(32768GB),單塊本地 SSD 盤(ephemeral_ssd)容量最大不能超過 800GB。

  • 隨實例創建的係統盤,其Portable屬性為false,即不支持卸載和掛載操作。係統盤隨實例的釋放而釋放,所以係統盤的DeleteWithInstance的屬性為True。

  • 隨實例創建的類型為普通雲盤(cloud)、高效雲盤(cloud_efficiency)或SSD雲盤(cloud_ssd)的數據盤,其Portable屬性為true,即支持卸載和掛載操作。如果數據盤隨實例的釋放而釋放,則DeleteWithInstance的屬性的默認值為True;反之,如果數據盤不隨實例的釋放而釋放,則DeleteWithInstance的屬性的默認值為False

  • 隨實例創建的本地 SSD 盤(ephemeral_ssd),其 Portable 屬性為 false,即不支持卸載和掛載操作。本地 SSD 盤隨實例的釋放而釋放,所以其 DeleteWithInstance 的屬性為 True。

  • 一個實例最多添加4塊數據盤;數據盤選擇本地 SSD 盤時,係統盤必須為本地 SSD 盤,同時一個實例的本地 SSD 盤總容量不超過 1TB(1024GB,不包括係統盤)。

  • 選擇了本地SSD盤的實例,一旦創建後,不能修改實例規格。

  • 實例內存為512M時不能使用 Windows 操作係統;內存為 4G以上時不能使用 32位操作係統。

  • 當係統盤是普通雲盤(cloud)、高效雲盤(cloud_efficiency)或SSD雲盤(cloud_ssd)時,數據盤不能是ephemeral_ssd。

  • 專有網絡類型實例隻能在創建時指定,這類實例必須且隻能屬於一個虛擬交換機。

  • 指定VSwitchId創建實例時,SecurityGroupId和VSwitchId要屬於同一個專有網絡。

  • VSwitchId和PrivateIpAddress同時指定時,PrivateIpAddress要包含在虛擬交換機的CidrBlock之內。

  • PrivateIpAddress依賴於VSwitchId,不能單獨指定PrivateIpAddress。

  • 若實例付費類型為預付費的包年包月實例(PrePaid),則在執行付款時默認會使用該賬號下可用的優惠券(0折賬號除外)

  • 創建完成後,實例為 Stopped 狀態

  • 在阿裏雲CLI及SDK中使用該API時,部分帶”.”號的入參需要去掉”.”號使用,包括:SystemDisk.Category、SystemDisk.Size、SystemDisk.Description、DataDisk.n.Size、DataDisk.n.Category、DataDisk.n.SnapshotId、DataDisk.n.DiskName、DataDisk.n.Description、DataDisk.n.Device、DataDisk.n.DeleteWithInstance。如:在阿裏雲CLI及SDK中使用SystemDiskCategory來表示SystemDisk.Category入參

請求參數

名稱 類型 是否必須 描述
Action String 操作接口名,係統規定參數,取值:CreateInstance
RegionId String 實例所屬的Region ID
ZoneId String 實例所屬的可用區編號,空表示由係統選擇,默認值:空。
ImageId String 鏡像文件ID,表示啟動實例時選擇的鏡像資源
InstanceType String 實例的資源規則。取值參見附表實例資源規格對照表,也可以調用查詢實例資源規格列表接口獲得最新的規格表。
SecurityGroupId String 指定新創建實例所屬於的安全組代碼,同一個安全組內的實例之間可以互相訪問。若不指定,則會將創建的實例加入到默認安全組中。如果默認安全組還不存在,或者默認安全組的實例數量已經超過了上限,則自動新建一個。
InstanceName String 實例的顯示名稱,[2,128]英文或中文字符,必須以大小字母或中文開頭,可包含數字,“.”,“_”或“-”。 實例名稱會顯示在控製台。 如果沒有指定該參數,默認值為實例的InstanceId 不能以https:// 和https:// 開頭。
Description String 實例的描述,[2,256]個字符,實例描述會顯示在控製台。不填則為空,默認為空。不能以https:// 和https:// 開頭。
InternetChargeType String 網絡計費類型,按流量計費還是按固定帶寬計費。
可選值:
  • PayByBandwidth
  • PayByTraffic
如用戶不指定,默認是PayByBandwidth。
InternetMaxBandwidthIn String 公網入帶寬最大值,單位為Mbps(Mega bit per second),取值範圍:[1,200]
如果客戶不指定,AliyunAPI將自動將入帶寬設置成200Mbps。
InternetMaxBandwidthOut String 公網出帶寬最大值,單位為 Mbps(Mega bit per second),取值範圍:
按帶寬計費:[0, 100]。如果客戶不指定,API 將自動將出帶寬設置成 0Mbps。
按流量計費:[1, 100]。如果客戶不指定,會報錯。
如果需要可以通過阿裏雲工單係統申請將帶寬範圍設置成 1 ~ 200Mbps。
HostName String 表示雲服務器的主機名,最少2字符,“.”和“-”是不能作為hostname的首尾字符,不能連續使用。 Windows平台最長為15字符,允許字母(不限製大小寫)、數字和“-”組成,不支持點號(”.”),不能全是數字。
其他(Linux等)平台最長為30字符,允許支持多個點號,點之間為一段,每段允許字母(不限製大小寫)、數字和“-”組成。
Password String 實例的密碼。8-30個字符,必須同時包含三項(大、小寫字母,數字和特殊符號)。支持以下特殊字符:( ) ` ~ ! @ # $ % ^ & * - + = | { } [ ] : ; ‘ < > , . ? /
如果傳入Password參數,請務必使用HTTPS協議調用API以避免可能發生的密碼泄露。
IoOptimized String IO優化。
可選值:
  • none:非 IO 優化
  • optimized:IO 優化
默認值:none。
SystemDisk.Category String 係統盤的磁盤種類
可選值:
  • cloud – 普通雲盤
  • cloud_efficiency – 高效雲盤
  • cloud_ssd – SSD雲盤
  • ephemeral_ssd - 本地 SSD 盤
默認值:cloud
SystemDisk.Size Integer 係統盤大小,以GB為單位,取值範圍為:
  • cloud – 40~500
  • cloud_efficiency – 40~500
  • cloud_ssd – 40~500
  • ephemeral_ssd - 40~500
默認值:size=max{40,ImageSize}
指定該參數後,size必須大於等於max{40, ImageSize}。
SystemDisk.DiskName String 係統盤名稱,不填則為空,默認值為空,[2,128]英文或中文字符,必須以大小字母或中文開頭,可包含數字,”_”或”-”,磁盤名稱會展示在控製台。不能以https:// 和https:// 開頭。
SystemDisk.Description String 係統盤描述,不填則為空,默認值為空,[2,256]個字符,實例描述會顯示在控製台。不填則為空,默認為空。不能以https:// 和https:// 開頭。
DataDisk.n.Size Integer 數據盤n的磁盤大小(n從1開始編號)。 以GB為單位,取值範圍為:
  • cloud:5 ~ 2000
  • cloud_efficiency:20 ~ 32768
  • cloud_ssd:20 ~ 32768
  • ephemeral_ssd:5 ~ 800
指定該參數後,Size大小必須 ≥ 指定快照SnapshotId的大小。
DataDisk.n.Category String 數據盤n的磁盤種類
可選值:
  • cloud – 普通雲盤
  • cloud_efficiency – 高效雲盤
  • cloud_ssd – SSD雲盤
  • ephemeral_ssd - 本地 SSD 盤
默認值:cloud
DataDisk.n.SnapshotId String 創建數據盤使用的快照
指定該參數後DataDisk.n.Size會被忽略,實際創建的磁盤大小為指定快照的大小。若該快照創建於2013年7月15日(含)之前,該次調用會被拒絕,Response中返回InvalidSnapshot.TooOld
DataDisk.n.DiskName String 數據盤名稱,不填則為空,默認值為空,[2,128]英文或中文字符,必須以大小字母或中文開頭,可包含數字,”_”或”-”,磁盤名稱會展示在控製台。不能以https:// 和https:// 開頭。
DataDisk.n.Description String 數據盤描述,不填則為空,默認值為空,[2,256]個字符,磁盤描述會展示在控製台。不能以https:// 和https:// 開頭。
DataDisk.n.Device String 空表示由係統默認分配,/dev/xvdb 開始到 /dev/xvdz
默認值:空
DataDisk.n.DeleteWithInstance String 表示數據盤是否隨實例釋放。
  • true表示實例釋放時,這塊磁盤隨實例一起釋放
  • false表示實例釋放時,這塊磁盤保留不釋放
默認值:true
這個參數隻對獨立雲磁盤即DataDisk.n.Category=cloud,cloud_efficiency和cloud_ssd 時有效,否則會報錯。
VSwitchId String 如果是創建VPC類型的實例,需要指定虛擬交換機的ID
PrivateIpAddress 實例私網IP地址,不能單獨指定。
InstanceChargeType String 實例的付費方式。
  • PrePaid:預付費,即包年包月,選擇該類付費方式的用戶必須確認自己的賬號支持餘額支付/信用支付,否則將返回“無效的支付方式”的錯誤提示
  • PostPaid:後付費,即按量付費
默認為 PostPaid,即按量付費。
Period Integer 購買資源的時長,單位是月。
當 InstanceChargeType 為 PrePaid 時,才生效且為必選。
取值範圍為:
  • 1 - 9
  • 12
  • 24
  • 36
AutoRenew String 是否要自動續費,當 InstanceChargeType 為 PrePaid 時才生效。
取值範圍:
  • True,代表要自動續費
  • False,代表不要自動續費
默認值:False。
AutoRenewPeriod Integer 每次自動續費的時長,當AutoRenew為True時為必填:
  • 1
  • 2
  • 3
  • 6
  • 12
ClientToken String 用於保證請求的冪等性。由客戶端生成該參數值,要保證在不同請求間唯一,最大不值過64個ASCII字符。
具體參見附錄:如何保證冪等性

返回參數

名稱 類型 描述
InstanceId String 實例ID,由係統生成,全局唯一。是訪問實例的唯一標識

錯誤碼

錯誤代碼 描述 Http狀態碼 語義
InvalidRegionId.NotFound The RegionId provided does not exist in our records. 404 指定的RegionId不存在
MissingParameter The input parameter “RegionId” that is mandatory for processing this request is not supplied. 400 缺少RegionId值(實際情況也可能是該用戶無權使用此Region)
InvalidInstanceType.ValueUnauthorized The specified InstanceType is not authorized. 400 指定的InstanceType未授權使用
InvalidSystemDiskSize.LessThanImageSize The specified parameter“SystemDisk.Size”is less than the image size 404 指定的 SystemDiskSize 小於鏡像的大小
InvalidSystemDiskSize.MoreThanMaxSize The specified parameter “SystemDisk.Size” is more than the max size 404 指定的 SystemDiskSize 大於最大容量上限
InvalidSystemDiskSize.LessThanMinimumSize The specified parameter”SystemDisk.Size” is less than the minimum size 404 指定的 SystemDiskSize 小於最小容量
InvalidZoneId.NotFound The ZoneId provided does not exist in our records. 404 指定的ZoneId不存在(實際情況也可能是該用戶無權使用此Zone)
MissingParameter The input parameter “ImageId” that is mandatory for processing this request is not supplied. 400 缺少ImageId值
InvalidInstanceType.ValueNotSupported The specified InstanceType beyond the permitted range. 400 指定的InstanceType不合法(超出可選範圍)
MissingParameter The input parameter “InstanceType” that is mandatory for processing this request is not supplied. 400 缺少InstanceType值
InvalidSecurityGroupId.NotFound The SecurityGroupId provided does not exist in our records. 404 指定的SecurityGroupId不存在(實際情況也可能是該用戶無權使用此SecurityGroup)
MissingParameter The input parameter “SecurityGroupId” that is mandatory for processing this request is not supplied. 400 缺少SecurityGroupId值
InvalidDescription.Malformed The specified parameter “Description” is not valid. 400 指定的Description格式不合法
InvalidInternetChargeType.ValueNotSupported The specified InternetChargeType is not valid. 400 指定的InternetChargeType不存在
InvalidParameter The specified parameter “InternetMaxBandwidthIn” is not valid. 400 指定的InternetMaxBandwidthIn不合法(不是數字或超出範圍)
InvalidParameter The specified parameter “InternetMaxBandwidthOut” is not valid. 400 指定的InternetMaxBandwidthOut不合法(不是數字或超出範圍)
InvalidHostName.Malformed The specified parameter “HostName” is not valid. 400 指定的HostName格式不合法
InvalidPassword.Malformed The specified parameter “Password” is not valid. 400 指定的Password格式不合法
InvalidSystemDiskCategory.ValueNotSupported The specified parameter “SystemDisk.Category” is not valid. 400 指定的SystemDisk.Category不合法
InvalidDiskName.Malformed The specified parameter “SyatemDisk.DiskName or DataDisk.n.DiskName” is not valid. 400 指定的SyatemDisk.DiskName或DataDisk.n.DiskName不合法
InvalidDiskDescription.Malformed The specified parameter “SyatemDisk.DiskDescription” or “DataDisk.n.Description” is not valid. 400 指定的SyatemDisk.DiskDescription或DataDisk.n.Description不合法
InvalidParameter The specified parameter “DataDisk.n.Size” is not valid. 400 指定的DataDisk.n.Size不合法(不是數字)
OperationDenied The specified parameter “VlanId” is not valid or vlan has not enough IP address. 400 指定的 VlanId 不合法
InvalidDataDiskSize.ValueNotSupported The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category. 400 指定的DataDisk.n.Size不合法(超出範圍)
InvalidDataDiskCategory.ValueNotSupported The specified parameter “DataDisk.n.Category” is not valid. 400 指定的DataDisk.n.Category不合法
InvalidDataDiskSnapshotId.NotFound The specified parameter “DataDisk.n.SnapshotId” is not valid. 404 指定的DataDisk.n.SnapshotId沒找到
InvalidDataDevice.Malformed The specified parameter “DataDisk.n.Device” is not valid. 400 指定的DataDisk.n.Device不合法
InvalidParameter.Conflict The specified image does not support the specified instance type. 400 指定的InstanceType上不允許使用該指定的鏡像
InvalidSnapshotId.BasedSnapshotTooOld The specified snapshot is created before 2013-07-15. 400 使用了2013-07-15之前創建的Snapshot
QuotaExceed.AfterpayInstance Living afterpay instances quota exceeded. 400 用戶的按量付費Instance個數達到上限
ImageNotSubscribed The specified image has not be subscribed. 403 沒有訂閱鏡像市場的鏡像
OperationDenied The specified Image is disabled or is deleted. 403 鏡像不可用或者不存在
InvalidSystemDiskCategory.ValueUnauthorized The disk category is not authorized. 403 磁盤種類未被授權使用
InvalidParameter.Mismatch The data disk must be cloud disk when system disk category is cloud. 403 係統盤是雲磁盤則數據盤必須是雲磁盤
InvalidSnapshotId.NotReady The specified snapshot has not completed yet. 403 快照沒有完成
OperationDenied The specified snapshot is not allowed to create disk. 403 特定磁盤的快照不能創建磁盤或者快照不能創建磁盤
InstanceDiskCategoryLimitExceed The total size of specified disk category in an instance exceeds. 403 指定的磁盤種類超過了單實例的最大容量
InvalidDevice.InUse The specified device has been occupied. 403 掛載點已被占用
ImageRemovedInMarket The specified market image is not available, Or the specified user defined image includes product code because it is based on an image subscribed from marketplace, and that image in marketplace includeing exact the same product code has been removed. 403 鏡像市場的鏡像已下架,或者自定義鏡像中包含的product code對應的鏡像市場鏡像已經下架
InvalidClusterId.NotFound The ClusterId provided does not exist in our records. 404 指定的 ClusterId 不存在
OperationDenied The creation of Instance to the specified Zone is not allowed. 403 該可用區無權創建實例或者Zone和Region不匹配
CategoryNotSupported The specified zone does not offer the specified disk category. 403 該可用區無權創建指定種類的磁盤
OperationDenied The specified Zone or cluster does not offer the specified disk category or the speicified zone and cluster do not match. 403 zone或者cluster不支持該磁盤種類,或者zone和cluster不匹配
InvalidInstanceName.Malformed The specified parameter “InstanceName” is not valid. 400 指定的InstanceName格式不合法
InvalidInstanceDescription.Malformed The specified parameter “Description” is not valid. 400 指定的Instance Description不合法
OperationDenied The specified Image is disabled or is deleted. 404 指定的鏡像找不到
OperationDenied The resource is out of usage. 403 zone或者Cluster的庫存不夠了
InternalError The request processing has failed due to some unknown error. 500 該用戶沒有zone可用
OperationDenied The specified region is in resource control, please try later. 403 Region暫時停售按量實例
InvalidParameter.Conflict The speicified region and cluster do not match. 400 Region和Cluster不匹配
SecurityGroupInstanceLimitExceed Exceeding the allowed amount of instances of a security group. 403 該SecurityGroup內的Instance數量已經達到上限
RegionUnauthorized There is no authority to create instance in the specified region. 403 用戶無權使用該Region
CategoryNotSupported The specified Zone or cluster does not offer the specified disk category. 403 zone或者cluster不支持磁盤種類
InvalidSnapshotId.NotDataDiskSnapshot The specified snapshot is system disk snapshot. 403 係統盤快照不能創建數據盤
OperationDenied The capacity of snapshot exceeds the size limit of the specified disk category or the specified category is not authorizied. 403 指定的DataDisk.n.Size不合法(超出範圍)或者磁盤種類未被授權使用
CategoryNotSupported The specified cluster does not offer the specified disk category. 403 cluster不支持磁盤種類
InvalidDiskCategory.Mismatch The specified disk categories’ combination is not supported.. 403 所選磁盤類型的組合不支持
QuotaExceed.PortableCloudDisk The quota of portable cloud disk exceeds. 403 可掛載的雲磁盤數量已經達到上限(最多四塊)
DeleteWithInstance.Conflict The specified disk is not a portable disk and cannot be set to DeleteWithInstance attribute. 403 該磁盤不支持掛載與卸載
IoOptimized.NotSupported The specified image is not support IoOptimized Instance. 403 指定的鏡像ID不支持 IO 優化實例
OperationDenied Another Instance has been creating 403 同步請求,創建 ECS 的數量超過一個
IoOptimized.NotSupported The specified instancetype is not support IoOptimized instance 403 實例類型不支持 IO 優化實例
OperationDenied The specified zone does not support creating instance. 403 所選的可用區不支持創建IO優化型實例
InvalidDiskCategory.NotSupported The specified disk category is not support the specified instance type. 403 所選磁盤種類不能用於所選實例類型
InstanceDiskCategoryLimitExceed The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category. 400 指定的 DataDisk.n.Size 不合法(超出範圍)
QuotaExceed.BuyImage The specified image is from the image market,You have not bought it or your quota has been exceeded. 403 指定的鏡像來自鏡像市場,您沒有購買或者該鏡像在次地域的配額已用完
TotalDiskSizeLimitExceed The sum of the specified DataDisk.n.Size beyond the permitted range. 403 指定的磁盤的總容量超過了單台實例可掛載磁盤總容量的上限
InvalidInstanceChargeType.NotFound The InstanceChargeType does not exist in our records 404 指定的 InstanceChargeType 不存在
DependencyViolation.Image The specified imageid is not supported to create iooptimized instance 400 指定的鏡像 ID 不支持創建 IO 優化實例
InvalidPeriod The specified period is not valid 400 指定的 period 參數格式不合法(不是數字或超出範圍)
InstanceTypeNotSupported The specified zone does not offer the specified instancetype. 403 該可用區不支持創建指定的實例規格
DependencyViolation.IoOptimized The specified instancetype must be IoOptimized instance 404 指定的實例規格必須是 I/O 優化實例
InvalidPeriod The specified period is not valid 400 指定的 period 參數格式不合法(不是數字或超出範圍)
InstanceDiskNumber.LimitExceed The total number of specified disk in an instance exceeds. 403 鏡像中包含的數據盤和數據盤參數合並後,數據盤的總數超出限製
InvalidAutoRenewPeriod.ValueNotSupported auto renew period value is not supported 400 指定的 AutoRenew period 參數格式不合法(不是數字或超出範圍)

示例

請求示例

  1. https://ecs.aliyuncs.com/?Action=CreateInstance
  2. &RegionId=cn-hangzhou
  3. &ImageId=_32_23c472_20120822172155_aliguest.vhd
  4. &SecurityGroupId=sg-c0003e8b9
  5. &HostName=Bctest01
  6. &InstanceType=ecs.t1.small
  7. &<公共請求參數>

返回示例

XML格式

  1. <CreateInstanceResponse>
  2. <RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>
  3. <InstanceId>i-instance1</InstanceId>
  4. </CreateInstanceResponse>

JSON格式

  1. {
  2. "RequestId": "04F0F334-1335-436C-A1D7-6C044FE73368",
  3. "InstanceId": "i-instance1"
  4. }

最後更新:2016-11-23 16:03:50

  上一篇:go ECS API 發生子賬號訪問主賬號資源時的鑒權規則__借助 RAM 實現子賬號對主賬號的 ECS 資源訪問_API 參考_雲服務器 ECS-阿裏雲
  下一篇:go 啟動實例__實例相關接口_API 參考_雲服務器 ECS-阿裏雲