帮助与文档

当前位置: 首页帮助中心云负载均衡 CLB >  配置说明

配置说明
发布时间:2017-05-09

配置和管理一个负载均衡实例,主要涉及以下3部分的配置操作:

  • 负载均衡实例属性配置:定义负载均衡实例的类型。

  • 负载均衡服务监听配置:定义负载均衡实例的各项策略和转发规则。

  • 负载均衡后端 ECS 配置:定义负载均衡实例后端用来处理用户请求的多个 ECS 实例。

负载均衡实例属性配置

 负载均衡实例名称

用户可以为其创建的负载均衡实例指定一个易于识别的名称,如果用户不指定,那么系统将以该负载均衡实例的LoadBalancerId作为名称进行展示,LoadBalancerId是识别用户负载均衡实例的唯一标识,无法修改。

 负载均衡实例类型

当前提供公网和私网2种类型的负载均衡供用户选择,用户可根据其业务场景来选择配置对外公开或对内私有的负载均衡服务,系统根据用户的选择分配公网或私网服务地址(IP)。

 负载均衡服务地址

根据用户选择的负载均衡类型不同,系统会分配不同的服务地址给用户。针对需要通过域名对外提供服务的应用,需要将域名解析到相应的公网服务地址上生效后即可通过域名访问。

 负载均衡服务监听配置

 前端协议/端口

  • 协议:当前提供4层(TCP协议和UDP协议)和7层(HTTP和HTTPS协议)的负载均衡服务。

  • 端口:用户负载均衡实例对外或对内提供服务时用来接收请求并向后端服务器进行请求转发的负载均衡系统前端端口,在同一个负载均衡实例内不可重复。

 后端协议/端口

  • 协议:当前提供4层(TCP协议和UDP协议)和7层(HTTP和HTTPS协议)的负载均衡服务。

  • 端口:用户负载均衡实例后端添加的一组用来处理外部或内部请求的ECS上开放的用来接收请求的后端端口,在同一个负载均衡实例内可重复。针对同一组后端ECS上部署多个应用服务的情况,当前负载均衡最多支持50个监听配置规则。

 调度算法

当前负载均衡支持加权轮询,加权最小连接数,和轮询3种模式的调度算法,对流量进行转发。

  • 加权轮询模式会将访问请求依序分发给分配了权重的后端ECS进行处理,后端ECS权重越高被分发的几率也越大;

  • 加权最小连接数模式会将访问请求分发给当前连接数最小的一台后端ECS进行处理,后端ECS权重越高被分发的几率也越大;

  • 轮询模式会将访问请求依序分发给后端ECS进行处理。

 使用虚拟服务器组

开启配置后,用户可在监听维度上个性化定义服务器组,即实例下的不同监听可使用不同的后端服务器组,可满足按域名和URL转发得个性化需求。

 双向认证

开启配置支持在服务端和客户端进行 HTTPS 双向认证。

 Gzip 数据压缩

针对 7 层监听,开启配置支持对特定文件类型进行压缩。

 附加 HTTP 头字段

针对 7 层监听,自定义 HTTP/HTTPS 头字段。

 获取来访者真实IP

  • 针对7层(HTTP协议)服务,由于采取替换HTTP头文件IP地址的方式来进行请求转发,所以后端云服务器看到的访问IP是负载均衡系统的本地IP而不是实际来访者的真实IP。所以系统支持用户采用X-Forwarded-For的方式获取访问者真实IP,系统默认开启7层(HTTP协议)服务监听的“获取真实访问IP”功能,不可关闭。

  • 针对4层(TCP协议)服务,后端云服务器将直接获得来访者的真实IP,所以无需采用其他手段获取。

 会话保持

用户开启会话保持功能后,负载均衡会把来自同一客户端的访问请求分发到同一台后端ECS上进行处理。针对7层(HTTP协议和HTTPS协议)服务,负载均衡系统是基于cookie的会话保持。负载均衡系统提供了两种cookie处理方式:

  • cookie植入,表示直接由负载均衡系统来分配和管理对客户端进行的cookie植入操作,用户在进行配置时需要指定会话保持的超时时间。

    说明:如果用户配置了”植入 Cookie”方式的会话保持, 并且后端 RS 返回的 HTTP 状态代码为 4xx 时, SLB 不支持植入 Set-Cookie 头部, 可能会导致会话保持失败。后端 RS 返回的 HTTP 代码在以下代码中时, SLB 将植入会话保持所需头部:200、201、204、206、301、302、303、304、307。

  • cookie重写,表示负载均衡系统会根据用户自定义cookie名称来分配和管理对客户端进行的cookie植入操作,便于用户识别和区分自定义的cookie名称,从而有选择的针对后端应用服务器上的不同应用设定会话保持规则,用户在进行配置时需要指定相应的cookie名称。

针对4层(TCP协议和UDP协议)服务,负载均衡系统是基于IP地址的会话保持。负载均衡会将来自同一IP地址的访问请求转发到同一台后端云服务器进行处理。

 健康检查

  • 用户开启健康检查功能后,当后端某个ECS健康检查出现问题时会将请求转发到其他健康检查正常的ECS上,而当该ECS恢复正常运行时,负载均衡会将其自动恢复到对外或对内的服务中。

  • 针对7层(HTTP协议和HTTPS协议)服务,负载均衡系统的健康检查机制为:默认由负载均衡系统通过后端ECS内网IP地址来向该服务器应用服务器配置的缺省首页发起http head请求(缺省通过在服务监听配置中指定的后端ECS端口进行访问),返回200 OK后将视为后端ECS运行正常,否则视为后端ECS运行异常。如果用户用来进行健康检查的页面并不是应用服务器的缺省首页,那么需要用户指定相应的URI。如果用户对http head请求限定了host字段的参数,那么需要用户指定相应的URL。用户也可以通过设定健康检查的频率、健康阈值和不健康阈值来更好的控制健康检查功能。

  • 针对4层(TCP协议和UDP协议)服务,负载均衡系统的健康检查机制为:默认由负载均衡系统通过在服务监听配置中指定的后端ECS端口发起访问请求,如果端口访问正常则视为后端ECS运行正常,否则视为后端ECS运行异常。

  • 如果配置了虚拟服务器组,建议不要设置健康检查的检查端口。

关于TCP/HTTP/HTTPS健康检查的参数配置,提供如下参考建议:

  • 响应超时时间:5秒

  • 健康检查间隔:2秒

  • 不健康阈值:3

  • 健康阈值:3

在此配置下有利于用户服务及应用状态的尽快收敛:ECS健康检查失败响应时间(网络有问题):(2+5)×3=21秒如果用户有更高要求,可以适当地降低响应超时时间值,但必须先保证自己服务在正常状态下的处理时间小于这个值。ECS健康检查成功响应时间:2×3=6秒

关于UDP健康检查的参数配置,提供如下参考建议:

  • 响应超时时间:10秒

  • 健康检查间隔:5秒

  • 不健康阈值:6

  • 健康阈值:6

在此配置下有利于用户服务及应用状态的尽快收敛:ECS健康检查失败响应时间(网络有问题):(5+10)×6=90秒如果用户有更高要求,可以适当地降低响应超时时间值,但必须先保证自己服务在正常状态下的处理时间小于这个值。ECS健康检查成功响应时间:5×6=30秒

 带宽峰值

用户可以针对监听设定不同的带宽峰值来限定后端ECS上的不同应用所能对外提供的服务能力。

带宽峰值的设定规则:

  • 一个负载均衡实例最多对应50个监听,每个监听可独立设定限定规则;

  • 单个监听可限定1-1000Mbps范围的带宽峰值;

  • 当单个监听上限无法满足用户业务需求时,可以选择不限带宽峰值。

 负载均衡后端ECS配置

对于添加到负载均衡实例后端的ECS,原则上不需要进行特别的配置。如果针对关联到负载均衡 4层(TCP协议和UDP协议)服务的Linux系统的ECS,如果发现无法正常访问,需要确保系统配置文件/etc/sysctl.conf的以下三项为0:

net.ipv4.conf.default.rp_filter = 0net.ipv4.conf.all.rp_filter = 0net.ipv4.conf.eth0.rp_filter = 0

如果部署在同一内网网段下的ECS之间有通信需求,且发现有无法通信的情况存在,按照以下步骤检查配置是否正确:

  1. 检查如下参数的配置是否正确:

    1. net.ipv4.conf.default.arp_announce =2

    2. net.ipv4.conf.all.arp_announce =2

  2. 使用以下命令更新配置:

    1. sysctl –p

 后端ECS权重

用户可以指定后端服务器池内各ECS的转发权重,权重越高的ECS将被分配到更多的访问请求,用户可以根据后端ECS的对外服务能力和情况来区别设定。


以上内容是否对您有帮助?