歡迎您光臨本站 註冊首頁

集群問題,使用一段時間不能轉發包!!急!!

←手機掃碼閱讀     火星人 @ 2014-03-04 , reply:0

集群問題,使用一段時間不能轉發包!!急!!

問題:

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.1.20:http rr
-> w-web2:http                  Route   1      0          0         
  -> w-web1:http                  Route   1      0          0

檢測狀況:

1、# ./bin/netstats.sh (查看當前連接狀態的腳本)
LISTEN   8
ESTABLISHED      2

寫hosts 打開web2站點正常。

2、$ ./bin/netstst.sh
LAST_ACK         9
LISTEN   4
CLOSE_WAIT       1
ESTABLISHED      996
FIN_WAIT1        28
FIN_WAIT2        166
TIME_WAIT        1955

3、集群機上日誌無任何報錯。

4、a)集群主機的 腳本:

#!/bin/bash
RIP1=192.168.1.10
RIP2=192.168.1.11

VIP1=192.168.1.20
/etc/rc.d/init.d/functions
case "$1" in
start)
echo " start LVS of DirectorServer"

# set the Virtual IP Address and sysctl parameter
#/sbin/ifconfig eth0:0 $VIP1 broadcast $VIP1 netmask 255.255.255.255 up


echo "0" >/proc/sys/net/ipv4/ip_forward

#Clear IPVS table

/sbin/ipvsadm -C

#set LVS
#Web Apache

/sbin/ipvsadm -A -t $VIP1:80 -s rr
/sbin/ipvsadm -a -t $VIP1:80 -r $RIP1:80 -g -w 1
/sbin/ipvsadm -a -t $VIP1:80 -r $RIP2:80 -g -w 1


#Run LVS

/sbin/ipvsadm
;;
stop)
echo "close LVS Directorserver"

#cho "0" >/proc/sys/net/ipv4/ip_forward
/sbin/ipvsadm -C

#/sbin/ifconfig eth0:0 down
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac


b)web1/web2  上的集群客戶端腳本:
#!/bin/bash
# lvs client script

VIP=192.168.1.20
VNETCARD=eth0:0

IFCONFIG=/sbin/ifconfig
ROUTE=/sbin/route
SYSCTL=/sbin/sysctl

main ()
{
        if [ $#  -ne 1 ]; then
                usage $0
        fi

        checkFile $IFCONFIG
        checkFile $ROUTE
        checkFile $SYSCTL

        if [ $(checkVNetcard $VNETCARD) -ne 0 ]; then
                $IFCONFIG $VNETCARD down
        fi

        case $1 in
                start)
                        ipvs_client_start
                        ;;
                stop)
                        ipvs_client_stop
                        ;;
                restart)
                        ipvs_client_stop
                        ipvs_client_start
                        ;;
                *)
                        usage $0
                        ;;
        esac
}

function ipvs_client_start ()
{
        $IFCONFIG $VNETCARD $VIP broadcast $VIP netmask 255.255.255.255 up
        $ROUTE add -host $VIP dev $VNETCARD
        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
}

function ipvs_client_stop ()
{
        $IFCONFIG $VNETCARD down
        $ROUTE del $VIP
        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
        $SYSCTL -p
}

function checkFile ()
{
        if [ ! -f $1 ]; then
                echo "Can't find "$1
                exit 1
        fi
}

function checkVNetcard ()
{
        $IFCONFIG |grep "$1"|wc -l
}

function usage ()
{
        local script_name
        script_name=$1
        echo "Usgae : $script_name [ start | stop | restart ]"
        echo ""
        exit 1
}

main $*


集群機運行一段時間后總是癥狀那樣,不能轉發包。但是 只有web1 能接受包,似乎是直接接收到的,我把集群機關了還是能正常。web2 接收不到包了! 只有重新啟動集群機才能正常轉發包。是什麼問題呢?

高手幫忙看下,多謝 指教!!

[ 本帖最後由 gron 於 2009-7-31 15:21 編輯 ]
《解決方案》

回復 #1 gron 的帖子

真實伺服器配置的配置都是採用的腳本的方式么?
真實伺服器上的配置信息在出現問題是檢查信息是否存在?
調度服務的信息也要做對應的檢查
《解決方案》

回復 #2 kns1024wh 的帖子

真實伺服器的配置都是按一樓的腳本啟動的。
真實伺服器配置信息出現問題的時候都在,即虛擬IP都在啟動狀態。還有集群伺服器上的也是啟動狀態。
調度方面我檢查了,就是發現轉發包和鏈接情況都是 一樓說的一樣,空的。也無報錯情況。您看還有哪些方面考慮問題?
謝謝 朋友幫助!!

[火星人 ] 集群問題,使用一段時間不能轉發包!!急!!已經有468次圍觀

http://coctec.com/docs/service/show-post-6238.html