hello,

perhaps it's something that i'm doing wrong here, or a difference
in the way that relayd works compared to hoststated. but here
goes.. i'm attempting to get relayd configured to replace my existing
hoststated setup, doing layer 7 load balancing of web servers.

what's happening is with every http check done, relayd returns a
connect failure. in doing a tcpdump i see the session is
brought up by relayd to the destination servers, the server responds
with a syn/ack, and then a rst is sent by the system running relayd.

...

i have a similar hoststated configuration running on the very same
system, load balancing the very same hosts. it operates as expected,
with the hosts being seen as up and available.

i have attached relayd debug log output, my relayd configuration
file, as well as hoststated debug and the hoststated config.

could someone perhaps shed some light on what i'm doing wrong, if
anything? perhaps a bug in the http check/tcp check code?

if i could be cc'd on any replies, i'd appreciate it. i'm not
currently subscribed to [EMAIL PROTECTED]

cheers,

-ben
startup
init_filter: filter init done
tcp_write: connect timed out
relay_privinit: adding relay www
init_tables: created 0 tables
hce_notify_done: aa.bb.cc.209 (tcp_write: connect failed)
protocol 0: name http
host aa.bb.cc.209, check http code (3ms), state unknown -> down, availability 
0.00%
        flags: 0x0004
tcp_write: connect timed out
        type: hce_notify_done: aa.bb.cc.211 (tcp_write: connect failed)
http
host aa.bb.cc.211, check http code (4ms), state unknown -> down, availability 
0.00%
                pfe_dispatch_imsg: state -1 for host 3 aa.bb.cc.209
request pfe_dispatch_imsg: state -1 for host 2 aa.bb.cc.211
append "$SERVER_ADDR:$SERVER_PORT" to "X-Forwarded-By"
                request append "$REMOTE_ADDR" to "X-Forwarded-For"
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
adding 2 hosts from table webhosts:80
adding 2 hosts from table webhosts:80
adding 2 hosts from table webhosts:80
adding 2 hosts from table webhosts:80
adding 2 hosts from table webhosts:80
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
tcp_write: connect timed out
hce_notify_done: aa.bb.cc.209 (tcp_write: connect failed)
tcp_write: connect timed out
hce_notify_done: aa.bb.cc.211 (tcp_write: connect failed)
^Chost check engine exiting
kill_tables: deleted 0 tables
flush_rulesets: flushed rules
pf update engine exiting
socket relay engine exiting
socket relay engine exiting
terminating
[EMAIL PROTECTED] socket relay engine exiting
socket relay engine exiting
socket relay engine exiting
startup
decremented the demote state of group 'carp'
init_filter: filter init done
relay_privinit: adding relay www
init_tables: created 0 tables
protocol 0: name http
        flags: 0x0004
        type: http
                request append "$SERVER_ADDR:$SERVER_PORT" to "X-Forwarded-By"
                request append "$REMOTE_ADDR" to "X-Forwarded-For"
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
relay_init: max open files 1024
adding 2 hosts from table http_hosts
adding 2 hosts from table http_hosts
adding 2 hosts from table http_hosts
adding 2 hosts from table http_hosts
adding 2 hosts from table http_hosts
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
relay_launch: running relay www
hce_notify_done: aa.bb.cc.209 (tcp_read_buf: check succeeded)
host aa.bb.cc.209, check http code (115ms), state unknown -> up, availability 
100.00%
pfe_dispatch_imsg: state 1 for host 1 aa.bb.cc.209
hce_notify_done: aa.bb.cc.209 (tcp_read_buf: check succeeded)
host aa.bb.cc.209, check http code (116ms), state unknown -> up, availability 
100.00%
pfe_dispatch_imsg: state 1 for host 0 aa.bb.cc.209
hce_notify_done: aa.bb.cc.209 (tcp_read_buf: check succeeded)
hce_notify_done: aa.bb.cc.209 (tcp_read_buf: check succeeded)
^Chost check engine exiting
kill_tables: deleted 0 tables
flush_rulesets: flushed rules
pf update engine exiting
socket relay engine exiting
socket relay engine exiting
socket relay engine exiting
socket relay engine exiting
incremented the demote state of group 'carp'
terminating
socket relay engine exiting
ext_addr="10.10.10.52"
webhost1="aa.bb.cc.209"
webhost2="aa.bb.cc.209"
timeout 800
prefork 5
log updates
demote carp
table http_hosts {
        real port http
        check http "/" host www.mysite.com code 200
        host $webhost1 retry 2
        host $webhost2 retry 2
}
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 }
}
relay www {
        listen on $ext_addr port http
        protocol http
        table http_hosts loadbalance
}
ext_addr="10.10.10.52"
webhost1="aa.bb.cc.209"
webhost2="aa.bb.cc.211"
timeout 800
table <webhosts> { $webhost1 $webhost2 }
http protocol http {
        header append "$REMOTE_ADDR" to "X-Forwarded-For"
        header append "$SERVER_ADDR:$SERVER_PORT" to "X-Forwarded-By"
        # header change "Connection" to "close"
        # Various TCP performance options
        tcp { nodelay, sack, socket buffer 65536, backlog 128 }
}
relay www {
        listen on $ext_addr port 80
        protocol http
        # Forward to hosts in the webhosts table using a src/dst hash
        forward to <webhosts> port http mode loadbalance \
                check http "/" host www.mysite.com code 200
}

Reply via email to