Hello大家好,在本课时,我们将讨论AWS不同类型的弹性负载均衡器,也就是ELB。 对于认证考试您需要了解针对不同的场景使用哪种类型的负载均衡器。
第一个是应用程序负载均衡器,也就是ALB,ALB在请求级别进行监听,它工作在OSI的第7层。
ALB的监听器支持HTTP或HTTPS协议,它支持基于请求的内容进行路由,基于请求的内容路由是什么意思呢?比如:
综上,ALB支持检索上述的这些信息并根据这些信息做出路由的决策,非常的智能。
ALB支持将实例、IP地址、lambda 函数和容器配置为路由目标。
接下来,网络负载均衡器,也就是NLB. ALB和NLB都是AWS新一代的负载均衡器。
NLB运行在连接级别,它工作在OSI的第四层,通过 IP 协议数据来做出路由决策。
NLB监听TCP、TLS、UDP、TCP_UDP, 非常适合当您需要超高性能和极低延迟的场景,或者大规模TLS卸载的场景,什么是TLS卸载呢?TLS卸载就是NLB处理TLS加密连接,加密连接在到达您后端实例前的NLB上做卸载处理。因此,如果您在考试中看到有要求极低延迟的负载均衡器,则很可能是NLB。
针对使用场景,NLB和ALB到底用哪一个,还有一个关键的点是支持的协议,如果需要处理的是TCP、TLS、UDP协议,那么您就需要网络负载均衡器;如果您需要根据HTTP或HTTPS协议的信息进行路由,那么您就需要应用程序负载均衡器。
然后,经典负载均衡器,CLB。在认证考试中关于CLB的考点应该是见不到了,但是有可能在答案选项这类的地方会看到,一般都不会是正确答案。
CLB是上一代的负载均衡器, 在ALB和NLB发布之前,用的会比较多;现在有了新一代的ALB和NLB,AWS不建议我们在使用CLB了,有CLB的使用场景可以选择新一代的负载均衡器。
CLB支持4层和7层的路由,但是它不像ALB和NLB支持那么多的特性。之前是用于 EC2-Classic 网络。
最后,是网关负载均衡器,GLB,这是AWS相对较新推出的,而且认证考试中会有相关的考点。
GLB用于虚拟设备前端,比如防火墙、入侵检测和防御系统以及深度数据包检测系统.。与前面的负载均衡器不同,GLB是工作在OSI的第三层,监听所有端口的所有数据包。
然后它将进来的流量转发到监听器规则中的指定的目标组,与虚拟设备使用Geneve协议,6081端口交换流量。
接下来我们比较下ALB和NLB的特性,对于绝大多数需要使用负载均衡器的场景,您只需要在这两个负载均衡器中进行选择。
当然这对于考试来讲理解这些也是非常重要的。
首先要记住,在OSI模型中,ALB工作在第7层,NLB工作在第4层。
ALB转发到的目标可以是IP 地址、实例、lambda 函数或容器;而NLB转发的目标可以是一个 IP 地址或EC2实例。
监听支持的协议,ALB支持HTTP、HTTPS以及gRPC;而NLB支持监听TCP、UDP和TLS。
PrivateLink的支持,ALB是不支持的,而NLB是支持的。PrivateLink是什么后面VPC相关的课时会讨论。
ALB是不支持配置静态IP地址的,而NLB支持静态IP地址,这意味着NLB的在您子网中的实际节点是具有静态IP地址的,这对于防火墙的白名单配置等等会非常有帮助。
基于HTTP头路由这个特性本身就是7层的,所以ALB是支持的,NLB不支持。
保持来源的源IP特性,ALB使用x-forwarded-for ,也就是客户端来源的IP地址信息使用x-forwarded-for头转发;NLB转发时会保持源IP地址。
SSL终止,可以在ALB上做;而NLB支持在NLB或目标上做SSL终止。
本课时的最后,我们讨论ELB的使用场景。
当您的WEB应用程序需要7层路由特性微服务架构时,比如docker容器,或者需要配置lambda为目标时,使用ALB。
当您的应用程序是TCP和UDP的协议,需要超低的延迟,需要静态IP地址或者需要与VPC终端节点一起使用时需要使用NLB。
最后,对于网关负载均衡器,您可以将其用于负载均衡虚拟设备,比如:入侵检测系统、入侵防御系统、下一代防火墙、WEB应用防火墙和分布式拒绝服务保护系统。
它还与auto scaling组进行了集成以获得弹性,支持网络监控和记录分析。
好的,以上就是本课时的内容,感谢大家的观看,希望本课时能够给大家带来帮助。