Elastic Load Balancing 在多个目标(如 Amazon EC2 实例、容器、IP 地址、Lambda 函数和虚拟设备)之间,自动分配传入的应用程序流量。它可以在单个可用区内处理不断变化的应用程序流量负载,也可以跨多个可用区处理此类负载。Elastic Load Balancing 提供四种负载均衡器,它们均能实现高可用性、自动扩展和可靠的安全性,因此能让您的应用程序获得容错能力。
Application Load Balancer
Application Load Balancer 最适合 HTTP 和 HTTPS 流量的负载均衡,面向交付包括微服务和容器在内的现代应用程序架构,提供高级请求路由功能。Application Load Balancer 基于请求的内容将流量路由到 Amazon VPC 内的目标。
Network Load Balancer
若要对需要极高性能的传输控制协议 (TCP)、用户数据报协议 (UDP) 和传输层安全性 (TLS) 协议流量进行负载均衡,最适合使用 Network Load Balancer。Network Load Balancer 将流量路由到 Amazon VPC 内的目标,能够在保持超低延迟的同时每秒处理数百万个请求。
网关负载均衡器
网关负载均衡器可轻松部署、扩展和运行第三方虚拟网络设备。网关负载均衡器可为第三方设备队列提供负载均衡和自动扩展,对于流量来源和目的地是透明的。此功能非常适合与第三方设备结合使用,以用于安全、网络分析和其他使用案例。
Classic Load Balancer
Classic Load Balancer 可在多个 Amazon EC2 实例之间提供基本的负载均衡,并且可同时运行于请求级别和连接级别。Classic Load Balancer 适用于在 EC2-Classic 网络内构建的应用程序。
优势
高可用性和弹性
Elastic Load Balancing 是 AWS 网络的一部分,它具有对故障边界(如 AZ)的原生感知能力,从而使应用程序可以跨区域使用,而不需要全球服务器负载平衡 (GSLB)。ELB 也是一项完全托管型服务,这意味着,您可以专注于交付应用程序而不是安装负载均衡器队列。容量将根据底层应用程序服务器的利用率自动添加和删除。
安全性
Elastic Load Balancing 与 Amazon Virtual Private Cloud (VPC) 配合,可提供可靠的安全功能,包括集成的证书管理、用户身份验证和 SSL/TLS 解密。同时,它们还提供了必要的灵活性,使您能够集中管理 TLS 设置以及从应用程序卸载 CPU 密集型工作负载。ALB 还支持与 AWS WAF 集成,从而在恶意分子到达应用程序之间增加保护级别。此外,S2N 和 HTTP Guardian 已开发为开源解决方案,可以降低基于 HTTP 的攻击的可能性。
功能广度
Elastic Load Balancing 提供各种规模的企业所需的功能,同时以 AWS 本机体验交付它们。Elastic Load Balancing 包括对基于容器的工作负载所需的功能的支持,其中包括 HTTP/2、gRPC、TLS 卸载、基于规则的高级路由以及与作为入口控制器的容器服务的集成。ALB 为客户提供本机 HTTP 终端节点,以调用 Lambda 函数、删除其他解决方案上的依赖项。此外,网关负载均衡器会创建一个网关,以通过第三方设备队列路由流量。
可靠的监控和可见性
使用 Elastic Load Balancing,您可以通过 Amazon CloudWatch 指标、日志记录和请求跟踪来监控应用程序的运行状况及其性能。这让您能够更深入地了解应用程序的行为,并确定应用程序堆栈中的性能瓶颈。ELB 可帮助确保符合应用程序服务等级协议 (SLA)。
集成和全球覆盖
作为一个本机 AWS 服务,ELB 可以与 EC2、ECS/EKS、Global Accelerator 之类的其他 AWS 服务以及 AWS CloudFormation 和 AWS 账单之类的运营工具集成。在 Amazon 全球基础设施和具有 AWS Outposts 和本地目标支持的客户数据中心中,ELB 可在您运行 AWS 工作负载的任何位置使用。
使用案例
迁移到 AWS
ELB 支持对迁移到 AWS 非常重要的负载均衡功能。ELB 可以使用自动扩展功能对传统以及原生云应用程序进行很好的负载均衡,从而消除容量计划中的猜测工作。ELB 易于配置和使用,从而您的迁移体验变得简单。ELB 的托管经验意味着,您可以专注于一次成功迁移的最重要部分——迁移应用程序,而不是配置负载均衡器。ELB 还可以与您熟悉的常用管理工具良好集成,例如 Terraform 和 Ansible。
使用无服务器和容器对应用程序进行现代化
组织需要以比以往更快的速度构建应用程序,并结合模块化架构模式、无服务器操作模型和敏捷的开发人员流程。ELB 无需客户干预、横向扩展即可适应这些现代化应用程序及其不断变化的负载,而且只需为使用量付费。使用 Lambda 构建无服务器应用程序的客户可以利用 ALB 来提供基于 HTTP 的本机终端节点,无需复杂的配置或使用 API 网关。ELB 还包括使用 Kubernetes 对容器和容器编排进行支持,从而提供客户端和应用程序之间的负载均衡以及服务对服务的通信。
构建混合云
Elastic Load Balancing 让您能够使用单个负载均衡器在 AWS 资源和本地资源之间进行负载均衡。为实现这一点,您可以将所有资源注册到相同的目标组并将该目标组与负载均衡器关联。或者,您可以使用两个负载均衡器(其中一个用于 AWS 资源,另一个用于本地资源)在 AWS 资源和本地资源之间进行基于 DNS 的加权负载均衡。
扩展第三方虚拟设备
在迁移到云时,有些客户希望保留他们现有的设备及围绕这些设备构建的技能和流程。使用网关负载均衡器时,客户可以通过他们喜欢的供应商部署设备,同时利用在云中运行的规模和灵活性。
客户





