LVS的一些问题和思路
一、问题
1.负载不均的可能原因
2.会话保持方案
二、VIP绑定和arp抑制思路
三、LVS扩展思路
一、问题
1.负载不均的可能原因
1)LVS可能采用了会话保持的缘故(-p 300,persistent 300),优化方式是尽量用cookies替代session
2)后端RS节点采用了会话保持参数,如apache的keealive参数。
3)LVS调度算法设置错误。
4)访问量较少的情况下不是完全的1:1。
5)用户发送的请求时间长短,和请求资源多少大小有关。
2.会话保持方案
http://blog.51cto.com/oldboy/1331316
http://blog.51cto.com/oldboy/1323468
二、VIP绑定和arp抑制思路
1)对RS绑定的vip做实时监控,出问题报警或自动处理后报警
2)把RS绑定的vip做成配置文件,例如:vi /etc/sysconfig/network-scripts/lo:0
3)若是单个vip,那么可以用stop传参设置0
4)如果RS端有多个vip绑定,即使是停止VIP绑定也不一定置0,或者用if语句判断vip小于1再置0
if [ ${#VIP[@]} -lt 1 ];then
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/lo/arp_announce
echo “0” >/proc/sys/net/ipv4/conf/all/arp_ignore
echo “0” >/proc/sys/net/ipv4/conf/all/arp_announce
fi
5)RS节点上自身提供服务的检查
6)辅助排查工具如tcpdump,ping等
tcpdump -i eth0 tcp port 80 -x -w -X -s 1500
7)负载均衡和反向代理集群的三角形排查理论
三、LVS扩展思路
1)可以在lvs前端加交换机,通过动态路由协议ospf实现lvs的轮询。
https://my.oschina.net/lxcong/blog/143904
2)搭建dns,对A记录做轮询,甚至可以对多机房进行轮询
3)使用智能dns,根据用户的线路和位置分配最近的且和服务器线路相同的机房地址