running i386/4.2-CURRENT from three days ago, I'm seeing a very
strange and very reproducible behavior out of hoststated. regardless
of what I set the global timeout to, either system in my table will
drop to a down status because it's exceeded the timeout by 10ms. case
in point:

[EMAIL PROTECTED] cat /etc/hoststated.conf | grep timeout
timeout 800
[EMAIL PROTECTED] cat /var/log/daemon | grep 810ms
Nov 15 13:03:49 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 80.00%
Nov 15 13:08:40 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 94.12%
Nov 15 13:09:10 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 91.89%
Nov 15 13:09:20 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state down -> down, availability 89.47%
Nov 15 13:09:30 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state down -> down, availability 87.18%
Nov 15 13:10:00 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 85.71%
Nov 15 13:10:10 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state up -> down, availability 97.67%
Nov 15 13:10:20 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state down -> down, availability 95.45%
Nov 15 13:10:30 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state down -> down, availability 93.33%
Nov 15 13:10:40 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state down -> down, availability 91.30%
Nov 15 13:10:40 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 84.78%
Nov 15 13:11:00 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state up -> down, availability 89.58%
Nov 15 13:11:10 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state down -> down, availability 87.76%
Nov 15 13:14:50 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state up -> down, availability 90.14%
Nov 15 13:16:10 nlb2-lax1 hoststated[8994]: host 72.37.xxx.160, check
http code (810ms), state up -> down, availability 89.87%
Nov 15 13:16:30 nlb2-lax1 hoststated[8994]: host 72.37.xxx.159, check
http code (810ms), state up -> down, availability 90.12%
[EMAIL PROTECTED] cat /var/log/daemon | wc -l
     261

this happens regardless of timeout setting (I had two days worth of
data with it set to 400ms, but accidentally lost it). not enough of a
code hacker to do my own investigation, but any clueful push in the
right direction would be most appreciated...

thanks,
aaron

[EMAIL PROTECTED] cat /etc/hoststated.conf
# $: hoststated.conf,v 1.2 2007/11/15 08:33:12 aglenn Exp $
#
# Macros
#
ext_addr="72.37.xxx.240"
webhost1="72.37.xxx.160"
webhost2="72.37.xxx.159"

#
# Global Options
#
# interval 10
timeout 800
# prefork 5

log all

#
# Each table will be mapped to a pf table.
#
table webhosts {
        real port http
        check http "/xxx.cgi?do=login&username=&password=" host
cp.xxx.com code 200
        host $webhost1
        host $webhost2
}

#
# Relays and protocols are used for Layer 7 loadbalancing
#
protocol http {
        protocol http
        header append "$REMOTE_ADDR" to "X-Forwarded-For"
        header append "$SERVER_ADDR:$SERVER_PORT" to "X-Forwarded-By"

        # Various TCP performance options
        tcp { nodelay, sack, socket buffer 65536, backlog 128 }

#       ssl { no sslv2, sslv3, tlsv1, ciphers HIGH }
#       ssl session cache disable
}

relay www {
        listen on $ext_addr port 80
        protocol http

        # Forward to hosts in the webhosts table using a src/dst hash
        table webhosts loadbalance
}

[EMAIL PROTECTED]

Reply via email to