负载均衡

1.什么是负载均衡

负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。

负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。

2.负载均衡分层

地域上的负载均衡:DNS(轮询、多个公网IP)

硬件层面的负载均衡: F5 (作用:集群和集群之间的负载均衡)

软件层面的负载均衡:lvs | nginx (作用:主机和主机之间的负载均衡)

3.四层负载均衡、七层负载均衡

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

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

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

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

所谓的四到七层负载均衡,就是在对后台的服务器进行负载均衡时,依据四层的信息或七层的信息来决定怎么样转发流量。

比如:192.168.0.1 80 端口是官网的访问地址

​ 192.168.0.2 80 端口是文件服务器的地址

四层负载均衡就会分配的真实的服务器去。

比如:你的WEB服务器分成两组,一组是中文语言,一组是英文语言。

http://hanqichuan.com/zh/

http://hanqichuan.com/en/

七层负载均衡就可以当用户来访问的域名时,自动辨别用户语言,然后选择对应的语言服务器组进行负载均衡处理。

四层负载:LVS、F5

七层负载:haproxy、mysql proxy

四层负载:客户端与负载均衡器与服务器建立一个TCP连接,负载均衡器会修改报文头目标地址、修改源地址(根据需求)

七层负载:负载均衡器与客户端与服务器分别建立一个TCP连接。

七层负载均衡明显的对负载均衡设备的要求更高,处理七层的能力也必然会低于四层模式的部署方式。


负载均衡
http://hanqichuan.com/2019/09/10/系统设计/负载均衡/
作者
韩启川
发布于
2019年9月10日
许可协议