LVS DR模式负载均衡配置
2015-11-29 23:33
681 查看
初始环境
lvs 192.168.142.148 hostname:LVS1rs1 192.168.142.137 hostname:RS1 (nginx, 80端口,index.html 设置为<h1>rs1</h1>)
rs2 192.168.142.147 hostname:RS2 (nginx, 80端口,index.html 设置为<h1>rs2</h1>)
VIP 192.168.142.149 hostname:LVS1
LVS配置
LVS1上,安装ipvsadmapt-get install ipvsadm
设置VIP 192.168.142.149
ifconfig eth0:1 192.168.142.149 netmask 255.255.255.0
清空ipvsadm原表内容
ipvsadm -C
添加地址
ipvsadm -A -t192.168.142.149:80 -s wrr
(-A添加地址,-t指定VIP和端口, -s调度算法,这里使用wrr算法,即加权轮训调度,它将依据不同RS的权值分配任务。权值较高的RS将优先获得任务,并且分配到的连接数将比权值低的RS更多。相同权值的RS得到相同数目的连接数)
查看表内容
ipvsadm -L -n
指定两台真实服务器(-r真实服务器ip及端口,-w权重值,-g先择DR模式)
ipvsadm -a -t192.168.142.149:80 -r 192.168.142.137:80 -g -w 1
ipvsadm -a -t192.168.142.149:80 -r 192.168.142.147:80 -g -w 1
realserver配置
进入指定文件夹cd /etc/init.d/
编辑脚本文件:vim realserver
SNS_VIP=192.168.142.144
/etc/rc.d/init.d/functions
case "$1" in
start)
ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP
/sbin/route add -host $SNS_VIP dev lo:0
echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p >/dev/null 2>&1
echo "RealServer Start OK"
;;
stop)
ifconfig lo:0 down
route del $SNS_VIP >/dev/null 2>&1
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
echo "RealServer Stoped"
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
保存脚本文件后更改该文件权限
chmod 755 realserver
开启realserver服务
service realserver start
至此,LVS负载均衡配置完成,可以访问192.168.142.149这个VIP查看效果。
如果要为LVS加上健康检查,可以通过shell脚本监控LVS后端realserver的状态增删ipvsadm表实现,见http://blog.csdn.net/aspnet_lyc/article/details/50063451
也可通过配置lvs+keepalive实现,与通过脚本实现健康检查相比,检查脚本访问后端服务器,需要指定超时时间,一旦出现问题,可能不会立即切换,造成用户访问失效。而keepalived更稳定,可以实现无缝切换。详情见http://blog.csdn.net/aspnet_lyc/article/details/49983009
相关文章推荐
- linux 虚拟机下 nat dhcp 动态IP配置
- Servlet含义与工作原理
- 初学JSON
- 沙盒模型
- Android list列表滑动显示隐藏toolbar(ListView)
- 信息的表示与处理-小结
- linux-文件系统管理10-关于存储介质的那些事儿
- 4个你需要知道的 Asset Catalog 的秘密
- 新Java运动:测试驱动开发3---用户注册2
- lua播放帧动画
- hdu-- 计算机学院大学生程序设计竞赛(2015’11)
- Linux命令之进程的管理
- 240. Search a 2D Matrix II
- 图像处理中的卷积---3.高斯卷积计算梯度
- 杭电2015‘11校赛 1004 质方数
- MongoDB——MongoProvider
- javascript权威指南学习笔记(三)
- ubuntu14.04安装luci
- java中遍历MAP的几种方法
- SAP ECC6 IDES安装及虚拟机下载