阿里云三大负载均衡器SLB
负载均衡SLB(Server Load Balancer)是一种对流量进行按需分发的服务,通过将流量分发到不同的后端服务来扩展应用系统的服务吞吐能力,并且可以消除系统中的单点故障,提升应用系统的可用性。
阿里云负载均衡器SLB产品系列分三个大的类型,如下图所示:
1.应用型负载均衡ALB
应用型负载均衡ALB(Application Load Balancer
)是阿里云推出的专门面向HTTP
、HTTPS
和QUIC
等应用层负载场景的负载均衡服务,具备超强弹性及大规模应用层流量处理能力。ALB
具备处理复杂业务路由的能力,与云原生相关服务深度集成,是阿里云官方提供的云原生Ingress
网关。
1.1应用型负载均衡ALB特点
应用型负载均衡ALB
,提供强大的应用层处理能力和丰富的高级路由功能,聚焦HTTP
、HTTPS
和QUIC
应用层协议,是阿里云官方云原生Ingress
网关。
特点 | 详细描述 |
---|---|
应用层高弹性 | ALB面向应用层,提供域名与VIP,多级分发承载海量请求。ALB支持通过流量分发扩展应用系统的服务能力,消除单点故障提升应用系统的可用性。ALB允许自定义可用区组合和在可用区间弹性伸缩,避免单可用区资源瓶颈。 |
先进的协议支持 | ALB支持HTTP、HTTPS和QUIC协议,具备超大规模的流量处理能力。在实时音视频、互动直播和游戏等移动互联网应用中,访问速度更快,传输链路更安全可靠。ALB支持gRPC框架,可实现海量微服务间的高效API通信。 |
基于内容的高级路由 | ALB支持基于路径、HTTP标头、查询字符串、HTTP请求方法、Cookie和SourceIp等多种条件来识别特定业务流量,并将其转发至不同的后端服务器。同时ALB还支持重定向、重写以及自定义HTTPS标头等高级操作。 |
安全可靠 | ALB自带DDoS防护,集成Web应用防火墙。同时提供全链路HTTPS加密,支持预制和自定义安全策略、TLS 1.3等高效安全加密协议,面向加密敏感型业务,满足Zero-Trust新一代安全技术架构需求。 |
面向云原生 | 随着云原生逐步成熟,互联网、金融、企业等行业新建业务时都会选择云原生部署,或对现有业务进行云原生化改造。ALB与容器服务Kubernetes版、SAE、函数计算和开源K8s等深度集成,是阿里云的官方云原生Ingress网关。 |
弹性灵活的计费 | ALB通过弹性公网IP(Elastic IP Address,简称EIP)和共享带宽提供公网能力,实现公网灵活计费;同时采用了更先进的、更适合弹性业务峰值的性能容量单位LCU(Loadbalancer Capacity Unit)的计价方案。 |
1.2应用型负载均衡器ALB的组成
1.3应用型负载均衡器ALB的类型
阿里云提供公网和私网两种类型的ALB:
可以根据业务场景选择配置对外公开或对内私有的ALB
,系统会根据您的选择来决定是否使用共享带宽和弹性公网IP
。
2.网络型负载均衡NLB
网络型负载均衡NLB
(Network Load Balancer
)是阿里云面向万物互联时代推出的新一代四层负载均衡,支持超高性能和自动弹性能力,单实例可以达到1亿并发连接,轻松应对高并发业务。
2.1网络型负载均衡器的特点
特点 | 详细描述 |
---|---|
超强性能 | NLB单实例最大支持1亿并发连接和100 Gbps带宽,能够轻松应对面向物联网海量连接的高并发场景。 |
自动弹性伸缩 | 无需指定或手动调整NLB的实例规格,实例性能会随着您的业务增减自动弹性伸缩。 |
高可用 | 采用多层次容灾架构设计,通过集群容灾、会话保持、可用区多活等机制保障实例的可用性。 |
TCPSSL卸载 | 支持大规模TCPSSL卸载,可以在NLB上对SSL证书进行集中管理及卸载,有效提升后端业务处理效率。 |
多场景流量分发 | 支持挂载IP类型后端服务,可以结合云企业网实现跨地域、跨VPC及云下IDC服务器等多个场景的流量分发调度。 |
丰富的高级特性 | 支持IPv4/IPv6双栈、全端口、新建连接限速、连接优雅中断等高级特性,满足多方位的业务定制需求。 |
2.2网络型负载均衡器NLB的组成
2.3网络负载均衡器NLB的类型
阿里云提供公网和私网两种网络类型的NLB
:
可以根据业务场景选择配置对外公开或对内私有的NLB
,系统会根据您的选择来决定是否使用共享带宽和弹性公网IP
。
下图中半透明框中所有元素分别实现了一个面向公网(私网)的NLB:
2.4网络负载均衡器NLB的应用场景
-
物联网业务入口
在智能家居、智能停车、视频监控、车联网等业务场景中,
NLB
作为业务入口可以同时处理海量并发连接,同时提供TCPSSL
卸载、连接限速等能力保障物联网业务安全稳定运行。 -
互联网云上业务入口
NLB
作为互联网流量入口,单实例提供超高的四层处理能力,同时可以基于业务变化自动弹性伸缩,业务波动时无需手工干预,降低了运维管理成本。 -
混合云业务入口
NLB
支持挂载本地IDC
(Internet Data Center
)服务器,可以搭配云企业网等产品将云上请求转发至线下服务器处理,轻松实现线下IDC
与云上服务互通。
3.传统型负载均衡CLB
传统型负载均衡CLB
(Classic Load Balancer
)是将访问流量根据转发策略分发到后端多台云服务器的流量分发控制服务。CLB
扩展了应用的服务能力,增强了应用的可用性。
CLB
通过设置虚拟服务地址,将添加的同一地域的多台云服务器虚拟成一个高性能和高可用的后端服务池,并根据转发规则,将来自客户端的请求分发给后端服务器池中的云服务器。
CLB
默认检查云服务器池中的云服务器的健康状态,自动隔离异常状态的云服务器,消除了单台云服务器的单点故障,提高了应用的整体服务能力。此外,CLB
还具备抗DDoS
攻击的能力,增强了应用服务的防护能力。
3.1传统型负载均衡器的特点
特点 | 描述 |
---|---|
高可用 | 采用全冗余设计,无单点,支持同城容灾。 根据流量负载进行弹性扩容,在流量波动情况下不中断对外服务。 |
可扩展 | 可以根据业务的需要,随时增加或减少后端服务器的数量,扩展应用的服务能力。 |
低成本 | 与传统硬件负载均衡系统高投入相比,成本可下降60%。 |
安全 | 结合云盾,可提供5 Gbps的防DDoS攻击能力。 |
高并发 | 集群支持亿级并发连接,单实例最大支持100万并发。 |
3.2传统型负载均衡器CLB的组成
3.3传统型网络负载均衡器的应用场景
传统型负载均衡CLB
的应用场景为高访问量的业务,提高应用程序的可用性和可靠性。
# 应用于高访问量的业务
如果应用访问量很高,可以通过配置监听规则将流量分发到不同的云服务器ECS
实例上。此外,可以使用会话保持功能将同一客户端的请求转发到同一台后端ECS
,提高访问效率。
# 扩展应用程序
可以根据业务发展的需要,随时添加和移除ECS
实例来扩展应用系统的服务能力,适用于各种Web
服务器和App
服务器。
# 消除单点故障
可以在CLB
实例下添加多台ECS
实例。当其中一部分ECS
实例发生故障后,CLB
会自动屏蔽故障的ECS
实例,将请求分发给正常运行的ECS
实例,保证应用系统仍能正常工作。
# 同城容灾 (多可用区容灾)
为了提供更加稳定可靠的CLB
服务,CLB
已在各地域部署了多可用区以实现同地域容灾。当主可用区出现机房故障或不可用时,CLB
仍然有能力在非常短的时间内(大约30s
中断)切换到另外一个备可用区恢复服务能力;当主可用区恢复时,CLB
同样会自动切换到主可用区提供服务。
使用CLB
时,可以将CLB
实例部署在支持多可用区的地域以实现同城容灾。
如下图所示,在CLB
实例下绑定不同可用区的ECS
实例。正常情况下,用户访问流量将同时转发至主、备可用区内的ECS
实例;当可用区A
发生故障时,用户访问流量将只转发至备可用区内的ECS
实例。此种部署既可以避免因为单个可用区的故障而导致对外服务的不可用,也可以通过不同产品间可用区的选择来降低延迟。
如果采取如下图所示的部署方案,即在CLB
实例的主可用区下绑定多台ECS
实例,而在备可用区没有任何ECS
实例。正常情况下,用户访问流量将只转发至主可用区内的ECS
实例,比较于上图,流量传输延时低;当可用区A
发生故障时会造成业务中断,因为备可用区没有ECS
实例来接收请求。这样的部署方式很明显是以牺牲高可用性为代价来获取低延时。
# 跨地域容灾
可以在不同地域下部署CLB
实例,并分别挂载相应地域内不同可用区的ECS
。上层利用云解析做智能DNS
,将域名解析到不同地域的CLB
实例服务地址下,可实现全局CLB
。当某个地域出现不可用时,暂停对应解析即可实现所有用户访问不受影响。