负载均衡(Server Load Balancer,简称SLB)是一种根据转发策略将流量分发到多台后端服务器的服务。通过挂载多台后端服务器的方式扩展系统的整体服务能力,同时消除系统单点故障以提高系统整体的可用性。负载均衡的虚拟服务地址(VIP)为负载均衡的服务地址,将多台后端服务器虚拟成一个高性能服务。
负载均衡可分为公网负载均衡以及内网负载均衡。公网负载均衡会绑定弹性公网IP,公网的客户端可以通过弹性公网IP来访问负载均衡服务。内网负载均衡通过内网IP对内网负载均衡所属VPC提供负载均衡服务。
产品优势
- 可扩展
可以根据业务应用的负载进行扩容或者缩容,添加或者移除后端服务器组中的服务器来调整系统的能力。
- 高可用
配置多台后端服务器,消除单点故障,保证业务的可用性。
- 多协议
根据不同的业务接入需求,可以选择TCP/UDP/HTTP/HTTPS协议。
- 简单易用
产品化部署SLB服务,根据不同的业务需求配置不同的负载均衡实例类型、监听不同的协议和端口,以及配置后端服务器组,且所有配置实时生效。
应用场景
- 高业务量流量分发,针对业务量大的服务,通过购买负载均衡实例并配置对应转发策略,以及添加多后端服务器,把业务分发到多后端服务器上。
- 消除单点故障,当一部分后端服务器不可用时,负载均衡通过健康检查可自动屏蔽故障的后端服务器,保障应用系统正常工作。
- 全局负载均衡,结合智能DNS将域名解析到不同地域的SLB,可实现全局多地域的负载均衡,保障异地容灾。
产品规格
新开通的负载均衡实例需要指定实例规格,实例规格会收取一定的费用。公网类型的负载均衡实例计费项包括实例规格和公网流量,内网类型的负载均衡实例仅对实例规格收费。旧的负载均衡实例未指定规格,不会收取实例规格费。
实例规格包括四层和七层指标,表示负载均衡实例性能上限值,最大连接数和新建连接数指标针对四层和七层有单独的限制外,系统还会对同一个负载均衡实例下所有监听器实例的最大连接数、新建连接数、每秒查询数各指标性能的总和做限制,各项指标之和不允许超过实例规格的允许的最大上限。
例如,负载均衡实例A实例规格为小型I,创建了UDP监听器a、TCP监听器b、HTTP监听器c、HTTPS监听器d,监听器a和监听器b新建连接数上限总和为10000,监听器c新建连接数上限为2000,监听器d新建连接数上限为200,监听器a、b、c、d新建连接数上限总和不能超过10000。
负载均衡实例规格列表:
实例名称 | 规格 | 最大连接数(TCP/UDP) | 最大连接数(HTTP/HTTPS) | 新建连接数(CPS)(TCP/UDP) | 新建连接数(CPS)(HTTP) | 新建连接数(CPS)(HTTPS) | 每秒查询数(QPS) | LCU(个) |
---|---|---|---|---|---|---|---|---|
slb.e1.small | 小型I | 500,000 | 200,000 | 10,000 | 2,000 | 200 | 4,000 | 10 |
slb.e2.small | 小型II | 1,000,000 | 400,000 | 20,000 | 4,000 | 400 | 8,000 | 20 |
说明
最大连接数(Max Connection)(TCP/UDP):一个负载均衡实例所有TCP或UDP类型监听器实例能够承载的最大连接数量。当实例上的连接超过最大连接数时,新建连接请求将被丢弃。
最大连接数(Max Connection)(HTTP/HTTPS):一个负载均衡实例所有HTTP或HTTPS类型监听器实例能够承载的最大连接数量。当实例上的连接超过最大连接数时,新建连接请求将被丢弃。
每秒新建连接数CPS(Connection Per Second)(TCP/UDP):一个负载均衡实例所有TCP或UDP类型监听器实例每秒新建连接的最大数量。当每秒新建连接的数量超过CPS,新建连接请求将被丢弃。
每秒新建连接数CPS(Connection Per Second)(HTTP):一个负载均衡实例所有HTTP类型监听器实例每秒新建连接的最大数量。当每秒新建连接的数量超过CPS,新建连接请求将被丢弃。
每秒新建连接数CPS(Connection Per Second)(HTTPS):一个负载均衡实例所有HTTPS类型监听器实例每秒新建连接的最大数量。当每秒新建连接的数量超过CPS,新建连接请求将被丢弃。
每秒查询数QPS(Query Per Second):一个负载均衡实例所有七层类型监听器实例每秒可以完成的HTTP或者HTTPS的查询(请求)的数量。当请求速率超过每秒查询数时,新建连接请求将被丢弃。
负载均衡的组件
- 负载均衡实例
负载均衡实例是承载负载均衡业务的实体,通过在负载均衡实例中添加监听器和后端服务器组后才能使用负载均衡提供的服务。
按照网络类型,负载均衡实例分为公网和内网负载均衡实例。
公网负载均衡实例 : 负责处理来自公网的访问请求,其会绑定弹性公网IP地址。
内网负载均衡实例 :负责处理来自和负载均衡属于同一个VPC内的访问请求,其服务地址为VPC内的一个内网地址。
- 监听器
监听器负责监听负载均衡上接收的请求,并根据转发策略把请求分发到后端服务器组进行处理。监听器需要配置对应的协议和端口,这些协议、端口以及负载均衡的VIP地址为提供服务的地址、协议和端口。监听器支持四层(TCP或者UDP协议)和七层(HTTP或者HTTPS协议)协议,根据业务需求配置监听器对应的协议以及端口。
监听器类型说明:
协议类型 | 说明 | 适用场景 |
---|---|---|
TCP | 面向连接的、可靠的数据传输协议。 | 适用于对数据传输的准确性和可靠性较高的使用场景,如远程登录、web服务、文件传输等。 |
UDP | 其为无连接的、可靠性低的传输协议。 | 适用于传输速度快、实时性要求高,但对数据准确性要求不高的使用场景,如视频会议、在线游戏等。 |
HTTP | 应用层协议,其支持基于Cookie的会话保持功能以及基于URL的转发。 | 适用于对请求的数据内容进行识别的应用的使用场景,如web应用、APP等。 |
HTTPS | 加密的应用层协议,可以防止未授权的数据访问。 | 需要加密传输的web应用。 |
- 转发策略
在负载均衡中监听器协议为HTTP和HTTPS时,支持在已有监听器转发的基础上添加转发策略,转发策略通过URL或域名匹配规则来把请求转发至相应的后端服务器组,便于灵活的分流业务和合理的分配资源。URL匹配规则支持精确匹配、正则匹配和前缀匹配。
在对应的监听器中添加了转发策略后,负载均衡按照以下规则转发前端请求:
- 优先匹配监听器中的转发策略,若能匹配,则对应请求转发到该转发策略对应的后端服务器组。
- 在监听器下所有转发策略都不能匹配的情况下,则按照监听器配置的转发规则把请求转发到该监听器对应的后端服务器组。
- 后端服务器组
在对应的负载均衡中配置监听器或者对应七层监听器的转发策略时需要配置对应的后端服务器组,后端服务器组包括一个或者多个后端服务器,用于承载从监听器转发的流量请求,可以通过在后端服务器组中添加后端服务器来扩展负载均衡的处理能力。后端服务器组可以按需开启健康检查,其通过健康检查的结果来判断后端服务器的状态是否正常,监听器只会把请求转发给结果为正常的后端服务器。同时后端服务器组中还可以根据每个后端服务器的不同处理能力来设置不同的权重,确保后端服务器得到最大的资源利用。
后端服务器组支持以下的分配策略:
分配策略 | 说明 |
---|---|
加权轮询 | 根据后端服务器不同的处理能力,按需为不同的后端服务器设置不同的权重,监听器根据权重的高低以及轮询的方式把请求转发给后端服务器。 |
加权最少连接 | 通过当前每台后端服务器的活跃连接数来估算对应的负载情况,同时再根据服务器的负载情况不同以及处理能力的不同,给后端服务器动态的分配权重。 |
IP Hash | 首先通过一致性Hash算法对所有后端服务器进行编号,对请求中的源IP地址通过一致性Hash算法,根据得到的结果把请求分发到对应编号的服务器。其可以确保把长连接的请求发送到同一个后端服务器,确保业务的连续性。 |
使用限制
限制 | 说明 |
---|---|
支持的协议 | 当前支持TCP/UDP/HTTP/HTTPS协议。 |
后端服务器组 | 后端服务器组只支持添加到一个监听器。 |
后端服务器 | 当前支持的后端服务器为边缘虚拟机。 |