Ugly Bash 脚本一枚,用于配置LVS的DR模型(VIP/RIP/DIP同网段)。
Zero价值,Just 为了实验的时候少敲键盘 :)。
1.配置RealServer
#!/bin/bash # #Configure real server VIP="192.168.1.200" #config arp stuff echo -e "E[1;36mStart configure ARP E[0m" echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce 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/ip_forward sleep 1 echo -e "E[1;36mDone. E[0m" #config VIP echo -e "E[1;36mStart configure VIP. E[0m" ifconfig lo:0 down > /dev/null 2>&1 route del -host $VIP > /dev/null 2>&1 ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP up route add -host $VIP dev lo:0 sleep 1 echo -e "E[1;36mDone. E[0m" #stop iptables echo -e "E[1;36mStop iptables.E[0m" service iptables stop sleep 1 echo -e "E[1;36mDone.E[0m" #start httpd echo -e "E[1;36mStart httpd.E[0m" service httpd stop > /dev/null 2>&1 service httpd start > /dev/null 2>&1 sleep 1 echo -e "E[1;36mDone.E[0m"
2.配置Director
#!/bin/bash # #Configure Director VIP="192.168.1.200" RIPArray=("192.168.1.201" "192.168.1.202") PORT=80 IFACE="eth0:0" ifconfig $IFACE down > /dev/null 2>&1 route del -host $VIP > /dev/null 2>&1 service iptables stop > /dev/null 2>&1 ipconfig $IFACE $VIP netmask 255.255.255.255 broadcast $VIP up route add -host $VIP dev $IFACE echo -e "E[1;36mConfigure DirectorE[0m" ipvsadm -A -t $VIP:$PORT -s rr for i in `seq 0 $((${#RIPArray[*]}-1))`;do [ -n ${RIPArray[$i]} ] && ipvsadm -a -t $VIP:$PORT -r ${RIPArray[$i]}:$PORT -g sleep 1 done echo 1 > /proc/sys/net/ipv4/ip_forward echo -e "E[1;36mDone.E[0m"
PS:有copy需求的小伙伴请自行修改:)。