更多动态与干货,请持续关注我们 ”
﹀
﹀
一、AWS负载均衡器选项
在AWS中,共有3种负载均衡器(ELB)类型供选择:
• Application Load Balancer (ALB): 7层的负载均衡器,适用于HTTP/HTTPS流量的分发。
• Network Load Balancer (NLB): 4 层的负载均衡器,适用于TCP, UDP, 和TLS的流量的分发。
• Classic Load Balancer (CLB): 符合HTTP/HTTPS/TCP协议的上一代产品。
ELB是由AWS完全托管的服务,用户无需关心承载其功能的底层计算资源。对于需要将本地应用迁移至AWS的用户而言,ELB能提供以下优势:
• 配置简便,支持多种后端应用
• 提供后端实例的健康检查和粘性会话功能
• 内置高可用和横向扩展功能
• 更好地与其他AWS服务(例如CloudWatch)集成
二、NLB vs ALB
从根本上来说,负载均衡器被归为4层还是7层取决于其处理的信息类型。例如,HTTP头部仅能在OSI模型的第7层获取,因此如果要在路由策略中将其纳入考量,就必须使用7层负载均衡器。
在AWS中,NLB工作在OSI模型的第4层。一般来说,NLB能提供比ALB更低的延迟,因为其在做出路由决定的时候处理的信息量更少。然而,总体上应用的性能会根据总体信息的处理需求而变化。例如,假使一个应用正在使用NLB来降低延迟,但却在应用节点上处理HTTP头部检查,使用ALB并在ALB上处理HTTP头部检查反而能降低更多的延迟。
与NLB不同,ALB是代理负载均衡器,意味着ALB维持两个不同的连接:一个介于客户端和负载均衡器节点之间,一个介于负载均衡器和后端目标之间。
当选择使用NLB或ALB时,有许多需要考虑的因素。总体来说,使用NLB还是ALB取决于用于决定路由的信息的位置。如果一个应用需要在到达后端目标之前完成检查,ALB就是必需的。如果应用仅仅依靠第4层的信息检查,NLB通常会是更好的选择。
三、后端目标
后端目标的类型以及如何注册到负载均衡器是在设计负载均衡架构时必须考虑的。当一个目标注册到一个负载均衡器之后,负载均衡器会开始将客户端请求路由到后端实例。在一个云原生环境中,后端目标的数量变化会比传统物理环境中更为频繁,用户必须考虑动态应用的节点如何注册到负载均衡器。
ELB使用目标群组来将请求路由到一组后端目标。目标群组是响应客户端请求的一组类似的计算资源。和大多数负载均衡方案类似,ELB会执行健康检查并且只将流量发往健康的后端实例。
特殊的计算资源,例如AWS Lambda,只能与ALB(或者Amazon API Gateway)结合使用。Lambda是一种无服务器的计算平台,提供自身的横向扩展和高可用性,因此,只要一个Lambda函数注册到ALB,便无需任何其他配置。
如果目标群组使用EC2的实例ID,您可以附加Auto Scaling组到目标群组。一个Auto Scaling组包括一个具有自动伸缩功能的一组EC2实例的集合。附加之后,由Auto Scaling组创建或删除的实例将自动与负载均衡器注册和注销。实例注册之前,它们必须通过负载均衡器的健康检查。如果某个实例没有通过健康检查,就会从目标群组中被移除。在实例被注销之前,ELB会选择性执行连接耗尽以确保请求在实例被注销之前已经完成。
ELB也能和ECS(Amazon Elastic Container Service)结合使用以将流量均分到不同的后端容器实例。只要连接到负载均衡器,容器在Auto Scaling组中就和实例完全一致,也需要通过健康检查并且会在检查失败时被移除。在与ECS相结合的场合,ALB会是比NLB更好的选择,因为ALB可以提供一些额外的功能,包括动态主机端口映射(允许同一个容器实例执行多个任务)和支持基于路径的路由(允许多个服务使用同一个ALB侦听端口)。
另外,仍然在使用经典版EC2的公司可以考虑CLB方案,但需要注意的是,相比ALB和NLB,CLB仅提供有限的功能并且在绝大部分场景下不推荐使用。
四、请求检查
五、高级监控
负载均衡器可以帮助用户分析流量趋势,排除故障并提升应用的性能和安全性。负载均衡器上常见的监控包括:
• 访问日志:捕获细节信息,包括每个请求的源ip地址,URL等
• 性能和参数: 捕获的统计数据,例如活动连接数,HTTP响应代码等
• HTTP请求跟踪:使用自定义HTTP头部来跟踪请求
• 管理和治理:捕获修改负载均衡器的细节信息,例如用户ID,时间戳等
六、SSL/TLS卸载和证书管理
七、多协议支持
很多云原生应用仅依靠HTTP和HTTPS来进行通信。然而,一个应用也可能需要多协议支持,例如FTP。这样您的负载均衡器就需要支持这些协议和端口的组合。
ALB仅支持HTTP和HTTPS协议,但NLB支持TCP,TLS,UDP等协议,比ALB更为灵活。
八、空间连接
九、典型负载均衡架构
十、总结
对于需要将IT架构迁移到AWS的用户而言,摒弃现有的负载均衡架构并以基于ELB的架构取而代之,不但可以降低运维成本,而且无需牺牲任何现有的功能。除了ELB,AWS还提供一系列和ELB紧密集成的其他服务来提升各个应用的性能和安全性。

GoBuddy云赋是中国企业出海一站式服务提供商;提供云转售、迁移、解决方案、技术支持等专业服务,助力中国出海企业降本增效。
任何问题咨询或交流,可直接后台发送消息,我们会及时回复。


