LVS-DR负载均衡-03
来源:互联网 发布:云视通电脑版mac怎么用 编辑:程序博客网 时间:2024/06/09 22:51
LB端脚本# vim /usr/local/sbin/lvs-dr.sh#!/bin/bash#description : start LVS OF DIRECTORSERVER#GW=192.168.28.253#WEBSITE DIRECTOR VIPWEB_VIP=192.168.28.111WEB_RIP1=192.168.28.134WEB_RIP2=192.168.28.135. /etc/rc.d/init.d/functionslogger $0 called with $1case "$1" instart)# Clear all iptables rules./sbin/iptables -F# Reset iptables counters./sbin/iptables -Z# Clear all ipvsadm rules/services./sbin/ipvsadm -C#set lvs vip for dr/sbin/ipvsadm --set 30 5 60/sbin/ifconfig eth0:0 192.168.28.111 broadcast 192.168.28.111 netmask 255.255.255.255 up/sbin/route add -host 192.168.28.111 dev eth0:0/sbin/ipvsadm -A -t $WEB_VIP:80 -s rr /sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP1:80 -g -w 1/sbin/ipvsadm -a -t $WEB_VIP:80 -r $WEB_RIP2:80 -g -w 1touch /var/lock/subsys/ipvsadm >/dev/null 2>&1# set Arp/sbin/arping -I eth0 -c 5 -s $WEB_VIP $GW >/dev/null 2>&1 ;;stop)/sbin/ipvsadm -C/sbin/ipvsadm -Zifconfig eth0:0 downroute del $WEB_VIP >/dev/null 2>&1rm -rf /var/lock/subsys/ipvsadm >/dev/null 2>&1/sbin/arping -I eth0 -c 5 -s $WEB_VIP $GWecho "ipvsadm stoped";;status)if [ ! -e /var/lock/subsys/ipvsadm ];thenecho "ipvsadm is stoped"exit 1elseipvsadm -lnecho "..........ipvsadm is OK."fi;;*)echo "Usage: $0 {start|stop|status}"exit 1esacexit 0 RS端脚本 /root/rs.sh#!/bin/bash# Written by NetSeek # description: Config realserver lo and apply noarp WEB_VIP=192.168.28.111. /etc/rc.d/init.d/functionscase "$1" instart) ifconfig lo:0 $WEB_VIP netmask 255.255.255.255 broadcast $WEB_VIP /sbin/route add -host $WEB_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 /sbin/ifconfig lo:0 192.168.28.111 netmask 255.255.255.255 broadcast 192.168.28.111 up sysctl -p >/dev/null 2>&1 echo "RealServer Start OK" ;;stop) ifconfig lo:0 down route del $WEB_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" ;;status) # Status of LVS-DR real server. islothere=`/sbin/ifconfig lo:0 | grep $WEB_VIP` isrothere=`netstat -rn | grep "lo:0" | grep $web_VIP` if [ ! "$islothere" -o ! "isrothere" ];then # Either the route or the lo:0 device # not found. echo "LVS-DR real server Stopped." else echo "LVS-DR Running." fi;;*) # Invalid entry. echo "$0: Usage: $0 {start|status|stop}" exit 1;;esacexit 0