详情页标题前

阿里云负载均衡CreateLoadBalancerHTTPListener – 创建HTTP监听-云淘科技

详情页1

创建HTTP监听

接口说明

注意事项

新建的监听的状态为stopped。创建完成后,调用StartLoadBalancerListener接口启动监听来转发流量。

前提条件

您已经创建传统型负载均衡,具体操作,请参见CreateLoadBalancer。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI
Explorer可以自动生成SDK代码示例。

调试阿里云负载均衡CreateLoadBalancerHTTPListener - 创建HTTP监听-云淘科技调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 访问级别 资源类型 条件关键字 关联操作
slb:CreateLoadBalancerHTTPListener WRITE
  • aclacs:slb:{#regionId}:{#accountId}:acl/{#aclId}
  • loadbalanceracs:slb:{#regionId}:{#accountId}:loadbalancer/{#loadbalancerId}
  • slb:tag

请求参数

名称 类型 必填 描述 示例值
RegionId string

传统型负载均衡实例的地域ID。

您可以从地域和可用区列表或通过调用DescribeRegions接口获取地域ID。

cn-hangzhou
LoadBalancerId string

传统型负载均衡实例ID。

lb-bp1c9vixxjh92q83tw*****
Bandwidth integer

监听的带宽峰值,单位:Mbps。取值:

  • -1:不限制带宽峰值。

  • 1~5120:监听的带宽峰值,所有监听的带宽峰值之和不能超过实例的带宽峰值。

说明
该参数只适用于中国内地。

-1
ListenerPortinteger

实例前端使用的端口。

取值:1~65535

80
BackendServerPort integer

实例后端使用的端口。

取值:1~65535

说明
如果不使用服务器组(不指定VServerGroupId参数),则该参数必选。

80
XForwardedForstring

是否开启通过X-Forwarded-For头字段获取来访客户端IP。取值:

  • on(默认值):是。
  • off:否。
on
Scheduler string

调度算法。取值:

  • wrr(默认值):权重值越高的后端服务器,被轮询到的概率也越高。

  • rr:按照访问顺序依次将外部请求依序分发到后端服务器。

wrr
StickySession string

是否开启会话保持。取值:

  • on:是。

  • off(默认值):否。

off
StickySessionType string

Cookie处理方式。取值:

  • insert:植入Cookie。

    客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP或HTTPS响应报文中插入ServerId),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。

  • server:重写Cookie。

负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。

> 当**StickySession**值为**on**时,必须指定该参数。
insert
Tag object []

标签列表。

Key string

监听的标签键。N的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持128个字符,不能以aliyunacs:开头,不能包含http://https://

TestKey
Value string

监听的标签值。N的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持128个字符,不能以acs:开头,不能包含http://或者https://

TestValue
CookieTimeout integer

Cookie超时时间。单位:秒。

取值:1~86400

说明
StickySessiononStickySessionTypeinsert时,该参数必选。

500
Cookiestring

服务器上配置的Cookie。

长度为1~200个字符,只能包含ASCII英文字母和数字字符,不能包含半角逗号(,)、半角分号(;)或空格,也不能以美元符号($)开头。

说明
StickySessiononStickySessionTypeserver时,该参数必选。

B490B5EBF6F3CD402E515D22BCDA1598
HealthCheckstring

是否开启健康检查。取值:

  • on:开启健康检查。

  • off:不开启健康检查。

on
HealthCheckMethod string

监听HTTP类型健康检查的健康检查方法。取值:headget

说明
HealthCheck值为on时才会有效。

get
HealthCheckDomainstring

用于健康检查的域名,取值:

  • $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。

  • domain:域名长度为1~80字符,只能包含字母、数字、半角句号(.)和短划线(-)。

说明
HealthCheck值为on时才会有效。

172.16.0.0/12
HealthCheckURIstring

用于健康检查的URI。

长度限制为1~80个字符,只能使用字母、数字和短划线(-)、正斜线(/)、半角句号(.)、百分号(%)、半角问号(?)、井号(#)和and(&)这些字符。URI不能只为正斜线(/),但必须以正斜线(/)开头。

说明
HealthCheck值为on时才会有效。

/test/index.html
HealthyThresholdinteger

健康检查连续成功多少次后,将后端服务器的健康检查状态由失败判定为成功

取值:2~10

说明
HealthCheck值为on时才会有效。

4
UnhealthyThresholdinteger

健康检查连续失败多少次后,将后端服务器的健康检查状态由成功判定为失败

取值:2~10

说明
HealthCheck值为on时才会有效。

4
HealthCheckTimeoutinteger

接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。单位:秒。

取值:1~300

说明

  • 如果HealthCheckTimeout的值大于HealthCheckInterval的值,则HealthCheckTimeout无效,超时时间为HealthCheckInterval的值。
    • HealthCheck值为on时才会有效。
    3
    HealthCheckConnectPort integer

    健康检查的后端服务器的端口。

    取值: 1~65535

    说明
    HealthCheck值为on时才会有效。

    80
    HealthCheckIntervalinteger

    健康检查的时间间隔。单位:秒。

    取值: 1~50

    说明
    HealthCheck值为on时才会有效。

    5
    HealthCheckHttpCodestring

    健康检查正常的HTTP状态码,多个状态码用逗号分隔。

    取值:http_2xx(默认值)、http_3xxhttp_4xxhttp_5xx

    说明
    HealthCheck值为on时才会有效。

    http_2xx
    VServerGroupIdstring

    虚拟服务器组ID。

    rsp-cige6j*****
    XForwardedFor_SLBIP string

    是否通过SLB-IP头字段获取客户端请求的VIP(Virtual IP address)。取值:

    • on:是。
    • off(默认值):否。
    on
    XForwardedFor_SLBID string

    是否通过SLB-ID头字段获取负载均衡实例ID。取值:

    • on:是。
    • off(默认值):否。
    on
    XForwardedFor_proto string

    是否通过X-Forwarded-Proto头字段获取负载均衡实例的监听协议。取值:

    • on:是。
    • off(默认值):否。
    on
    Gzip string

    是否开启Gzip压缩,对特定文件类型进行压缩。取值:

    • on(默认值):是。
    • off:否。
    on
    AclId string

    监听绑定的访问策略组ID。

    说明
    AclStatus参数的值为on时,该参数必选。

    123
    AclTypestring

    访问控制类型。取值:

    • white: 仅转发来自所选访问控制策略组中设置的IP地址或地址段的请求,白名单适用于只允许特定IP访问的场景。设置白名单存在一定业务风险。一旦设置白名单,就只有白名单中的IP可以访问负载均衡监听。

    如果开启了白名单访问,但访问策略组中没有添加任何IP,则负载均衡监听会转发全部请求。

    • black: 来自所选访问控制策略组中设置的IP地址或地址段的所有请求都不会转发,黑名单适用于只限制某些特定IP访问的场景。

    如果开启了黑名单访问,但访问策略组中没有添加任何IP,则负载均衡监听会转发全部请求。

    说明
    AclStatus参数的值为on时,该参数有效。

    white
    AclStatusstring

    是否开启访问控制功能。取值:

    • on:是。
    • off(默认值):否。
    off
    Description string

    自定义监听名称。

    长度限制为1~256个字符,支持中文、字母、数字、短划线(-)、正斜线(/)、半角句号(.)和下划线(_)。

    HTTP_443
    ListenerForward string

    是否开启HTTP至HTTPS的转发。取值:

    • on:是。
    • off(默认值):否。
    off
    ForwardPort integer

    HTTP至HTTPS的监听转发端口。

    443
    IdleTimeout integer

    指定连接空闲超时时间。单位:秒。

    默认值为15,取值范围:1~60

    在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。

    3
    RequestTimeout integer

    指定请求超时时间。单位:秒。

    默认值为60,取值范围为1~180

    在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP 504错误码。

    6

    返回参数

    名称 类型 描述 示例值
    object
    RequestId string

    请求ID。

    CEF72CEB-54B6-4AE8-B225-F876FF7BA984

    示例

    正常返回示例

    JSON格式

    {
      "RequestId": "CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
    }

    错误码

    HTTP status code 错误码 错误信息 描述
    400 InvalidParameter.RegionNotSupport The region does not support the parameter: %s. 当前区域不支持指定参数。
    400 IpVersionConflict The ip version of this LoadBalancer and the Acl is conflict. 指定负载均衡的IP版本与ACL支持的IP类型冲突。
    400 InvalidParameter The specified ListenerPort or ForwardPort is invalid. 指定的ListenerPort or ForwardPort无效。请检查参数约束,并在修改后重试。
    400 ListenerForwardNotSupport X-Forward-For is not supported to a ipv6 instance. Ipv6负载均衡实例不支持X-Forward-For。
    400 InvalidParameter.IdleTimeout The specified IdleTimeout exceeds the limit. 指定的IdleTimeout无效。请检查参数约束,并在修改后重试。
    400 InvalidParameter.RequestTimeout The specified RequestTimeout exceeds the limit. 指定的RequestTimeout无效。请检查参数约束,并在修改后重试。
    400 ListenerProcessing A previous configuration of the listener is pending,please try again later. 当前监听正在配置中,请稍后重试。
    400 InvalidParameter.ListenerPortConflict There is conflict listener port exists. 指定的监听端口已存在。
    400 ResourceNotAvailible.HttpListener The specified Zone did not have enough resource. 指定可用区资源不足。
    400 AclNotExist Acl does not exist. 指定的Acl不存在。
    400 OperationUnsupported.CreateLoadBalancerLayer7Listener The slb instance does not support create HTTP or HTTPS listener. 当前负载均衡实例不支持创建HTTP或者HTTPS类型的监听。
    400 InvalidParameter.VServerGroupId The MasterSlaveServerGroup can not be attached to HTTP or HTTPS listener. HTTP或HTTPS监听不支持挂载主备服务器组。
    400 MissingParam.HealthCheckDomain The HealthCheckDomain is required when HealthCheckHttpVersion is http1.1. 参数HealthCheckDomain缺失。
    400 InvalidParameter.HealthCheckHttpVersion The param HealthCheckHttpVersion is invalid. 指定的HealthCheckHttpVersion无效。请检查参数约束,并在修改后重试。
    400 QuotaLimitExceeds.AclAttachedToListener %s.
    400 QuotaLimitExceeds.TotalAclEntry %s.
    400 AclListenerOverLimit %s.
    400 Duplicated.AclEntry %s. Acl条目重复。
    400 OperationFailed.InsufficientResources The loadbalancer does not support this operation because of insufficient resources. 操作失败,原因是由于资源不足,负载均衡器不支持此操作。
    400 InvalidParameter.ForwardCode The specified ForwardCode is invalid. 指定的ForwardCode无效。请检查参数约束,并在修改后重试。
    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 Mismatch.SlbSpecTypeAndListenerProtocol The SlbSpecType and ListenerProtocol are mismatched. 实例规格类型和监听类型不匹配。
    400 InvalidParam.TagValue %s.
    400 InvalidParam.TagKey %s.
    400 SizeLimitExceeded.Tag %s.
    400 MissingParam.TagKey The param MissingParam.TagKey is missing.

    访问错误中心查看更多错误码。

    变更历史

    变更时间 变更内容概要 操作
    2023-06-02 OpenAPI 错误码发生变更 看变更集
    变更项 变更内容
    错误码 OpenAPI 错误码发生变更
      删除错误码:400

    内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

    阿里云企业补贴进行中: 马上申请

    腾讯云限时活动1折起,即将结束: 马上收藏

    同尘科技为腾讯云授权服务中心。

    购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

    转转请注明出处:https://www.yunxiaoer.com/169358.html

    (0)
    上一篇 2023年12月10日
    下一篇 2023年12月10日
    详情页2

    相关推荐

    联系我们

    400-800-8888

    在线咨询: QQ交谈

    邮件:admin@example.com

    工作时间:周一至周五,9:30-18:30,节假日休息

    关注微信
    本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。