负载均衡分层:

  • 二层负载均衡:通过改写报文的目标MAC地址为上游服务器MAC地址,源IP和目的IP地址不变,负载均衡服务器和真实服务器共享同一个VIP,如LVS DR工作模式。

  • 四层负载均衡:根据端口将报文转发到上游服务器(不同的IP地址+端口),如LVS+NAT模式,HaProxy。

  • 七层负载均衡:根据端口号和应用层协议如HTTP协议的主机名、URL,转发报文到上层服务器(不同的IP地址+端口),如HaProxy、Nginx 。

  • 一句话,LVS等的负载均衡是转发用户请求的数据包,而Nginx反向代理是接收用户的请求然后重新发起请求去请求其后面的节点。


LVS-DR工作原理:

  • 工作在数据链路层,LVS和上游服务器共享同一个VIP,通过改写报文的目的MAC地址为上游服务器MAC地址来实现负载均衡,上游服务器直接响应报文到客户端,不经过LVS负载均衡器,从而提升性能。

  • 因为LVS和上游服务器必须在同一个子网,为了解决子网问题又不能影响性能,可以选择在LVS后边挂HaProxy,通过四到七层负载均衡器HaProxy集群来解决跨网和性能问题。

  • 不能修改端口号(例如源80 -->目的80),端口号要保持一致。