创建监听器

ZStack Cloud主菜单,点击资源中心 > 网络服务 > 基础网络服务 > 负载均衡,进入负载均衡界面。点击某一负载均衡,进入其详情页。在监听器子页面,点击创建监听器,弹出创建监听器界面。

可参考以下示例输入相应内容:
  • 名称:设置监听器名称
  • 简介:可选项,可留空不填
  • 协议:选择监听器协议类型,包括:TCP、HTTP、HTTPS、UDP
    • 如选择TCP/HTTP/UDP:支持1-65535端口
    • 如选择HTTPS:
      • 支持1-65535端口。
      • 需绑定证书使用,支持上传证书和证书链。如何上传及管理证书可参考创建证书管理证书章节。
      • 证书:必选项,创建监听器选择HTTPS时必须绑定证书。
  • 负载均衡算法:对网络包设定不同的路由规则,默认为轮询
    支持的负载均衡算法包括:
    • 轮询:

      通过轮询调度算法,将外部请求按顺序轮流分配到负载均衡规则指定的云主机中,它均等地对待每一台云主机,而不管其上实际的连接数和系统负载。

    • 最小连接:

      通过最少连接调度算法,将网络请求动态地调度到已建立的连接数最少的云主机上。 如果集群中的服务器(云主机)具有相近的系统性能,采用最少连接调度算法可以较好地均衡负载。

    • 源地址哈希:

      源地址哈希算法,根据请求的源IP地址,作为散列键(Hash Key)从静态分配的散列表找出对应的服务器,若该服务器可用且未超载,将请求发送到该服务器,否则返回空。

    • 加权轮询:

      在轮询算法的基础上增加权重算法,将外部请求按权重轮询分配到负载均衡规则指定的云主机中,权重值越高的云主机,被轮询的次数(概率)越高。

  • 负载均衡端口:可从1-65535端口之间选择一个端口作为负载均衡器虚拟IP地址的端口
  • 后端服务器端口:可从1-65535端口之间选择一个端口作为后端服务器端口

    例如:负载均衡端口选择80,后端服务器端口选择5000,表示对负载均衡器对应虚拟IP地址80端口的访问会转发到后端服务器的5000端口。

  • 后端服务器组:选择后端服务器组
    Note:
    • 后端服务器组为具有相同配置的后端服务器集合,方便加载到多个监听器。监听器根据权重分配来自用户的流量。
    • 一个监听器可绑定同一负载均衡下的多个后端服务器组。
    • 若不同的后端服务器组拥有同一个后端服务器,不支持将这些后端服务器组同时绑定同一个监听器。
    • 后端服务器组加载监听器后,可在监听器的详情页查看某个后端服务器的健康状态,包括:健康、不健康。
  • 高级设置:可对高级选项进行设置
    • 健康检查协议:设置健康检查协议,支持:TCP/HTTP/UDP,可与监听协议使用不同的协议
      • 若监听协议为TCP/HTTP/HTTPS,健康检查协议支持TCP/HTTP。
      • 若监听协议为UDP,健康检查协议支持UDP。
      • 若使用HTTP健康检查协议,支持配置正常状态返回码、健康检查URI和HTTP健康检查方法:
        • 正常状态返回码:HTTP协议健康检查正常的HTTP状态码,支持多选。包括:http_2xx、http_3xx、http_4xx、http_5xx
        • 健康检查URI:用于健康检查页面文件的URI(例如:/healthcheck.html

          建议对静态页面进行检查,设置规则如下:

          • 长度限制为2~80字符。
          • 只能使用字母、数字或规定符号 - / . % ? # & 的组合。
          • 必须以 / 开头,但不能全为 / 。
        • HTTP健康检查方法:通过发送HEAD/GET请求模拟浏览器的访问行为来检查服务器应用是否健康,默认为HEAD方式
    • 空闲连接超时:没有数据传输时,触发负载均衡器终止服务器和客户端连接的超时时间,默认为60秒
    • 健康检查阈值:若不健康的后端服务器连续检查成功次数超过阈值,则认定为健康,默认为2次
    • 健康检查端口:默认为default,表示健康检查端口与指定后端服务器端口一致,支持指定其它端口
    • 非健康检查阈值:若健康的后端服务器连续检查失败次数超过阈值,则认定为不健康,默认为2次
    • 健康检查间隔时间:对后端服务器进行检查的时间间隔,设置范围默认为5秒
    • 最大并发请求连接数:设置监听器最大并发请求连接数,设置范围1~2000000,默认为2000000条
      Note: 负载均衡器运行内存与设置的最大连接数有关,若运行内存过大可能造成路由器内存溢出(OOM),请按照实际内存设置合适的最大连接数,例如:最大连接数为200万时,负载均衡器运行内存为200M左右。
    • 进程数量:HAProxy进程的数量,默认为1

      使用多个进程可提高监听器的性能与监听数据的并发量,但同时可能会占用更多内存,并在一定程度上影响监控数据的准确性。

    • HTTP模式:负载均衡器的HTTP连接模式,仅支持HTTP协议
      • http-server-close:收到响应结束信息后,关闭面向服务器的连接,并将面向客户端的连接保持打开状态。
      • http-keep-alive:处理所有请求和响应并将连接保持打开状态,但在响应和新请求之间闲置一段时间。
      • http-tunnel:仅处理第一个请求和响应,并在客户端和服务器之间建立隧道,以使它们能够进行通信,而无需进一步分析HTTP协议。该模式不推荐使用。
      • httpclose:与隧道模式相同,但在客户端和服务器方向添加Connection: close标头。该模式不推荐使用。
      • forceclose:在响应结束后,负载均衡器主动关闭客户端和服务器的连接。
    Figure 1所示:
    Figure 1. 创建监听器