1.什么是ELB?
ELB全称Elastic Load Balance,弹性负载均衡顾名思义就是负责将前端流量均衡地发放到后端服务器,见下图。
2.为什么要有ELB?
比如,如果一个系统只有一台Web服务器,对于访问流量大的网站,经常会出现响应时间长、无响应等情况,这时就会想要提升Web服务器的规格或者增加Web服务器台数,如果有两台Web服务器,那么流量进来时应该走哪个服务器呢?这个时候需要有一个“东西”负责接收流量、分配流量的工作,这就是ELB。
3.你如何访问到想要的网页?
比如,你要访问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。
4.ELB监听器
那么是否所有的访问都会通过ELB呢?
不是的,ELB只支持HTTP,HTTPS,TCP,SSL(不包括HTTP/2)端口1-65535的访问。比如你PING一台ELB后端上的机器,就不会经过ELB。
另外,你可以配置ELB监听器,指定协议和端口,只有符合条件才能传输。ELB前端监听器检查从用户到ELB的请求,ELB后端监听器检查从ELB到EC2的请求。