LVS简介
-
LVS是Linux Virtual Server的缩写,其主要的功能是实现负载均衡。其可用性=可用时间/(可用时间+故障恢复时间),通常用百分比来表示;99.9%表示一年的故障时间少于8小时;99.99%表示一年的故障时间少于53分钟;99.999%表示一年的故障时间小于5分钟。
-
核心组件:
lp_vs:linux内核功能模块,工作在内核,依赖该内核模块实现负载均衡功能。lp_vs:linux内核功能模块,工作在内核,依赖该内核模块实现负载均衡功能。
ipvsadm:应用层程序,可与lp_vs通信实现对负载均衡的管理和控制。 -
LVS的工作模式
lvs有四种工作模式分别为DR模式、NET模式、TUNNEL模式、FULLNET模式。
*DR模式直接路由
原理:用户先向DNS服务器发送域名解析,DNS向用户返回解析结果此结果为代理服务器的ip地址和mac地址,用户正式向代理服务器发送请求,代理服务器接受请求后会重新分装该请求,通过预先设定的算法找出一个后端的web服务器的mac地址将数据包的目标mac地址改为此mac地址;然后在内网中广播,后端的web服务器接收数据包后会判断其目标mac地址与自己的mac地址是否相同,如果相同就会处理该数据包,处理完成后直接发送给用户;如果不相同则丢弃该数据报。
*NAT模式
原理:用户先向DNS发送域名解析,DNS将解析结构返回给用户,这里的返回结果是代理服务器上的一个虚拟ip,我们称之为vip;用户向vip发送数据报这时代理服务器会接收此数据报;然后通过预先设定的算法找出一个后端节点的真实ip我们称之为RIP,代理服务器重新封装数据包将目标ip改为RIP;web服务器收到代理服务器的转发数据包后,处理数据包,处理完成后将处理结果返回给代理服务器,再由代理服务器转发给用户。