Hi all,
I'm running Ultramonkey - heartbeat and ldirectord on RHEL3 boxes.
It looks to me like the 'checkinterval' parameter in an ldirectord
config file is global... can anyone confirm or deny this? Can this be
declared per virtual service?
I'm asking because I have an HTTPS virtual service whose real servers
seem to be a bit slow to respond to service checks sometimes (but they
do eventually respond). Because it doesn't seem to make sense to have
the 'negotiatetimeout' parameter (which is a per-virtual-service
parameter) greater than the 'checkinterval' parameter, I've had to raise
the 'checkinterval' parameter to 60 seconds to match the 60 second
'negotiatetimeout' parameter for the HTTPS virtual service in question.
This means that every real server for every virtual service I have only
gets checked every 60 seconds, which is not desirable for me - before
this HTTPS service came along, we had 'checkinterval' set at 10 seconds.
Maybe my thinking is wrong here... for example, if the
'negotiatetimeout' parameter for a virtual service is, say, 60 seconds,
but the 'checkinterval' is, say, 20 seconds, I'm assuming that it will
be a bad thing if another real server check starts (i.e. 'checkinterval'
seconds passes) before the last real server check has finished or timed
out (i.e. 'negotiatetimeout' seconds have not yet passed, and ldirectord
still thinks it's doing the first real server check when it starts the
next real server check).
If 'checkinterval' is indeed a global parameter, I should probably just
run two instances of ldirectord through heartbeat, one for the
troublesome HTTPS service (with a long 'checkinterval') and one for
everything else (with a short 'checkinterval').
Thanks,
Guy.
--
Guy Waugh
Unix System Administrator
IT&TS, Southern Cross University
Lismore, NSW, Australia
Email: gwaugh@xxxxxxxxxx
Ph.: +61 2 6620 3196
Fax: +61 2 6620 3033
|