02.负载均衡

负载均衡

为了解决应用实例的可扩展、可用性、安全性问题,在不同的应用实例间分配传入的流量,需要依赖于一些负载均衡解决方案。我们常见的负载均衡会分以下几层进行部署:

  • 二层负载均衡会通过一个虚拟 MAC 地址接收请求,然后再分配到真实的 MAC 地址;

  • 三层负载均衡会通过一个虚拟 IP 地址接收请求,然后再分配到真实的 IP 地址;

  • 四层通过虚拟 IP 与端口接收请求,然后再分配到真实的服务器;

  • 七层通过虚拟的 URL 或主机名接收请求,然后再分配到真实的服务器。

最为常用的是四层负载均衡与七层负载均衡。四层负载均衡,也就是主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。而所谓七层负载均衡,也称为内容交换,也就是主要通过报文中的真正有意义的应用层内容,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。比如公有云 AWS ELB 提供了两种类型的负载均衡器:

  • Classic 负载均衡器,可基于应用程序或网络级信息路由流量,适用于在多个 EC2 实例之间进行简单的流量负载均衡

  • 应用程序负载均衡器,可基于包括请求内容的高级应用程序级信息路由流量,适用于需要高级路由功能、微服务和基于容器的架构的应用程序。应用程序负载均衡器可将流量路由至多个服务,也可在同一 EC2 实例的多个端口之间进行负载均衡

Links