负载均衡概述

什么是负载均衡

负载均衡(Load Balancer)是安全快捷的流量分发服务,能将访问流量自动分发到多台云服务器,支持自动检测并隔离不可用的服务节点,通过消除云服务器的单点故障问题,从而扩展应用系统对外的服务能力,实现更高水平的应用程序容错性能,提高了应用的整体服务能力。

负载均衡通过设置虚拟服务地址,将同一网络环境中的多台服务器虚拟成一个高性能、高可用的应用服务池,并根据转发规则,将来自客户端的请求分发给云服务器池中的服务实例。
负载均衡必须在私有网络(VPC)环境中运行。

组成部分

一个提供服务的负载均衡通常由以下几部分组成:

  • 负载均衡实例:用于运行负载均衡服务,可以接收流量并将其分配给后端服务器。要使用负载均衡服务,您必须创建一个负载均衡实例,并至少添加一个监听和两台ECS实例。
  • 负载均衡监听器:用于检查客户端请求并将请求转发给后端服务器。包括监听端口、负载均衡策略和健康检查配置等,每个监听器对应后端的一个应用服务。
  • 后端服务器 / 虚拟服务组:接收负载均衡分发请求的云服务器实例,用于实际处理请求。

服务原理

负载均衡器接受来自客户端的传入流量并将请求路由到在一个或多个可用区中的后端云服务器实例上进行处理。

负载均衡服务主要由负载均衡监听器提供。监听器负责监听负载均衡实例上的请求、执行策略分发至后端服务器等服务,通过分别配置“客户端-负载均衡”和“负载均衡-后端服务器”两个维度的分发协议及协议端口,负载均衡可以将请求直接转发到后端云服务器上。

主要功能

负载均衡服务提供以下功能:

协议支持

当前提供四层(TCP协议)和七层(HTTP和HTTPS协议)的负载均衡服务。

健康检查

支持对后端服务器实例或虚拟服务组中的实例进行健康检查。负载均衡服务会自动屏蔽异常状态的服务实例,待该服务实例恢复正常后自动解除屏蔽。

会话保持

提供会话保持功能。在会话的生命周期内,可以将同一客户端的会话请求转发到同一台后端服务实例上。

均衡算法

支持加权轮询、最小连接数、源IP地址三种均衡算法。

  • 加权轮询:用户可以对每台后端服务器设置权重值。权重值越高的服务器,被轮询到的次数(概率)也越高。
  • 最小连接数:除了根据对每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。
  • 源IP地址:将请求的源地址进行hash运算,并结合后端的服务器的权重派发请求至某匹配的服务器,这可以使得同一个客户端IP的请求始终被派发至某特定的服务器。该方式适合无cookie功能的TCP协议。

域名/URL转发

针对七层协议(HTTP协议和HTTPS协议),支持按设定的访问域名和URL将请求转发到不同的虚拟服务组。

证书管理

针对HTTPS协议,提供统一的证书管理服务。

公网与私网访问

提供公网和私网类型的负载均衡服务。您可以根据业务场景来选择配置对外公开或对内私有的负载均衡服务,系统会根据您的选择分配公网或私网服务地址。

监控

提供丰富的监控数据,实时了解负载均衡运行状态。