lvs+keepalived
2015-11-10 14:42
218 查看
Ubuntu lvs+keepalived 负载均衡配置实验环境:Vip: 192.168.1.128Master:192.168.1.125Slave: 192.168.1.126Realserve1: 192.168.1.127Realserve2: 192.168.1.1291、分别在master和slave上安装ipvsadm、keepalived;Su do apt-get install ipvsadm keepalived安装完以后分别修改ipvsadm配置文件,要不然启动不成功;Sudo vim /etc/default/ipvsadm
![](http://simg.sinajs.cn/blog7style/images/blog_editor/bne_img.gif)
在1.126也就是slave上,上边的DAEMON=”backup”修改完成后,启动ipvsadm;sudo /etc/init.d/ipvsadm start2、在master跟slave上边还要开启路由转发功能,具体如下; sudo sysctl net.ipv4.ip_forward=1 sysctl -psudo sysctl -a | grep ip_forward sudo /etc/init.d/ipvsadm restart3、接下来设置master跟slave的keepalivedkeepalived.conf默认是不存在的sudo vim /etc/keepalived/keepalived.confvrrp_instanceVI_1 {state BACKUPinterface eth0virtual_router_id 51priority 50advert_int 1authentication { auth_type PASS auth_pass 1111}virtual_ipaddress { 192.168.1.128}}virtual_server 192.168.1.128 80 { delay_loop 6 lb_algo wlc lb_kind DR protocol TCPreal_server 192.168.1.127 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}real_server 192.168.1.129 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}}virtual_server 192.168.1.128 8080 { delay_loop 6 lb_algo wlc lb_kind DR protocol TCPreal_server 192.168.1.127 8080 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}real_server 192.168.1.129 8080 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}}以上是slave的配置内容,master跟它差不多,需要修改的内容有state状态 和priority优先级 其它的不用动;修改完成以后,sudo /etc/init.d/keepalived restart4、还有就是在master跟slave上边需要添加虚拟服务器跟节点服务器sudo ipvsadm -A -t 192.168.1.128:8080 -s wlcsudo ipvsadm -a -t 192.168.1.128:8080 -r 192.168.1.129:8080 -g -w 1sudo ipvsadm -a -t 192.168.1.128:8080 -r 192.168.1.127:8080 -g -w 1sudo ipvsadm -A -t 192.168.1.128:80 -s wlcsudo ipvsadm -a -t 192.168.1.128:80 -r 192.168.1.129:80 -g -w 1sudo ipvsadm -a -t 192.168.1.128:80 -r 192.168.1.123:80 -g -w 1Sudo ipvsadm-save5、接下来就是在两台realserver上的配置,提供应用的 RealServer1 和 RealServer2 不需要安装任何IPVS软件,只需要设置在开机后自动运行以下脚本Sudovim dgf.sh#!/bin/bash SNS_VIP=192.168.1.128. /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 0Sudo bash dgf.sh start至此,lvs+keepalived 负载均衡就搭建好了^_^
![](http://simg.sinajs.cn/blog7style/images/blog_editor/bne_img.gif)
在1.126也就是slave上,上边的DAEMON=”backup”修改完成后,启动ipvsadm;sudo /etc/init.d/ipvsadm start2、在master跟slave上边还要开启路由转发功能,具体如下; sudo sysctl net.ipv4.ip_forward=1 sysctl -psudo sysctl -a | grep ip_forward sudo /etc/init.d/ipvsadm restart3、接下来设置master跟slave的keepalivedkeepalived.conf默认是不存在的sudo vim /etc/keepalived/keepalived.confvrrp_instanceVI_1 {state BACKUPinterface eth0virtual_router_id 51priority 50advert_int 1authentication { auth_type PASS auth_pass 1111}virtual_ipaddress { 192.168.1.128}}virtual_server 192.168.1.128 80 { delay_loop 6 lb_algo wlc lb_kind DR protocol TCPreal_server 192.168.1.127 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}real_server 192.168.1.129 80 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}}virtual_server 192.168.1.128 8080 { delay_loop 6 lb_algo wlc lb_kind DR protocol TCPreal_server 192.168.1.127 8080 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}real_server 192.168.1.129 8080 { weight 1 TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 80}}}以上是slave的配置内容,master跟它差不多,需要修改的内容有state状态 和priority优先级 其它的不用动;修改完成以后,sudo /etc/init.d/keepalived restart4、还有就是在master跟slave上边需要添加虚拟服务器跟节点服务器sudo ipvsadm -A -t 192.168.1.128:8080 -s wlcsudo ipvsadm -a -t 192.168.1.128:8080 -r 192.168.1.129:8080 -g -w 1sudo ipvsadm -a -t 192.168.1.128:8080 -r 192.168.1.127:8080 -g -w 1sudo ipvsadm -A -t 192.168.1.128:80 -s wlcsudo ipvsadm -a -t 192.168.1.128:80 -r 192.168.1.129:80 -g -w 1sudo ipvsadm -a -t 192.168.1.128:80 -r 192.168.1.123:80 -g -w 1Sudo ipvsadm-save5、接下来就是在两台realserver上的配置,提供应用的 RealServer1 和 RealServer2 不需要安装任何IPVS软件,只需要设置在开机后自动运行以下脚本Sudovim dgf.sh#!/bin/bash SNS_VIP=192.168.1.128. /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 0Sudo bash dgf.sh start至此,lvs+keepalived 负载均衡就搭建好了^_^
相关文章推荐
- HDU 5124 lines
- Learning Bluemix 微信公众号
- CDC双缓冲绘图
- Confluence 用户指南
- 正则
- prop(Property)和attr(attribute)用法区别
- iOS html中Cookie的存取
- boost 多线程
- 时事新闻之 谷歌 google 发布Tensor Flow 源代码
- java 图片获取宽高
- Cocos2d-x3.8安装、配置、打包流程
- 一位前辈工程师职业发展的忠告
- FragmentManager详解
- 重装GIT服务器时项目代码的完整重牵
- Chromium:Browser Process对Render Process的内存管理策略
- RGB与HSB之间的转换公式
- 65、插件化(美团) 转载
- AirplaceLogger源代码解析
- java implement
- JS定时执行,循环执行