理论部分:LVS负载均衡配置分三种模式(NAT 、IP隧道、DR)

NAT模式:原理是把从客户端发来的ip包的地址在DR上进行转换,转换成其中一台real Server的ip并,real Server处理后在通过DR返回给客户端。不论进出流量都必须经过DR服务器,如果负载过大 DR会成为一个瓶颈。

IP隧道模式:使用网络分层原理,从客户端发来的数据包的基础上封装一个新的ip头标记,发给real server,realserver收到后,先把DR发过来的数据包头解开,还原数据包原样,处理后直接返还给客户端,不在经过DR,但是real server的系统必须支持iptunnel的协议。

DR(直接路由)模式:前两种工作在网络层,而DR模式工作在数据链路层,DR和real server都使用同一个ip对外服务,但只有DR对arp请求进行响应,所有real server 对本身这个ip的arp请求保持沉默,网关会把这个服务ip的请求全部定向给DR,DR收到数据包后根据调度算法,找到对应的real server,把目的mac地址改为real server的mac并发给这台real server,realserver收到数据包并处理后直接返还给客户端,由于DR要对二层包进行改换,所以 DR和real server之间必须在同一个广播域(也可以说在同一个交换机上)。

四种算法:(准确的说10种,常用的就4种)

轮叫调度(RRS):调度器通过轮叫将外部的请求按顺序轮流分配到集群的真实服务器上,均等的对待每一台服务器。

加权轮叫调度(WRRS):通过加权轮叫根据服务器处理能力的不同来分配给真实服务器的连接数,可以保证处理能力强的服务器处理更多的流量。

最小连接调度(LCS):通过最少连接将网络请求调度到建立连接最少的服务器上。

加权最少连接调度(WLCS):在群集服务器性能差别较大的情况下,调度器采用加权最少连接可优化负载性能,具有较高权值的服务器将承受较大比例的活动连接负载,调度器可以自动问询真实服务器负载情况并动态的调整其权值。

实验环境:redhat6.1 2台和centos6.3和xp

redhat6.1:真实服务器,搭建简单的网站测试用(ip:192.168.0.1和192.168.0.2),centos6.3:lvs服务器 (eth0:192.168.1.254,eth1:192.168.0.254)xp:客户端(192.168.1.1)

1,在lvs服务器上配置yum源,并安装ipvsadm软件,

开启路由转发功能 #vim /etc/sysctl.conf   ,net . ipv4 . ip_forward = 1

sysctl -p 立即生效。

ipvsadm -C 清空

ipvsadm -A -t 192.168.1.254:80 -s rr

ipvsadm -a -t 192.168.1.254:80 -r 192.168.0.1 -m

ipvsadm -a -t 192.168.1.254:80 -r 192.168.0.2 -m

ipvsadm -L 查询状态

2,真实服务器,设置网关 route add default gw 192.168.0.254

echo “www.server1.com ">/var/www/html/index.html ,两台设置方法相同,

3,测试 在xp里输入192.168.1.254显示网站内容,并断开一个server能正常显示server另一个内容说明搭建成功,下节将实验lvs的另外两种模式。