華為云計(jì)算 云知識(shí) 創(chuàng)建后端云服務(wù)器組CreatePool
創(chuàng)建后端云服務(wù)器組CreatePool

 

功能介紹

創(chuàng)建后端 云服務(wù)器 組。將多個(gè)后端云服務(wù)器添加到后端云服務(wù)器組中后,請(qǐng)求會(huì)在后端云服務(wù)器間按后端云服務(wù)器組的 負(fù)載均衡 算法和后端云服務(wù)器的權(quán)重來做請(qǐng)求分發(fā)。

接口約束

  • 指定session-persistence參數(shù)時(shí),只有當(dāng)type是APP_COOKIE時(shí),才可以設(shè)置cookie_name。

調(diào)試

您可以在API Explorer中直接運(yùn)行調(diào)試該接口。

URI

POST /v2/{project_id}/elb/pools

參數(shù)說明

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

操作用戶的項(xiàng)目ID。

獲取方法詳見獲取項(xiàng)目ID。

請(qǐng)求消息

請(qǐng)求參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

pool

Pool object

后端云服務(wù)器組對(duì)象。詳見表3

 

pool字段說明

參數(shù)

是否必選

參數(shù)類型

描述

tenant_id

String

后端云服務(wù)器組所屬的項(xiàng)目 ID。

獲取方法詳見獲取項(xiàng)目ID。

需要和token中的project_id一致。

支持的最大字符長(zhǎng)度:255

name

String

后端云服務(wù)器組名稱。

支持的最大字符長(zhǎng)度:255

description

String

后端云服務(wù)器組的描述信息。

支持的最大字符長(zhǎng)度:255

protocol

String

后端云服務(wù)器組的后端協(xié)議。

支持TCP、UDP和HTTP。

當(dāng)指定listener_id創(chuàng)建后端云服務(wù)器組時(shí),后端云服務(wù)器組的protocol和它關(guān)聯(lián)的監(jiān)聽器的protocol有如下關(guān)系:

  • 監(jiān)聽器的protocol為UDP時(shí),后端云服務(wù)器組的protocol必須為UDP;
  • 監(jiān)聽器的protocol為TCP時(shí),后端云服務(wù)器組的protocol必須為TCP;
  • 監(jiān)聽器的protocol為HTTP或TERMINATED_HTTPS時(shí),后端云服務(wù)器組的protocol必須為HTTP。

lb_algorithm

String

后端云服務(wù)器組的負(fù)載均衡算法。

取值范圍:

  • ROUND_ROBIN:加權(quán)輪詢算法。
  • LEAST_CONNECTIONS:加權(quán)最少連接算法。
  • SOURCE_IP:源IP算法。

當(dāng)該字段的取值為SOURCE_IP時(shí),后端云服務(wù)器組綁定的后端云服務(wù)器的weight字段無效。

admin_state_up

Boolean

后端云服務(wù)器組的管理狀態(tài)。

該字段為預(yù)留字段,暫未啟用。默認(rèn)為true。

listener_id

String

后端云服務(wù)器組關(guān)聯(lián)的監(jiān)聽器的ID。

listener_id和loadbalancer_id中至少指定一個(gè)。

loadbalancer_id

String

后端云服務(wù)器組關(guān)聯(lián)的負(fù)載均衡器ID。

listener_id和loadbalancer_id中至少指定一個(gè)。

session_persistence

SessionPersistence object

會(huì)話持久性。詳細(xì)參見表4。

取值為null時(shí),表示會(huì)話保持關(guān)閉。

 

session_persistence字段說明

參數(shù)

是否必選

參數(shù)類型

描述

type

String

會(huì)話保持的類型。

取值范圍:

  • SOURCE_IP:根據(jù)請(qǐng)求的源IP,將同一IP的請(qǐng)求發(fā)送到同一個(gè)后端云服務(wù)器上。
  • HTTP_COOKIE:客戶端第一次發(fā)送請(qǐng)求時(shí),負(fù)載均衡器自動(dòng)生成cookie并將該cookie插入響應(yīng)消息中,后續(xù)請(qǐng)求會(huì)發(fā)送到處理第一個(gè)請(qǐng)求的后端云服務(wù)器上。
  • APP_COOKIE:客戶端第一次發(fā)送請(qǐng)求時(shí),后端服務(wù)器生成cookie并將該cookie插入響應(yīng)消息中,后續(xù)請(qǐng)求會(huì)發(fā)送到處理第一個(gè)請(qǐng)求的后端云服務(wù)器上。

當(dāng)后端云服務(wù)器組的protocol為TCP時(shí),只按SOURCE_IP生效;當(dāng)后端云服務(wù)器組的protocol為HTTP時(shí),只按HTTP_COOKIE、APP_COOKIE生效。

cookie_name

String

cookie名稱。支持字母、數(shù)字、中劃線(-)和下劃線(_),最大長(zhǎng)度64個(gè)字符。

當(dāng)會(huì)話保持類型是APP_COOKIE時(shí),為必選字段,其它類型時(shí)不可指定。

persistence_timeout

Integer

會(huì)話保持的超時(shí)時(shí)間。

當(dāng)type為APP_COOKIE時(shí)不生效。

取值范圍:

  • [1,60](分鐘):當(dāng)后端云服務(wù)器組的protocol為TCP、UDP時(shí)。
  • [1,1440](分鐘):當(dāng)后端云服務(wù)器組的protocol為HTTP、HTTPS時(shí)。

響應(yīng)消息

響應(yīng)參數(shù)

參數(shù)

參數(shù)類型

描述

pool

Pool object

后端云服務(wù)器組對(duì)象。詳見表6 pool字段說明

 

pool字段說明

參數(shù)

參數(shù)類型

描述

id

String

后端云服務(wù)器組 ID。

tenant_id

String

后端云服務(wù)器組所屬的項(xiàng)目 ID。

支持的最大字符長(zhǎng)度:255

project_id

String

此參數(shù)和tenant_id參數(shù)含義一樣,均指后端云服務(wù)器組所屬的項(xiàng)目 ID。

name

String

后端云服務(wù)器組名稱。

支持的最大字符長(zhǎng)度:255

description

String

后端云服務(wù)器組的描述信息。

支持的最大字符長(zhǎng)度:255

protocol

String

后端云服務(wù)器組的后端協(xié)議。

取值范圍:TCP、UDP和HTTP。

當(dāng)指定listener_id創(chuàng)建后端云服務(wù)器組時(shí),后端云服務(wù)器組的protocol和它關(guān)聯(lián)的監(jiān)聽器的protocol有如下關(guān)系:

  • 監(jiān)聽器的protocol為UDP時(shí),后端云服務(wù)器組的protocol必須為UDP;
  • 監(jiān)聽器的protocol為TCP時(shí),后端云服務(wù)器組的protocol必須為TCP;
  • 監(jiān)聽器的protocol為HTTP或TERMINATED_HTTPS時(shí),后端云服務(wù)器組的protocol必須為HTTP。

lb_algorithm

String

后端云服務(wù)器組的負(fù)載均衡算法。

取值范圍:

  • ROUND_ROBIN:加權(quán)輪詢算法。
  • LEAST_CONNECTIONS:加權(quán)最少連接算法。
  • SOURCE_IP:源IP算法。當(dāng)該字段的取值為SOURCE_IP時(shí),后端云服務(wù)器組綁定的后端云服務(wù)器的weight字段無效。

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)。

該字段為預(yù)留字段,暫未啟用。取值范圍:true/false。

  • true表示開啟。
  • false表示關(guān)閉。

listeners

Array of Listeners objects

后端云服務(wù)器組關(guān)聯(lián)的監(jiān)聽器ID列表。詳見表8

loadbalancers

Array of Loadbalancers objects

后端云服務(wù)器組關(guān)聯(lián)的負(fù)載均衡器ID列表。詳見表9

session_persistence

SessionPersistence object

后端云服務(wù)器組的會(huì)話持久性。詳見表10。

當(dāng)開啟會(huì)話保持后,在一定時(shí)間內(nèi),來自同一客戶端的請(qǐng)求會(huì)發(fā)送到同一個(gè)后端云服務(wù)器上。

取值范圍:當(dāng)會(huì)話保持關(guān)閉時(shí),該字段取值為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)的負(fù)載均衡器id

 

session_persistence字段說明

參數(shù)

是否必選

參數(shù)類型

描述

type

String

會(huì)話保持的類型。

取值范圍:

  • SOURCE_IP:根據(jù)請(qǐng)求的源IP,將同一IP的請(qǐng)求發(fā)送到同一個(gè)后端云服務(wù)器上。
  • HTTP_COOKIE:客戶端第一次發(fā)送請(qǐng)求時(shí),負(fù)載均衡器自動(dòng)生成cookie并將該cookie插入響應(yīng)消息中,后續(xù)請(qǐng)求會(huì)發(fā)送到處理第一個(gè)請(qǐng)求的后端云服務(wù)器上。
  • APP_COOKIE:客戶端第一次發(fā)送請(qǐng)求時(shí),后端服務(wù)器生成cookie并將該cookie插入響應(yīng)消息中,后續(xù)請(qǐng)求會(huì)發(fā)送到處理第一個(gè)請(qǐng)求的后端云服務(wù)器上。

當(dāng)后端云服務(wù)器組的protocol為TCP時(shí),只按SOURCE_IP生效;當(dāng)后端云服務(wù)器組的protocol為HTTP時(shí),只按HTTP_COOKIE、APP_COOKIE生效。

cookie_name

String

cookie名稱。支持字母、數(shù)字、中劃線(-)和下劃線(_),最大長(zhǎng)度64個(gè)字符。

當(dāng)會(huì)話保持類型是APP_COOKIE時(shí),為必選字段,其它類型時(shí)不可指定。

persistence_timeout

Integer

會(huì)話保持的超時(shí)時(shí)間。

當(dāng)type為APP_COOKIE時(shí)不生效。

取值范圍:

  • [1,60](分鐘):當(dāng)后端云服務(wù)器組的protocol為TCP、UDP時(shí)。
  • [1,1440](分鐘):當(dāng)后端云服務(wù)器組的protocol為HTTP、HTTPS時(shí)。

請(qǐng)求示例

  • 請(qǐng)求樣例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" } }
  • 請(qǐng)求樣例2 創(chuàng)建后端云服務(wù)器組,并開啟APP_COOKIE類型的會(huì)話保持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 } }
  • 請(qǐng)求樣例3 創(chuàng)建HTTP后端云服務(wù)器組,并開啟HTTP_COOKIE類型的會(huì)話保持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": "" } }

返回碼

請(qǐng)參見狀態(tài)碼。