創建TCP監聽。
接口說明
調試
您可以在OpenAPI Explorer中直接運行該接口,免去您計算簽名的困擾。運行成功后,OpenAPI Explorer可以自動生成SDK代碼示例。
授權信息
下表是API對應的授權信息,可以在RAM權限策略語句的Action
元素中使用,用來給RAM用戶或RAM角色授予調用此API的權限。具體說明如下:
- 操作:是指具體的權限點。
- 訪問級別:是指每個操作的訪問級別,取值為寫入(Write)、讀取(Read)或列出(List)。
- 資源類型:是指操作中支持授權的資源類型。具體說明如下:
- 對于必選的資源類型,用背景高亮的方式表示。
- 對于不支持資源級授權的操作,用
全部資源
表示。
- 條件關鍵字:是指云產品自身定義的條件關鍵字。
- 關聯操作:是指成功執行操作所需要的其他權限。操作者必須同時具備關聯操作的權限,操作才能成功。
操作 | 訪問級別 | 資源類型 | 條件關鍵字 | 關聯操作 |
---|---|---|---|---|
slb:CreateLoadBalancerTCPListener | create |
|
| 無 |
請求參數
名稱 | 類型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
RegionId | string | 否 | 傳統型負載均衡實例的地域 ID。 您可以從地域和可用區列表或通過調用 DescribeRegions 接口查詢地域 ID。 | cn-hangzhou |
LoadBalancerId | string | 是 | 傳統型負載均衡實例的 ID。 | lb-bp1b6c719dfa08ex**** |
ListenerPort | integer | 是 | 傳統型負載均衡實例前端使用的端口。 取值范圍:1~65535。 | 80 |
BackendServerPort | integer | 否 | 傳統型負載均衡實例后端使用的端口。 取值范圍:1~65535。 如果不使用服務器組(不指定 vServerGroupId),則該參數必選。 | 80 |
Tag | array<object> | 否 | 標簽列表。 | |
object | 否 | 標簽列表。 | ||
Key | string | 否 | 監聽的標簽鍵。N 的取值范圍:1~20。一旦傳入該值,則不允許為空字符串。最多支持 64 個字符,不能以 | TestKey |
Value | string | 否 | 監聽的標簽值。N 的取值范圍:1~20。一旦傳入該值,可以為空字符串。最多支持 128 個字符,不能以 | TestValue |
Bandwidth | integer | 是 | 監聽的帶寬峰值,單位:Mbps。取值:
| -1 |
Scheduler | string | 否 | 調度算法。取值:
說明
僅性能保障型實例支持 sch 和 tch 一致性 hash 算法。
| wrr |
PersistenceTimeout | integer | 否 | 會話保持的超時時間。單位:秒。 取值范圍:0~3600。 默認值:0,表示關閉會話保持。 | 0 |
EstablishedTimeout | integer | 否 | 連接超時時間。單位:秒。 取值范圍:10~900。 | 500 |
HealthyThreshold | integer | 否 | 健康檢查連續成功多少次后,將后端服務器的健康檢查狀態由 fail 判定為 success。 取值范圍: 2~10。 | 4 |
UnhealthyThreshold | integer | 否 | 健康檢查連續失敗多少次后,將后端服務器的健康檢查狀態由 success 判定為 fail。 取值范圍:2~10。 | 4 |
HealthCheckConnectTimeout | integer | 否 | 每次健康檢查響應的最大超時時間。單位:秒。 取值范圍:1~300。 默認值:5。 | 100 |
HealthCheckConnectPort | integer | 否 | 健康檢查使用的端口。 取值范圍:1~65535。 不設置此參數時,表示使用后端服務端口(BackendServerPort)。 | 80 |
healthCheckInterval | integer | 否 | 健康檢查的時間間隔。單位:秒。 取值范圍:1~50。 | 3 |
HealthCheckDomain | string | 否 | 用于健康檢查的域名。取值:
| 172.XX.XX.6 |
HealthCheckURI | string | 否 | 用于健康檢查的 URI。長度限制為 1~80,只能使用字母、數字、短劃線(-)、正斜線(/)、半角句號(.)、百分號(%)、井號(#)和 and(&)這些字符。 URI 不能只為正斜線(/),但必須以正斜線(/)開頭。 當 TCP 監聽需要使用 HTTP 健康檢查時可配置此參數,如不配置則按 TCP 健康檢查。 | /test/index.html |
HealthCheckHttpCode | string | 否 | 健康檢查正常的 HTTP 狀態碼,多個狀態碼用半角逗號(,)分割。取值:
| http_2xx,http_3xx |
HealthCheckType | string | 否 | 健康檢查類型。取值:
| tcp |
VServerGroupId | string | 否 | 虛擬服務器組 ID。 | rsp-cige6j**** |
MasterSlaveServerGroupId | string | 否 | 主備服務器組 ID。 說明
虛擬服務器組 ID 和主備服務器組 ID 只能選擇一個。
| rsp-0bfucw**** |
AclId | string | 否 | 監聽綁定的訪問策略組 ID。 說明
當 AclStatus 參數的值為 on 時,該參數必選。
| acl-uf60jwfiv6****** |
AclType | string | 否 | 訪問控制類型:
一旦設置白名單,就只有白名單中的 IP 可以訪問負載均衡監聽。如果開啟了白名單訪問,但訪問策略組中沒有添加任何 IP,則負載均衡監聽會轉發全部請求。
如果開啟了黑名單訪問,但訪問策略組中沒有添加任何 IP,則負載均衡監聽會轉發全部請求。 說明
當 AclStatus 參數的值為 on 時,該參數有效。
| black |
AclStatus | string | 否 | 是否開啟訪問控制功能。取值:
| off |
Description | string | 否 | 自定義監聽名稱。 長度限制為 1~256 個字符,支持中文、字母、數字、短劃線(-)、正斜線(/)、半角句號(.)和下劃線(_)。 | tcp_80 |
ConnectionDrain | string | 否 | 是否開啟連接優雅中斷。取值:
| off |
ConnectionDrainTimeout | integer | 否 | 設置連接優雅中斷超時時間。單位:秒。 取值范圍:10~900。 說明
當 ConnectionDrain 取值為 on 時,該選項必選。
| 300 |
ProxyProtocolV2Enabled | boolean | 否 | 是否支持通過 Proxy Protocol 協議攜帶客戶端源地址到后端服務器。取值:
| false |
HealthCheckSwitch | string | 否 | 是否開啟健康檢查。取值:
| on |
返回參數
示例
正常返回示例
JSON
格式
{
"RequestId": "CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}
錯誤碼
HTTP status code | 錯誤碼 | 錯誤信息 | 描述 |
---|---|---|---|
400 | InvalidParameterValue.SpecNotSupport | The loadBalancer of shared spec does not support the parameter value, %s. | 共享型負載均衡實例不支持指定的參數取值。 |
400 | OperationNotSupport.Acl | The cloud box instance does not support acl. | 云盒實例不支持配置訪問控制。 |
400 | InvalidParameterValue.RegionNotSupport | The region does not support the parameter value, %s. | 當前地域不支持指定的參數取值。 |
400 | Abs.VServerGroupIdAndMasterSlaveServerGroupId.MissMatch | The parameters VServerGroupId or MasterSlaveServerGroupId miss match. | 參數VServerGroupId或MasterSlaveServerGroupId不匹配。 |
400 | IpVersionConflict | The ip version of this LoadBalancer and the Acl is conflict. | 指定負載均衡的IP版本與ACL支持的IP類型沖突。 |
400 | InvalidParameterValue.ZoneNotSupport | The zone does not support the parameter value, %s. | 當前可用區不支持指定參數取值。 |
400 | ListenerProcessing | A previous configuration of the listener is pending, please try again later. | 當前監聽正在配置中,請稍后重試。 |
400 | AclNotExist | Acl does not exist. | 指定的Acl不存在。 |
400 | InvalidParameter.ListenerPortConflict | There is conflict listener port exists. | 指定的監聽端口已存在。 |
400 | InvalidParameter.ZoneNotSupport | The zone does not support the parameter %s. | 當前可用區不支持指定參數。 |
400 | InvalidParam.VServerGroupId | The specified VServerGroupId is invalid. | 指定的VServerGroupId無效。請檢查參數約束,并在修改后重試。 |
400 | MissingParam.HealthCheckConnectPort | The parameter HealthCheckConnectPort is required. | 參數HealthCheckConnectPort缺失。 |
400 | InvalidParam.ListenerPort | The specified ListenerPort is invalid. | 指定的ListenerPort無效。請檢查參數約束,并在修改后重試。 |
400 | InvalidParam.StartPort | The specified StartPort is invalid. | 指定的StartPort無效。請檢查參數約束,并在修改后重試。 |
400 | InvalidParamSize.PortRange | The size of param PortRange is invalid. | 指定的PortRange無效。請檢查參數約束,并在修改后重試。 |
400 | InvalidParam.EndPort | The specified EndPort is invalid. | 指定的EndPort無效。請檢查參數約束,并在修改后重試。 |
400 | QuotaLimitExceeds.AclAttachedToListener | %s. | - |
400 | QuotaLimitExceeds.TotalAclEntry | %s. | - |
400 | AclListenerOverLimit | %s. | - |
400 | Duplicated.AclEntry | %s. | Acl條目重復。 |
400 | OperationUnsupported.SetAccessControl | The singleTunnel/anyTunnel loadbalancer does not support config AccessControlList. | 操作被拒絕,原因是Single Tunnel和Any Tunnel 類型負載均衡實例不支持配置Acl。 |
400 | InvalidParam.PortRange | The specified PortRange is invalid. | 指定的PortRange無效。請檢查參數約束,并在修改后重試。 |
400 | InvalidParameter.RegionNotSupport | The region does not support the parameter: %s. | 當前區域不支持指定參數。 |
400 | LbNotSupportTcpssl | You cannot create a TCP SSL type listener for the specified load balancer. | 指定的實例不支持創建tcpssl類型的監聽。 |
400 | LbSupportTcpsslOnly | The specified load balancer supports TCP SSL type listener only. | 指定的實例只支持創建tcpssl類型的監聽。 |
400 | ListenerNotSupportRule | You cannot create a rule for the specified listener. | 指定的監聽不支持創建轉發規則。 |
400 | ListenerPortConflict | The specified ListenerPort is conflict with other listener. | 指定的監聽端口號已被占用。 |
400 | ResourceNotFound.VServerGroup | %s. | 指定的服務器組不存在。 |
400 | IllegalParam.FailoverThreshold | The parameter FailoverThreshold is illegal. | 指定的FailoverThreshold無效。請檢查參數約束,并在修改后重試。 |
400 | IllegalParam.FailoverStrategy | The parameter FailoverStrategy is illegal. | 指定的FailoverStrategy無效。請檢查參數約束,并在修改后重試。 |
400 | MasterSlaveServerConflict | The servers are conflict for MasterSlaveGroup. | 主備服務器組的后端服務器沖突。 |
400 | OperationDenied.HealthCheckClosedForMasterSlaveMode | The operation is denied because of HealthCheckClosedForMasterSlaveMode. | 操作被拒絕,原因是主備模式下要求必須開啟健康檢查。 |
400 | IllegalParam.HealthCheck | The param of HelathCheck is illegal. | 指定的HealthCheck無效。請檢查參數約束,并在修改后重試。 |
400 | Mismatch.SlbSpecTypeAndListenerProtocol | The SlbSpecType and ListenerProtocol are mismatched. | 實例規格類型和監聽類型不匹配。 |
400 | OperationDenied.FullNatModeNotAllowed | The operation is not allowed because of FullNatModeNotAllowed. | 操作被拒絕,原因是不支持FullNat模式。 |
400 | OperationDenied.OnlyIpv4SlbSupport | The operation is not allowed because of OnlyIpv4SlbSupport. | 操作被拒絕,原因是只有IPV4實例支持開啟FULL NAT模式。 |
400 | SpecNotSupportParameter | The instance with share spec does not support FullNatEnabled parameter. | 共享型實例不支持FullNatEnabled參數。 |
400 | InvalidParam.TagValue | %s. | - |
400 | InvalidParam.TagKey | %s. | - |
400 | SizeLimitExceeded.Tag | %s. | - |
400 | MissingParam.TagKey | The param MissingParam.TagKey is missing. | - |
400 | MissingParameter | The BackendServerPort or VServerGroupId is required at lease one. | 參數BackendServerPort和VServerGroupId至少需要配置一個。 |
訪問錯誤中心查看更多錯誤碼。
變更歷史
變更時間 | 變更內容概要 | 操作 |
---|---|---|
2023-09-08 | OpenAPI 錯誤碼發生變更 | 查看變更詳情 |
2023-06-02 | OpenAPI 錯誤碼發生變更 | 查看變更詳情 |