解密 NLB:下一代负载均衡利器 NLB 服务详解(上)

Posted AWS云计算

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解密 NLB:下一代负载均衡利器 NLB 服务详解(上)相关的知识,希望对你有一定的参考价值。


去年 9 月份,AWS 发布了托管的网络负载均衡器服务 Network Load Balancer。NLB 是继 Classic Load Balancer、Application Load Balancer 之后,AWS 发布的第三款负载均衡器服务。


本文将着重介绍 NLB 的原理、优势以及使用配置,帮助读者更好地在自己的业务场景中运用 NLB 服务。


解密 NLB:下一代负载均衡利器 NLB 服务详解(上)

NLB 是什么?

NLB 全称为 Network Load Balancer,是在开放系统互连(OSI)模型的第四层运行。它每秒可以处理数百万个请求。在负载均衡器收到连接请求后,它会从默认规则的目标组中选择一个目标,尝试在侦听器配置中指定的端口上打开一个到该选定目标的 TCP 连接。

 

当您为负载均衡器启用可用区时,Network Load Balancing 会在该可用区中创建一个负载均衡器节点。默认情况下,每个负载均衡器节点仅在其可用区中的已注册目标之间分配流量。如果您启用了跨区域负载均衡,则每个负载均衡器节点会在所有启用的可用区中的已注册目标之间分配流量。

有关更多信息,请参阅:

https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#cross-zone-load-balancing

 

 

 

 

 

您可以根据需求变化在负载均衡器中添加和删除目标,而不会中断应用程序的整体请求流。Network Load Balancing 根据传输到应用程序的流量随时间的变化对负载均衡器进行扩展。Network Load Balancing 能够自动扩展来处理绝大部分工作负载。

解密 NLB:下一代负载均衡利器 NLB 服务详解(上)

NLB 的特色

高度可扩展且低延迟

 NLB 在微秒级别提供非常低的延迟,这对于像 Ad Tech 和 IoT 等对延迟敏感的行业客户极为重要。此外,它还可以按需扩展以负载平衡数百万请求/秒。

高可用性 

NLB 提供高度可用的负载均衡器服务,这是大量客户在过去使用 ELB 服务时期望获得并且也一直能获得的保证。

 Route-53 的 DNS 故障转移

如果您的应用程序没有响应,Route 53 将从服务中删除不可用的 NLB 端点,并将流量引导到另一个区域中的备用负载均衡器。同样,如果没有向负载均衡器注册健康的 EC2 实例,或者给定区域中的负载均衡器节点不健康,则 Route-53 会将流量定向到其他可用区中的负载均衡器节点。NLB 可以和 Route 53 结合,无论是该区域的 NLB 下面没有健康的主机,还是该区域的 NLB 发生故障,Route53 都会负责将流量导向其他的 AZ。(Route 53 目前仅由其他全球区域提供服务

同可用区内分发流量

客户端的流量到达 NLB 在某个可用区提供的 IP 后,NLB 会向相同可用区内的后端实例分发流量,通过避免跨可用区的流量分发能够获得更好的延迟性能。注意:默认情况下 NLB 只会转发给当前添加 AZ 的后端实例,如果需要跨 AZ 转发,需要打开“ Cross-Zone Load Balancing ”的功能。

当后端应用程序或服务收到流量时,NLB 会保留客户端源 IP(无需任何自定义标头)。然后,客户可以使用它进行进一步处理。 NLB 会保持客户端的源 IP,不会对通过的数据包做处理。

固定IP支持

NLB 允许客户为负载均衡器分配每个可用区(子网)的弹性 IP,为其提供固定的 IP 功能。如此设计使得 NLB 能够被纳入企业现有的防火墙安全策略中,并且能够避免 DNS 缓存带来的问题。

内置运行状况检查

NLB 自动检测失败的后端实例,并仅路由到健康实例。

与 AWS 服务集成

NLB 可轻松与其他 AWS 服务集成,如 Amazon Elastic Container Service(ECS),AWS CloudFormation 和 AWS Elastic BeanStalk。

支持 TCP 长连接

NLB 支持 TCP 长连接,即使是在 NLB 的扩展期间或更新期间也不会断开资源连接,从而能更好地支持包括 IoT、游戏、消息应用等在内的业务场景。

支持资源组

NLB 支持与 Application Load Balancer 相同的资源,其中包括 Listeners、Targets、TargetGroups 和规则。与 Application Load Balancer 不同,规则不会基于内容。NLB 和 ALB 一样支持 Target Group 的配置方式。

兼容所有现在 ELB 的 API

我们将使用与 Application Load Balancer 相同的底层 API。您可以通过调用 elbv2 create-load-balancer API,使用 AWS CLI 创建网络负载均衡器。


解密 NLB:下一代负载均衡利器 NLB 服务详解(上)

 从上一代负载均衡器服务(Classic Load Balancer)迁移到 NLB 的好处

既然 NLB 有这么多优势和特点,那么您可以开始考虑从现有的 AWS 架构中的CLB 迁移到 NLB 了,因为 NLB 具有如下好处:


• 可以处理急剧波动的工作负载,并可以扩展到每秒处理数百万个请求。





 支持容器化的应用程序。计划任务时,Amazon Elastic Container Service(Amazon ECS)可以选择一个未使用的端口,并可以使用此端口向目标组注册该任务。这样可以高效地使用您的群集。


• 支持单独监控每个服务的运行状况,因为运行状况检查是在目标组级别定义的,而且许多 Amazon CloudWatch 指标也是在目标组级别报告的。将目标组挂载到 Auto Scaling 组的功能使您能够根据需求动态扩展每个服务。



欲了解 NLB 更多服务详情

敬请期待下篇




马上扫描/长按识别下方二维码

或点击原文阅读

免费报名参加 AWS 技术峰会 2018 北京站

更欢迎你邀请好友,与我们一起

所 • 建 • 不 • 凡!


*本次活动最终解释权归亚马逊通技术服务(北京)有限公司所有。

以上是关于解密 NLB:下一代负载均衡利器 NLB 服务详解(上)的主要内容,如果未能解决你的问题,请参考以下文章

Windows 08 R2_NLB负载均衡(图文详解)

NLB+Application Request Route 网路负载均衡

SharePoint 2013 搭建负载均衡(NLB)

server 2016部署网络负载平衡(NLB)

windows第四层负载均衡--基于NLB负载均衡

EMQ 助力阿里云洛神云网络构建新一代“亿级并发百万级吞吐”NLB 网络型负载均衡系统