功能介紹
創(chuàng)建后端 云服務(wù)器 組。將多個后端云服務(wù)器添加到后端云服務(wù)器組中后,請求會在后端云服務(wù)器間按后端云服務(wù)器組的 負載均衡 算法和后端云服務(wù)器的權(quán)重來做請求分發(fā)。
接口約束
- 指定session-persistence參數(shù)時,只有當type是APP_COOKIE時,才可以設(shè)置cookie_name。
調(diào)試
您可以在API Explorer中直接運行調(diào)試該接口。
URI
POST /v2/{project_id}/elb/pools
參數(shù)說明
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
project_id |
是 |
String |
操作用戶的項目ID。 獲取方法詳見獲取項目ID。 |
請求消息
請求參數(shù)
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
pool |
是 |
Pool object |
后端云服務(wù)器組對象。詳見表3 |
pool字段說明
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
tenant_id |
否 |
String |
后端云服務(wù)器組所屬的項目 ID。 獲取方法詳見獲取項目ID。 需要和token中的project_id一致。 支持的最大字符長度:255 |
|
name |
否 |
String |
后端云服務(wù)器組名稱。 支持的最大字符長度:255 |
|
description |
否 |
String |
后端云服務(wù)器組的描述信息。 支持的最大字符長度:255 |
|
protocol |
是 |
String |
后端云服務(wù)器組的后端協(xié)議。 支持TCP、UDP和HTTP。 當指定listener_id創(chuàng)建后端云服務(wù)器組時,后端云服務(wù)器組的protocol和它關(guān)聯(lián)的監(jiān)聽器的protocol有如下關(guān)系:
|
|
lb_algorithm |
是 |
String |
后端云服務(wù)器組的負載均衡算法。 取值范圍:
當該字段的取值為SOURCE_IP時,后端云服務(wù)器組綁定的后端云服務(wù)器的weight字段無效。 |
|
admin_state_up |
否 |
Boolean |
后端云服務(wù)器組的管理狀態(tài)。 該字段為預留字段,暫未啟用。默認為true。 |
|
listener_id |
否 |
String |
后端云服務(wù)器組關(guān)聯(lián)的監(jiān)聽器的ID。 listener_id和loadbalancer_id中至少指定一個。 |
|
loadbalancer_id |
否 |
String |
后端云服務(wù)器組關(guān)聯(lián)的負載均衡器ID。 listener_id和loadbalancer_id中至少指定一個。 |
|
session_persistence |
否 |
SessionPersistence object |
會話持久性。詳細參見表4。 取值為null時,表示會話保持關(guān)閉。 |
session_persistence字段說明
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
type |
是 |
String |
會話保持的類型。 取值范圍:
當后端云服務(wù)器組的protocol為TCP時,只按SOURCE_IP生效;當后端云服務(wù)器組的protocol為HTTP時,只按HTTP_COOKIE、APP_COOKIE生效。 |
|
cookie_name |
否 |
String |
cookie名稱。支持字母、數(shù)字、中劃線(-)和下劃線(_),最大長度64個字符。 當會話保持類型是APP_COOKIE時,為必選字段,其它類型時不可指定。 |
|
persistence_timeout |
否 |
Integer |
會話保持的超時時間。 當type為APP_COOKIE時不生效。 取值范圍:
|
響應(yīng)消息
響應(yīng)參數(shù)
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
pool |
Pool object |
后端云服務(wù)器組對象。詳見表6 pool字段說明 |
pool字段說明
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
id |
String |
后端云服務(wù)器組 ID。 |
|
tenant_id |
String |
后端云服務(wù)器組所屬的項目 ID。 支持的最大字符長度:255 |
|
project_id |
String |
此參數(shù)和tenant_id參數(shù)含義一樣,均指后端云服務(wù)器組所屬的項目 ID。 |
|
name |
String |
后端云服務(wù)器組名稱。 支持的最大字符長度:255 |
|
description |
String |
后端云服務(wù)器組的描述信息。 支持的最大字符長度:255 |
|
protocol |
String |
后端云服務(wù)器組的后端協(xié)議。 取值范圍:TCP、UDP和HTTP。 當指定listener_id創(chuàng)建后端云服務(wù)器組時,后端云服務(wù)器組的protocol和它關(guān)聯(lián)的監(jiān)聽器的protocol有如下關(guān)系:
|
|
lb_algorithm |
String |
后端云服務(wù)器組的負載均衡算法。 取值范圍:
|
|
members |
Array of Members objects |
后端云服務(wù)器組關(guān)聯(lián)的后端云服務(wù)器ID的列表。詳見表7 |
|
healthmonitor_id |
String |
后端云服務(wù)器組關(guān)聯(lián)的健康檢查的ID。 |
|
admin_state_up |
Boolean |
后端云服務(wù)器組的管理狀態(tài)。 該字段為預留字段,暫未啟用。取值范圍:true/false。
|
|
listeners |
Array of Listeners objects |
后端云服務(wù)器組關(guān)聯(lián)的監(jiān)聽器ID列表。詳見表8 |
|
loadbalancers |
Array of Loadbalancers objects |
后端云服務(wù)器組關(guān)聯(lián)的負載均衡器ID列表。詳見表9 |
|
session_persistence |
SessionPersistence object |
后端云服務(wù)器組的會話持久性。詳見表10。 當開啟會話保持后,在一定時間內(nèi),來自同一客戶端的請求會發(fā)送到同一個后端云服務(wù)器上。 取值范圍:當會話保持關(guān)閉時,該字段取值為null。 |
members字段說明
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
id |
String |
關(guān)聯(lián)的后端服務(wù)器id |
listeners字段說明
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
id |
String |
關(guān)聯(lián)的后端服務(wù)器組id |
loadbalancers字段說明
|
參數(shù) |
參數(shù)類型 |
描述 |
|---|---|---|
|
id |
String |
關(guān)聯(lián)的負載均衡器id |
session_persistence字段說明
|
參數(shù) |
是否必選 |
參數(shù)類型 |
描述 |
|---|---|---|---|
|
type |
是 |
String |
會話保持的類型。 取值范圍:
當后端云服務(wù)器組的protocol為TCP時,只按SOURCE_IP生效;當后端云服務(wù)器組的protocol為HTTP時,只按HTTP_COOKIE、APP_COOKIE生效。 |
|
cookie_name |
否 |
String |
cookie名稱。支持字母、數(shù)字、中劃線(-)和下劃線(_),最大長度64個字符。 當會話保持類型是APP_COOKIE時,為必選字段,其它類型時不可指定。 |
|
persistence_timeout |
否 |
Integer |
會話保持的超時時間。 當type為APP_COOKIE時不生效。 取值范圍:
|
請求示例
- 請求樣例1 創(chuàng)建HTTP后端云服務(wù)器組POST https://{Endpoint}/v2/601240b9c5c94059b63d484c92cfe308/elb/pools { "pool": { "lb_algorithm":"ROUND_ROBIN", "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", "protocol":"HTTP" } }
- 請求樣例2 創(chuàng)建后端云服務(wù)器組,并開啟APP_COOKIE類型的會話保持POST https://{Endpoint}/v2/145483a5107745e9b3d80f956713e6a3/elb/pools { "pool": { "lb_algorithm": "ROUND_ROBIN", "loadbalancer_id": "370fb112-e920-486a-b051-1d0d30704dd3", "protocol": "HTTP", "session_persistence": { "cookie_name": "my_cookie", "type": "APP_COOKIE", "persistence_timeout": 1 }, "admin_state_up": true } }
- 請求樣例3 創(chuàng)建HTTP后端云服務(wù)器組,并開啟HTTP_COOKIE類型的會話保持POST https://{Endpoint}/v2/601240b9c5c94059b63d484c92cfe308/elb/pools { "pool": { "lb_algorithm":"ROUND_ROBIN", "loadbalancer_id": "63ad9dfe-4750-479f-9630-ada43ccc8117", "protocol":"HTTP", "session_persistence":{ "type":"HTTP_COOKIE" } } }
響應(yīng)示例
- 響應(yīng)樣例1{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "project_id": "601240b9c5c94059b63d484c92cfe308", "session_persistence": null, "healthmonitor_id": null, "listeners": [], "members": [], "id": "4e496951-befb-47bf-9573-c1cd11825c07", "name": "" } }
- 響應(yīng)樣例2{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "6b041b9e-976b-40ba-b075-375be6110b53" } ], "tenant_id": "145483a5107745e9b3d80f956713e6a3", "project_id": "145483a5107745e9b3d80f956713e6a3", "session_persistence": { "cookie_name": "my_cookie", "type": "APP_COOKIE", "persistence_timeout": 1 }, "healthmonitor_id": null, "listeners": [ { "id": "370fb112-e920-486a-b051-1d0d30704dd3" } ], "members": [], "id": "307f8968-9474-4d0c-8434-66be09dabcc1", "name": "" } }
- 響應(yīng)樣例3{ "pool": { "lb_algorithm": "ROUND_ROBIN", "protocol": "HTTP", "description": "", "admin_state_up": true, "loadbalancers": [ { "id": "63ad9dfe-4750-479f-9630-ada43ccc8117" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "project_id": "601240b9c5c94059b63d484c92cfe308", "session_persistence": { "persistence_timeout": 1440, "cookie_name": null, "type": "HTTP_COOKIE" }, "healthmonitor_id": null, "listeners": [], "members": [], "id": "d46eab56-d76b-4cd3-8952-3c3c4cf113aa", "name": "" } }
返回碼
請參見狀態(tài)碼。
