一、LVS
原文链接:link
1.什么是LVS
LVS(Linux Virtual Server)即Linux虚拟服务器,是由章文嵩博士主导的开源负载均衡项目,目前LVS已经被集成到Linux内核模块中。该项目在Linux内核中实现了基于IP的数据请求负载均衡调度方案,其体系结构如图1所示,终端互联网用户从外部访问公司的外部负载均衡服务器,终端用户的Web请求会发送给LVS调度器,调度器根据自己预设的算法决定将该请求发送给后端的某台Web服务器,比如,轮询算法可以将外部的请求平均分发给后端的所有服务器,终端用户访问LVS调度器虽然会被转发到后端真实的服务器,但如果真实服务器连接的是相同的存储,提供的服务也是相同的服务,最终用户不管是访问哪台真实服务器,得到的服务内容都是一样的,整个集群对用户而言都是透明的。最后根据LVS工作模式的不同,真实服务器会选择不同的方式将用户需要的数据发送到终端用户,LVS工作模式分为NAT模式、TUN模式、以及DR模式。
通过上图可以清晰的看到,互联网用户访问web资源的时候先去访问lvs负载均衡调度器,再由lvs将用户的请求转给web服务器
这样做的好处是可以均衡后端服务器的压力,防止同一时间某台后端web服务器的访问量过大,导致服务器瘫痪
既有利于公司服务的稳定运行,也有利于客户的使用
2.lvs 的三种工作模式
1、基于NAT的LVS模式负载均衡
2、基于TUN的LVS负载均衡
3、基于DR的LVS负载均衡
二、实现httpd的负载均衡
利用DR工作模式和轮询调度算法实现
调度器:
yum install ipvsadm -y #安装lvs管理器
ip addr add 172.25.51.100/24 dev eth0 #添加虚拟ip
ip addr
ipvsadm -A -t 172.25.51.100:80 -s rr #添加虚拟IP,‘rr’ 轮询调度算法
ipvsadm -a -t 172.25.51.100:80 -r 172.25.51.2:80 -g
ipvsadm