LVS+keepalived 安装完整过程就不说了 网上太多
这里主要说下测试的过程需要注意的地方
1、lvs后端和前端的端口必须一致80对应80 88对应88 不然分发的时候会出现接受不了的问题。
2、lvs后端假如是windows的话 需要安装一个虚拟网卡,如下:
在控制面板里添加一个硬件设备, Microsoft Loopback Adapter ,如下图:
ip设置为虚拟网卡的ip,掩码根据实际网段设置。
3、因为lvs拥有Persistence 持久性,所以测试的时候你可能根本看不出效果
这时候需要修改配置文件
persistence_timeout 0 #同一ip多少秒内的请求都发送到同一realserver
设置为0
还有使用 Firefox 测试的化,请先打开 about:config 将 network.http.keep-alive 改为 false,这样就可以直接看到轮询的效果了。
4、有时候使用killall keepalived命令也未必能使用配置重新起作用。这时候记得清空lvs配置 ipvsadm -C 再重新启动keepalived
ipvsadm -C
ipvsadm -A -t 192.168.1.100:80 -s rr
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.20 -g
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.30 -g
参数说明:
-C: 清空配置。
-A: 增加一个虚拟服务。该服务由协议(TCP: -t, UDP: -u)、IP地址和端口号组成。
-s rr: 表示使用轮叫调度算法(Round-RobinScheduling)。
-a: 表示往一个服务内增加一个 RealServer。
-r: 指定 RealServer 地址。
-g: 表示直接路由(Direct Route)模式。
-p: 会话时间 (如 -p 60 表示一分钟内转向同一个 RealServer)
5、lvs数据监控
可以使用lvs-rrd工具和cacti来监控,具体请google。
6、一些常的指令,方便查看keepalived运行情况和网络状况:
#tcpdump src host 10.0.8.9 and port 80 #抓包
#curl -I http://10.0.8.9/ #利用URL语法在命令行方式下的文件传输工具
#ip addr #IP地址信息或ip add show eth0 查看虚拟IP绑定情况
#service iptables stop #关闭iptables防火墙
#iptables –nvL #列出防火墙进入数据信息
#ipvsadm -ln #查看lvs服务是否正常,包括活动链接,weight(keepalived配置),内部链接等。