AWS ELB 简介

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS ELB 简介相关的知识,希望对你有一定的参考价值。

参考技术A ELB全称Elastic Load Balance,弹性负载均衡顾名思义就是负责将前端流量均衡地发放到后端服务器,见下图。

比如,如果一个系统只有一台Web服务器,对于访问流量大的网站,经常会出现响应时间长、无响应等情况,这时就会想要提升Web服务器的规格或者增加Web服务器台数,如果有两台Web服务器,那么流量进来时应该走哪个服务器呢?这个时候需要有一个“东西”负责接收流量、分配流量的工作,这就是ELB。

比如,你要访问https://www.baidu.com/,通过DNS解析得到远端地址为180.97.33.107:443,这个地址就是ELB的IP地址,ELB前端得到流量后,会检查后端各个服务器的状态,将流量分配到空闲的服务器,服务器得到返回数据后再传递给ELB,ELB再将数据返回给用户。

注意:ELB也有自己的name,DNS将域名解析后其实是ELB name和IP地址,这里为了方便直接写IP。

那么是否所有的访问都会通过ELB呢?不是的,ELB只支持HTTP,HTTPS,TCP,SSL(不包括HTTP/2)端口1-65535的访问。比如你PING一台ELB后端上的机器,就不会经过ELB。

那么是否所有的访问都会通过ELB呢?

不是的,ELB只支持HTTP,HTTPS,TCP,SSL(不包括HTTP/2)端口1-65535的访问。比如你PING一台ELB后端上的机器,就不会经过ELB。

另外,你可以配置ELB监听器,指定协议和端口,只有符合条件才能传输。ELB前端监听器检查从用户到ELB的请求,ELB后端监听器检查从ELB到EC2的请求。

用于 Auto Scaling 组的 AWS 多个 ELB

【中文标题】用于 Auto Scaling 组的 AWS 多个 ELB【英文标题】:AWS multiple ELBs for a Auto Scaling Group 【发布时间】:2018-03-29 21:41:12 【问题描述】:

根据AWS documentation,您可以将多个负载均衡器附加到单个 Auto Scaling 组。我认为 ELB 和 ASG 之间会有 1:1 的关系。如果 ASG 对哪个 ELB 进行扩展,它会更新 - 全部。 这是如何工作的,用例是什么。

【问题讨论】:

见***.com/questions/19689164/…。 【参考方案1】:

虽然您可以将多个负载均衡器附加到单个 Auto Scaling 组,但它很少被使用,特别是在 AWS 引入支持路由规则(基于域和路径)并附加多个 SSL 证书的应用程序负载均衡器 (ALB) 之后单个负载均衡器功能。

例如以前需要它的少数场景(在上面提到的新功能之前可用。)

    如果您在 EC2 中运行多个应用程序(尽管不推荐)并且需要它们自己的 SSL 证书,则需要指向多个负载均衡器。 如果您有一个应用程序代理 Auto Scaling 组,该组使用自己的 SSL 指向后端服务。 针对 EC2 中内部应用程序的不同路径和端口映射(类似于第 1 点)

【讨论】:

我们使用多个 ELB 进行测试和部署。例如,我们正在测试新的 WAF 规则,因此我们将使用加权 DNS 将一定比例的流量路由到测试负载均衡器,同时验证新规则没有破坏任何内容。【参考方案2】:

查看 AWS 文档,您可以将多个负载均衡器附加到一个 ASG。当 ASG 扩展时,所有负载均衡器都会知道新的 EC2 实例。

Auto Scaling 与 Elastic Load Balancing 集成,使您能够将一个或多个负载均衡器附加到现有的 Auto Scaling 组。附加负载均衡器后,它会自动注册组中的实例并跨实例分配传入流量

link to above quote can be found here

就缩减而言,如果其中一个负载平衡器报告某个实例运行状况不佳,那么该实例将被视为运行状况不佳并最终终止。

如果您将 Auto Scaling 组配置为同时使用 EC2 状态检查和 Elastic Load Balancing 运行状况检查来确定运行状况,如果实例未通过状态检查或运行状况检查,则 Auto Scaling 会认为实例运行状况不佳。请注意,如果您将多个负载均衡器附加到 Auto Scaling 组,则所有负载均衡器都必须报告该实例运行状况良好,Auto Scaling 才能认为该实例运行状况良好。如果一个负载均衡器报告某个实例运行状况不佳,Auto Scaling 会替换该实例,即使其他负载均衡器报告它运行状况良好

Link to above quote can be found here

我希望这能让事情变得更清楚。

【讨论】:

以上是关于AWS ELB 简介的主要内容,如果未能解决你的问题,请参考以下文章

使用 AWS(ELB、Kubernetes Nginx 和 ACM)配置 HSTS

AWS - ELB 可用区 + VPC 最佳实践?

https / SSL到AWS ELB和ELB到Tomcat非SSL / HTTP

如何让 AWS ELB 将实际主机名而不是 ELB 的主机名转发到目标组?

在 ELB 后面可访问的 AWS EB url

如何集成 AWS + ELB + AutoScale + Docker + Spring Cloud