功能介紹
創(chuàng)建一臺按需彈性 云服務器 。
該接口在云服務器創(chuàng)建失敗后不支持自動回滾。若需要自動回滾能力,可以調用POST /v1/{project_id}/cloudservers接口,具體使用請參見創(chuàng)建云服務器(按需)。
調試
您可以在API Explorer中調試該接口。
URI
POST /v2.1/{project_id}/servers
參數說明請參見表1。
參數說明
|
參數 |
是否必選 |
描述 |
|---|---|---|
|
project_id |
是 |
項目ID。 獲取方法請參見獲取項目ID。 |
創(chuàng)建彈性云服務器接口別名:/v2/{project_id}/os-volumes_boot,該調用方式僅在OpenStack Client中使用,用戶不推薦使用。
接口約束
- 該接口為原生接口,不支持整機 鏡像 創(chuàng)建彈性云服務器功能。如需使用整機鏡像創(chuàng)建彈性云服務器,請使用創(chuàng)建云服務器(按需)。
- 該接口為原生接口,不支持創(chuàng)建競價實例。如需創(chuàng)建競價實例請使用創(chuàng)建云服務器、創(chuàng)建云服務器(按需)。
- 該接口為原生接口,不支持創(chuàng)建包年/包月計費模式的實例。如需創(chuàng)建包年/包月計費模式的云服務器請使用創(chuàng)建云服務器。
- 使用該接口創(chuàng)建的云服務器,不支持在創(chuàng)建過程中綁定 彈性公網IP ,推薦使用創(chuàng)建云服務器(按需)創(chuàng)建云服務器并綁定彈性 公網IP 。
- 網絡的三個參數(port、uuid和fixed_ip)中,port優(yōu)先級最高;指定fixed_ip時必須指明uuid。
- 注入文件失敗,將導致創(chuàng)建彈性云服務器失敗。
- 使用鏡像創(chuàng)建彈性云服務器時,存在下面約束:
- 不支持指定Host創(chuàng)建彈性云服務器。
- 租戶如果對彈性云服務器中的卷進行了備份,則需要租戶自行刪除該卷所對應的快照等數據后,才能刪除卷。
- 調整鏡像創(chuàng)建的彈性云服務器規(guī)格時,不支持resource_type不同的flavor之間的規(guī)格調整。
- 云服務平臺提供的原生接口/v2/{project_id}/servers 和 /v2.1/{project_id}/servers 是基于社區(qū)版OpenStack原生接口加固而成的,兼容社區(qū)版OpenStack原生接口。較之社區(qū)版的OpenStack原生接口,在使用指定鏡像的方式創(chuàng)建彈性云服務器時存在如下差異:
- 社區(qū)OpenStack原生接口:默認使用服務器本地磁盤創(chuàng)建彈性云服務器。
- 云服務平臺提供的原生接口:為了保障可靠性,使用共享存儲作為系統盤創(chuàng)建彈性云服務器。
- 該差異的具體表現為,當您使用提供的原生接口創(chuàng)建云服務器時:
- 可以查詢到云服務器掛載的系統盤信息。
- 云服務器的系統盤會占用 云硬盤 的配額。
- 不支持使用image過濾查詢指定鏡像方式創(chuàng)建的彈性云服務器。
- 指定卷創(chuàng)建彈性云服務器場景下,指定的卷與創(chuàng)建的彈性云服務器必須處于相同的AZ(availability_zone)。
- 用戶創(chuàng)建彈性云服務器時在block_device_mapping_v2設置的device_name字段不會生效,系統會默認生成一個device_name。
- 請勿使用“provider:network_type”為“geneve”的網絡來創(chuàng)建彈性云服務器?!皃rovider:network_type”為“geneve”時,表示 裸金屬服務器 使用的內部高速網絡。
- 如果使用密鑰方式遠程登錄云服務器,請使用key_name參數。如果使用密碼方式遠程登錄云服務器,可使用adminPass參數;對于Linux云服務器,還可使用user_data進行注入,對于Windows云服務器,還可通過元數據admin_pass進行注入。
請求消息
請求參數如表2所示。
請求參數
|
參數 |
是否必選 |
參數類型 |
描述 |
|---|---|---|---|
|
server |
是 |
Object |
彈性云服務器信息,參見表3。 |
|
os:scheduler_hints |
否 |
Object |
彈性云服務器調度信息,參見表8。裸金屬服務器場景不支持。 |
server參數信息
|
參數 |
是否必選 |
參數類型 |
|---|---|---|
|
imageRef |
否 |
String |
|
flavorRef |
是 |
String |
|
name |
是 |
String |
|
metadata |
否 |
Map<String,String> |
|
adminPass |
否 |
String |
|
block_device_mapping_v2 |
否 |
Array of objects |
|
config_drive |
否 |
String |
|
security_groups |
否 |
Array of objects |
|
networks |
是 |
Array of objects |
|
key_name |
否 |
String |
|
user_data |
否 |
String |
|
availability_zone |
否 |
String |
|
return_reservation_id |
否 |
Boolean |
|
min_count |
否 |
Integer |
|
max_count |
否 |
Integer |
|
OS-DCF:diskConfig |
否 |
String |
|
description |
否 |
String |
|
auto_terminate_time |
否 |
String |
metadata字段數據結構說明
|
參數 |
是否必選 |
參數類型 |
描述 |
|---|---|---|---|
|
admin_pass |
否 |
String |
Windows彈性云服務器Administrator用戶的密碼。 說明: 創(chuàng)建密碼方式鑒權的Windows彈性云服務器時為必選字段。 |
block_device_mapping_v2參數
|
參數 |
參數類型 |
是否必選 |
描述 |
|---|---|---|---|
|
source_type |
String |
是 |
卷設備的源頭類型,當前只支持volume、image、snapshot、blank類型。 當使用卷創(chuàng)建云服務器時,source_type設置為volume;當使用鏡像創(chuàng)建云服務器時,source_type設置為image;當使用快照創(chuàng)建云服務器時,source_type設置為snapshot;當創(chuàng)建空數據卷時,source_type設置為blank。 說明: 當卷設備的源頭類型為snapshot時,且boot_index為0,則該快照對應的云硬盤必須為系統盤。 |
|
destination_type |
String |
否 |
卷設備的目標類型,當前僅支持volume類型。
|
|
guest_format |
String |
否 |
local文件系統格式,例如:swap, ext4。 當前不支持該功能。 |
|
device_name |
String |
否 |
卷設備名稱。 說明: 該字段已經廢棄。 用戶指定的device_name不會生效,系統會默認生成一個device_name。 |
|
delete_on_termination |
Boolean |
否 |
刪除彈性云服務器時,是否刪除卷,默認值false。
|
|
boot_index |
String |
否 |
啟動標識,“0”代表啟動盤,“-1”代表非啟動盤。 不傳該字段時默認取值為“-1”。 說明: 當卷設備的源頭類型全為volume時,boot_index的值有一個為0。 |
|
uuid |
String |
否 |
|
|
volume_size |
Integer |
否 |
卷大小,整數,在source_type是image或blank,destination_type是volume的時候必選。 單位為GB。 |
|
volume_type |
String |
否 |
卷類型,在source_type是image,destination_type是volume時建議填寫。 卷類型取值范圍請參考 EVS 服務 磁盤類型介紹 。 |
security_groups參數
|
參數 |
是否必選 |
參數類型 |
描述 |
|---|---|---|---|
|
name |
否 |
String |
安全組名稱或者uuid。 |
networks參數
|
參數 |
是否必選 |
參數類型 |
描述 |
|---|---|---|---|
|
port |
否 |
String |
網絡port uuid。 沒有指定網絡uuid時必須指定。 |
|
uuid |
否 |
String |
網絡uuid。 沒有指定網絡port時必須指定。 |
|
fixed_ip |
否 |
String |
指定的IP地址。網絡的三個參數(port、uuid和fixed_ip)中,port優(yōu)先級最高;指定fixed_ip時必須指明uuid。 |
os:scheduler_hints參數
|
參數 |
是否必選 |
參數類型 |
描述 |
|---|---|---|---|
|
group |
否 |
String |
反親和性組信息。 UUID格式。 說明: 請確保云服務器組使用的是反親和性anti-affinity策略,不推薦使用其他策略。 |
|
different_host |
否 |
Array of strings |
預留字段,當前不支持該功能。 |
|
same_host |
否 |
Array of strings |
預留字段,當前不支持該功能。 |
|
cidr |
否 |
String |
預留字段,當前不支持該功能。 |
|
build_near_host_ip |
否 |
String |
預留字段,當前不支持該功能。 |
|
tenancy |
否 |
String |
在 專屬主機 或共享池中創(chuàng)建彈性云服務器。默認為在共享池創(chuàng)建。 值為: shared或dedicated。
創(chuàng)建與查詢此值均有效。 |
|
dedicated_host_id |
否 |
String |
專屬主機ID。 此屬性僅在tenancy值為dedicated時有效。 不指定此屬性,系統將自動分配租戶可自動放置彈性云服務器的專屬主機。 創(chuàng)建與查詢此值均有效。 |
響應消息
響應參數如表9所示。
響應參數
|
參數 |
參數類型 |
描述 |
|---|---|---|
|
server |
Object |
云服務器信息,詳情請參見表10。 |
server字段數據結構說明
|
參數 |
參數類型 |
描述 |
|---|---|---|
|
id |
String |
彈性云服務器ID,UUID格式。 |
|
links |
Array of objects |
彈性云服務器URI自描述信息,詳情參見表11。 |
|
security_groups |
Array of objects |
彈性云服務器所在安全組,詳情參見表12。 |
|
OS-DCF:diskConfig |
String |
diskConfig方式。
|
|
reservation_id |
String |
reservation_id:通過返回的reservation_id,可以過濾查詢到本次創(chuàng)建的彈性云服務器。 說明: 批量創(chuàng)建彈性云服務器時,支持使用該字段。 |
|
adminPass |
String |
Windows彈性云服務器Administrator用戶的密碼。 |
links字段數據結構說明
|
參數 |
參數類型 |
描述 |
|---|---|---|
|
rel |
String |
快捷鏈接標記名稱。 |
|
href |
String |
對應快捷鏈接。 |
security_groups字段數據結構說明
|
參數 |
參數類型 |
描述 |
|---|---|---|
|
name |
String |
安全組名稱或者uuid。 |
請求示例
- 通過block_device_mapping_v2擴展屬性使用鏡像創(chuàng)建一臺云服務器,采用密鑰方式登錄鑒權。POST https://{endpoint}/v2.1/9c53a566cb3443ab910cf0daebca90c4/servers { "server": { "flavorRef": "2", "name": "wjvm48", "metadata": { "name": "name_xx1", "id": "id_xxxx1" }, "block_device_mapping_v2": [{ "source_type": "image", "destination_type": "volume", "uuid": "b023fe17-11db-4efb-b800-78882a0e394b", "delete_on_termination": "False", "boot_index": "0", "volume_type": "SAS", "volume_size": "40" }], "security_groups": [{ "name": "name_xx5_sg" }], "networks": [{ "uuid": "fd40e6f8-942d-4b4e-a7ae-465287b02a2c", "port": "e730a11c-1a19-49cc-8797-cee2ad67af6f", "fixed_ip": "10.20.30.137" }], "key_name": "test", "user_data": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1
- 通過block_device_mapping_v2擴展屬性使用快照創(chuàng)建一臺云服務器,其中,boot_index為0,且該快照對應的云硬盤必須為系統盤。POST https://{endpoint}/v2.1/9c53a566cb3443ab910cf0daebca90c4/servers { "server":{ "name":"wjvm48", "availability_zone":"az1-dc1", "block_device_mapping_v2": [ { "source_type":"snapshot", "boot_index":"0", "uuid":"df51997d-ee35-4fb3-a372-e2ac933a6565", // snapshot id,創(chuàng)建snapshot接口會返回id "destination_type":"volume" } ], "flavorRef":"s3.xlarge.2", "max_count":1, "min_count":1, "networks": [ { "uuid":"79a68cef-0936-4e21-b1f4-b800ecb70246" } ] } }
- 通過block_device_mapping_v2使用卷創(chuàng)建一臺彈性云服務器。POST https://{endpoint}/v2.1/9c53a566cb3443ab910cf0daebca90c4/servers { "server": { "flavorRef": "2", "name": "wjvm48", "metadata": { "name": "name_xx1", "id": "id_xxxx1" }, "block_device_mapping_v2": [{ "source_type": "volume", "destination_type": "volume", "uuid": "bd7e4f86-b004-4745-bea2-a55b1085f107", "delete_on_termination": "False", "boot_index": "0", "volume_type": "dsware", "volume_size": "40" }], "security_groups": [{ "name": "name_xx5_sg" }], "networks": [{ "uuid": "fd40e6f8-942d-4b4e-a7ae-465287b02a2c", "port": "e730a11c-1a19-49cc-8797-cee2ad67af6f", "fixed_ip": "10.20.30.137" }], "key_name": "test", "user_data": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN1
- 使用imageRef創(chuàng)建一臺彈性云服務器。POST https://{endpoint}/v2.1/9c53a566cb3443ab910cf0daebca90c4/servers { "server": { "flavorRef": "2", "name": "wjvm48", "metadata": { "name": "name_xx1", "id": "id_xxxx1" }, "adminPass": "name_xx1", "imageRef": "6b344c54-d606-4e1a-a99e-a7d0250c3d14", "security_groups": [{ "name": "name_xx5_sg" }], "networks": [{ "uuid": "fd40e6f8-942d-4b4e-a7ae-465287b02a2c", "port": "e730a11c-1a19-49cc-8797-cee2ad67af6f", "fixed_ip": "10.20.30.137" }], "key_name": "test", "user_data": "ICAgICAgDQoiQSBjbG91ZCBkb2VzIG5vdCBrbm93IHdoeSBpdCBtb3ZlcyBpbiBqdXN0IHN
- 批量創(chuàng)建彈性云服務器,最小數量為2,最大數量為3。POST https://{endpoint}/v2.1/9c53a566cb3443ab910cf0daebca90c4/servers { "server": { "availability_zone":"az1.dc1", "name": "test", "imageRef": "10ff4f01-35b6-4209-8397-359cb4475fa0", "flavorRef": "s3.medium", "return_reservation_id": "true", "networks": [ { "uuid": "51bead38-d1a3-4d08-be20-0970c24b7cab" } ], "min_count": "2", "max_count": "3" } }
響應示例
創(chuàng)建彈性云服務器:
{ "server": { "security_groups": [ { "name": "name_xx5_sg" } ], "OS-DCF:diskConfig": " MANUAL", "id": "567c1557-0eca-422c-bfce-149d6b8f1bb8", "links": [ { "href": "http://xxx/v2/dc4059e8e7994f2498b514ca04cdaf44/servers/567c1557-0eca-422c-bfce-149d6b8f1bb8", "rel": "self" }, { "href": "http://xxx/dc4059e8e7994f2498b514ca04cdaf44/servers/567c1557-0eca-422c-bfce-149d6b8f1bb8", "rel": "bookmark" } ], "adminPass": "name_xx1" } }
批量創(chuàng)建彈性云服務器:
{ "reservation_id": "r-3fhpjulh" }
返回值
請參考通用請求返回值。
