這是一個測試文檔,測一下文檔的代碼情況
#!/bin/bash # VIP=10.12.27.100 RIP=("10.12.27.104" "10.12.27.105" "10.12.27.121") WEIGHT=("1" "1" "2") PORT=80 STATUS=("1" "1" "1") eel(){ ipvsadm -d -t $VIP:$PORT -r $1 [ $? -eq 0 ] && return 0 || return 1 } add(){ ipvsadm -a -t $VIP:$PORT -r $1 -w $2 [ $? -eq 0 ] && return 0 || return 1 } while :;do let N=0 for I in ${RIP[*]};do curl --connect-timeout 1 http://$I if [ $? -ne 0 ];
then if [ ${STATUS[$N]} -eq 1 ];then del $I [ $? -eq 0 ] && STATUS[$N]=0 fi else if [ ${STATUS[$N]} -eq 0 ];then add $I ${WEIGHT[$N]} [ $? -eq 0 ] && STATUS[$N]=1 fi fi let N++ done sleep 5; done