负载均衡、LVS概述
2017-08-23 tech linux 22 mins 6 图 7884 字
本文转自 负载均衡、LVS概述
1. 负载均衡概述
负载均衡的基本思路是:在一个服务器集群中尽可能的平衡负载量。通常的做法是在服务器前端设置一个负载均衡器(一般是专门的硬件设备)。然后负载均衡器将请求的连接路由到最空闲的可用服务器。下图显示了一个典型的大型网站负载均衡设置,其中一个负载均衡器用于HTTP流量,另一个用于MySQL访问。
负载均衡有5个常见的目的。
(1)可扩展性:负载均衡对于某些扩展策略有所帮助,例如读写分离时从备库读数据。
(2)高效性:负载均衡有助于更有效的使用资源,因为它能够控制请求被路由到何处。
(3)可用性:一个灵活的负载均衡解决方案能够使用时刻保持可用的服务器。
(4)透明性:客户端无须知道是否存在负载均衡设置,也不需要关心在负载均衡器的背后有多少机器,名字是什么。负载均衡器给客户端看到的只是一个虚拟的服务器。
(5)一致性:如果应用是有状态的(数据库事务、网站会话等),那么负载均衡器就应将相关的查询指向同一个服务器,以防止数据丢失。应用无须去跟踪到底连接哪一个服务器。
2. 四层/七层负载均衡
服务器负载均衡,顾名思义就是对一组服务器提供负载均衡业务。这一组服务器一般来说都处于同一个局域网络内,并同时对外提供一组(或多组)相同(或相似)的服务。服务器负载均衡是数据中心最常见的组网模型。
服务器负载均衡分为四层(L4)服务器负载均衡和七层(L7)服务器负载均衡两种:
- L4服务器负载均衡支持IPv4协议和IPv6协议,是基于流的服务器负载均衡,对报文进行逐流分发,将同一条流的报文分发给同一个服务器。L4服务器负载均衡对基于HTTP的7层业务无法做到按内容进行分发,限制了负载均衡业务的适用范围。依据转发方式,L4服务器负载均衡分为NAT方式和DR方式。
- L7服务器负载均衡只支持IPv4协议,是基于内容的服务器负载均衡,对报文的承载内容进行深度解析,包括HTTP协议、RTSP协议等,根据其中的内容进行逐包分发,按既定策略将连接导向指定的服务器,实现了业务使用范围更广泛的服务器负载均衡。L7服务器负载均衡仅支持NAT方式。
2.1 NAT方式L4服务器负载均衡
NAT方式L4服务器负载均衡的组网灵活,后端服务器可以位于不同的物理位置,不同的局域网内。NAT方式下,LB设备分发服务请求时,进行目的IP地址转换(目的IP地址为实服务的IP),通过路由将报文转发给各个实服务。NAT方式L4服务器负载均衡的典型组网如图所示。