API 文档

配置 HTTP 监听器

最近更新时间:2020-05-29 10:02:31

HTTP 监听器简介

您可以在负载均衡实例上添加一个 HTTP 监听器转发来自客户端的 HTTP 协议请求。HTTP 协议适用于需要对请求的内容进行识别的应用,如 Web 应用、App 服务等。

前提条件

您需要 创建负载均衡实例

配置 HTTP 监听器

步骤1:打开监听器管理页面

  1. 登录 负载均衡控制台
  2. 在左侧导航栏,选择【实例管理】。
  3. 在 CLB 实例列表页单击需配置的实例 ID,进入实例详情页。
  4. 单击【监听器管理】标签页,您也可以在列表页的操作栏中单击【配置监听器】。

    5.“监听器管理”页面如下图所示。

步骤2:配置监听器

在 HTTP/HTTPS 监听器模块下,单击【新建】,在弹出框中配置 HTTP 监听器。

1. 创建监听器

监听器基本配置 说明 示例
名称 监听器的名称 test-http-80
监听协议端口 监听器的协议和监听端口:
  • 监听协议:CLB支持的协议包括 TCP、UDP、TCP SSL、HTTP、HTTPS,本例选择 HTTP。
  • 监听端口:用来接收请求并向后端服务器转发请求的端口,端口范围为1 - 65535。
  • 同一个负载均衡实例内,监听端口不可重复。
HTTP:80

创建 HTTP 监听器具体配置如下图所示:

2. 创建转发规则

转发规则基本配置 说明 示例
域名 转发域名:
  • 长度限制:1 - 80个字符。
  • 不能以 _ 开头。
  • 支持精准域名和通配域名。
  • 支持正则表达式。
  • 具体配置规则,详情请参见 转发域名配置规则
www.example.com
默认域名
  • 当监听器中所有域名均没有匹配成功时,系统会将请求指向默认访问域名,让默认访问可控。
  • 一个监听器下仅能配置一个默认域名。
  • 开启
    URL 路径 转发 URL 路径: /index
    均衡方式 HTTP 监听器中,负载均衡支持加权轮询(WRR)、加权最小连接数(WLC)和 IP Hash 三种调度算法:
    • 加权轮询算法:根据后端服务器的权重,按依次将请求分发给不同的服务器。加权轮询算法根据新建连接数来调度,权值高的服务器被轮询到的次数(概率)越高,相同权值的服务器处理相同数目的连接数。
    • 加权最少连接数:根据服务器当前活跃的连接数来估计服务器的负载情况,加权最小连接数根据服务器负载和权重来综合调度,当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。
    • IP Hash:根据请求的源 IP 地址,使用散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器为可用且未超载状态,则请求发送到该服务器,反之则返回空。
    加权轮询
    获取客户端 IP 默认启用 已开启
    Gzip 压缩 默认启用 已开启

    选择需要创建转发规则的 HTTP 监听器,单击右侧【+】进行创建,具体基本配置如下图所示:

    3. 健康检查

    健康检查配置 说明 示例
    健康检查状态 开启或关闭健康检查。HTTP 监听器中,负载均衡实例向指定的服务器端口发 HTTP 请求进行健康检查。 开启
    检查域名 健康检查域名:
    • 长度限制:1 - 80个字符。
    • 默认为转发域名。
    • 不支持正则表达式,当您的转发域名为通配域名时,需要指定某一固定域名(非正则)为健康检查域名。
    • 支持的字符集为:a-z 0-9 . -
    使用默认值(即为www.example.com
    检查路径 健康检查路径 :
    • 长度限制:1 - 200个字符。
    • 默认为 /,且必须以 / 开头。
    • 不支持正则表达,建议指定某个固定 URL 路径(静态页面)进行健康检查。
    • 支持的字符集为:a-z A-Z 0-9 . - _ / = ?
    使用默认值(即为/
    响应超时
  • 健康检查响应的最大超时时间。
  • 如果后端云服务器在超时时间内没有正确响应,则判定为健康检查异常。
  • 可配置范围:2 - 60秒,默认值2秒。
  • 2s
    检测间隔
  • 负载均衡进行健康检查的时间间隔。
  • 可配置范围:5 - 300秒,默认值5秒。
  • 5s
    不健康阈值
  • 如果连续 n 次(n 为填写的数值)收到的健康检查结果失败,则识别为不健康,控制台显示为异常
  • 可配置范围:2 - 10次,默认值3次。
  • 3次
    健康阈值
  • 如果连续 n 次(n 为填写的数值)收到的健康检查结果为成功,则识别为健康,控制台显示为健康
  • 可配置范围:2 - 10次,默认值3次。
  • 3次
    HTTP 请求方式 健康检查的 HTTP 请求方式,可选:GET 或 HEAD,默认为 GET:
    • 若使用 HEAD 方法,服务器仅返回 HTTP 头部信息,可降低后端开销,提升请求效率,对应的后端服务需支持 HEAD。
    • 若使用 GET 方法,则后端服务支持 GET 即可。
    GET
    HTTP 状态码检测 当状态码为所选状态码时,认为后端服务器存活,即健康检查正常,可选:http_1xx,http_2xx, http_3xx,http_4xx,http_5xx。 多选:http_1xx,http_2xx,http_3xx,http_4xx

    健康检查具体配置如下图所示:

    4. 会话保持

    会话保持配置 说明 示例
    会话保持状态 开启或关闭会话保持:
    • 开启会话保持后,负载均衡监听会把来自同一客户端的访问请求分发到同一台后端服务器上。
    • HTTP 协议是基于 Cookie 的会话保持,由负载均衡器向客户端植入 Cookie。
    • 加权轮询调度支持会话保持,加权最小连接数和 IP Hash 调度不支持开启会话保持功能。
    开启
    会话保持时间 会话保持时间:
    • 当超过保持时间,连接内无新的请求,将会自动断开会话保持。
    • 可配置范围30 - 3600秒。
    30s

    会话保持具体配置如下图所示:

    步骤3:绑定后端云服务器

    1. 在“监听器管理”页面,单击已创建完毕的监听器,如上述 HTTP:80 监听器,单击左侧的【+】展开域名和 URL 路径,选中具体的 URL 路径,即可在监听器右侧查看该路径上已绑定的后端服务。
    2. 单击【绑定】,在弹出框中选择需绑定的后端服务器,并配置服务端口和权重。
      1. 添加端口功能:在右侧“已选择”的云服务器框内,单击【添加端口】,即可给同一个云服务器添加多个端口,如同时添加 CVM 的 80、81、82 三个端口。
      2. 默认端口功能:先填写“默认端口”,再选择云服务器,每台云服务器的端口均为默认端口。

        完成步骤1到步骤3之后,HTTP 监听器规则已配置完毕,配置详情如下图所示:

    步骤4:安全组(可选)

    您可以配置负载均衡的安全组来进行公网流量的隔离,详情请参见 配置负载均衡安全组

    步骤5:修改/删除监听器(可选)

    如果您需要修改或删除已创建的监听器,请在“监听器管理”页面,单击已创建完毕的监听器/域名/URL 路径,选择【修改】或【删除】完成操作。

    目录