亚马逊云 ELB(Elastic Load Balancing) 是 AWS 托管的弹性负载均衡服务,核心作用是自动分发入口流量到多个目标(EC2 / 容器 / IP/Lambda),实现高可用、水平扩展、故障自动转移。
一、ELB 四大类型(核心选型)
1. ALB(Application Load Balancer)— 七层(HTTP/HTTPS)
- 工作层级:OSI 第 7 层(应用层)
- 核心能力:基于内容路由(路径 / 主机头 / 查询字符串 / 请求头)、SSL 终止、WebSocket、HTTP/2、WAF 集成、目标组(Target Group)、健康检查
- 后端目标:EC2、ECS/EKS、Lambda、IP 地址
- 典型场景:现代 Web 应用、微服务、容器化应用、API 网关、需要精细流量控制
2. NLB(Network Load Balancer)— 四层(TCP/UDP/TLS)
- 工作层级:OSI 第 4 层(传输层)
- 核心能力:超高性能 / 超低延迟(每秒百万级请求)、静态 IP(每 AZ 一个)、源 IP 保留、长连接、TLS 直通 / 终止、无状态转发
- 后端目标:EC2、ECS/EKS、IP 地址、ALB/CLB
- 典型场景:高性能 TCP/UDP 应用(游戏、IoT、视频流)、金融交易、需要固定公网 IP、极端流量波动
3. GLB(Gateway Load Balancer)— 三层(IP 网关)
- 工作层级:OSI 第 3 层(网络层)
- 核心能力:透明网关(单进单出)、流量镜像 / 复制、第三方虚拟设备(防火墙 / IDS/IPS)部署、跨 AZ 高可用
- 典型场景:安全设备集群、网络功能虚拟化(NFV)、流量分析 / 审计
4. CLB(Classic Load Balancer)— 传统(四层 + 七层)
- 工作层级:第 4 层(TCP)+ 第 7 层(HTTP/HTTPS)
- 核心能力:基础负载均衡、EC2-Classic 网络支持、粘性会话、SSL 终止
- 典型场景:遗留应用迁移(不推荐新项目使用)
二、核心能力(四大优势)
- 弹性扩展:随流量自动扩容 / 缩容,无缝对接 Auto ScalingAmazon Web Services (AWS)
- 高可用:跨多可用区(AZ)部署,自动隔离故障目标Amazon Web Services (AWS)
- 安全合规:SSL/TLS 终止、ACM 证书集成、WAF、安全组、私有部署(内部 ELB)
- 健康检查:自动检测后端状态,仅分发流量到健康目标Amazon Web Services (AWS)
三、ALB vs NLB 关键对比(选型重点)
表格
| 特性 | ALB(应用负载均衡) | NLB(网络负载均衡) |
|---|---|---|
| 层级 | 7 层(HTTP/HTTPS) | 4 层(TCP/UDP/TLS) |
| 路由依据 | 内容(URL / 主机头 / 请求头) | 五元组(源 IP / 端口、目的 IP / 端口、协议) |
| 性能 | 高 | 极高(μs 级延迟) |
| 静态 IP | 不支持(动态 DNS) | 支持(每 AZ 一个固定 IP) |
| 源 IP 保留 | 需 X-Forwarded-For | 默认保留(直接透传) |
| 后端目标 | EC2/ECS/Lambda/IP | EC2/ECS/IP/ALB |
| 典型场景 | Web / 微服务 / API | 高性能 TCP/UDP/ 游戏 / IoT |
四、基本架构与工作流程
- 客户端 → DNS(Route 53)→ ELB 节点(多 AZ)
- ELB 接收流量 → 按规则转发到健康目标组
- 目标组(Target Group)管理后端实例与健康检查
- 自动故障转移:不健康实例自动下线,流量切到健康实例
五、典型使用场景
- Web 应用高可用:ALB 分发流量到多 AZ EC2,Auto Scaling 弹性扩缩
- 微服务网关:ALB 按路径路由到不同微服务(如 /api/auth → 认证服务)
- 容器化应用:ALB/NLB 对接 ECS/EKS,支持容器动态注册
- 高性能 TCP 服务:NLB 部署游戏服务器、数据库代理、IoT 网关
- 安全设备集群:GLB 串联防火墙 / IDS,实现流量过滤与审计
六、安全与最佳实践
- 启用 HTTPS:ALB/NLB 终止 SSL,使用 ACM 托管证书
- 私有部署:内部 ELB(无公网 IP)用于 VPC 内服务
- 健康检查优化:合理设置超时 / 间隔 / 阈值,避免误杀
- 多可用区:至少部署 2 个 AZ,确保故障不中断
- 日志监控:开启访问日志(S3)、CloudWatch 指标 / 告警
七、常见误区澄清
- ❌ ELB 是单一服务器 → ✅ ELB 是分布式集群(多 AZ 节点)
- ❌ ALB 只能用于 Web → ✅ ALB 支持 HTTP/HTTPS/WebSocket/HTTP/2
- ❌ NLB 不支持 SSL → ✅ NLB 支持 TLS 终止 / 直通(TCP 443)
- ❌ CLB 已废弃 → ✅ CLB 仍可用,但新项目推荐 ALB/NLB
总结
ELB 是 AWS 高可用架构的流量入口核心:ALB 适合七层 Web / 微服务,NLB 适合四层高性能 TCP/UDP,GLB 用于安全网关,CLB 用于遗留迁移。选型核心看流量协议、路由粒度、性能需求、后端类型。
&spm=1001.2101.3001.5002&articleId=160545242&d=1&t=3&u=51f0450bc30d4cefa7fd11ab9157699a)
4万+

被折叠的 条评论
为什么被折叠?



