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]