Hi,
I'm using relayd as inbound loadbalancer for about 50 websites and
webservices, https and http. All worked fine in the past few years.
I'm on OpenBSD 4.7 Generic. Currently I've configured 59 redirects.
They are working as expected but as soon as I add another redirect in
the config the last redirect stays down forever and no checks are made
for the table (verified via tcpdump on interface).
# relayd show sum
1 redirect XXXXXXXXXXXXX down
1 table XXXXXXXXXXXXX:8082 empty
1 host 172.16.17.193 0.00% down
2 host 172.16.17.194 0.00% down
2 redirect XXXXXXXXXXXXX active
2 table XXXXXXXXXXXXX:80 active (2 hosts)
3 host 82.82.97.209 100.00% up
4 host 82.82.97.210 100.00% up
3 redirect XXXXXXXXXXXXX active
3 table XXXXXXXXXXXXX:80 active (2 hosts)
5 host 82.82.97.209 96.15% up
6 host 82.82.97.210 100.00% up
4 redirect XXXXXXXXXXXXX active
4 table XXXXXXXXXXXXX:8001 active (2 hosts)
7 host 82.82.97.209 92.31% up
8 host 82.82.97.210 92.31% up
....
57 redirect XXXXXXXXXXXXX active
57 table XXXXXXXXXXXXX:80
active (2 hosts)
113 host 172.16.12.148 92.31% up
114 host 172.16.12.149 92.31% up
58 redirect XXXXXXXXXXXXX active
58 table XXXXXXXXXXXXX:8443
active (2 hosts)
115 host 172.16.12.148 92.31% up
116 host 172.16.12.149 92.31% up
59 redirect webhosting_http active
59 table webhosting:80 active (2 hosts)
117 host 172.16.12.3 96.15% up
118 host 172.16.12.4 100.00% up
60 redirect webhosting_https down
<<< stays down for ever....
60 table webhosting:443 empty
119 host 172.16.12.3 0.00% down
120 host 172.16.12.4 0.00% down
When I remove any redirect in the config (to reduce number of total
configured redirects) and "relayctl reload" the last service gets
checked immediately (verified via tcpdump) and is up:
...
58 redirect webhosting_http active
58 table webhosting:80 active (2 hosts)
115 host 172.16.12.3 50.00% up
116 host 172.16.12.4 100.00% up
59 redirect webhosting_https down
59 table webhosting:443 active (2 hosts)
117 host 172.16.12.3 50.00% up
118 host 172.16.12.4 50.00% up
my config looks like this:
log all
interval 10
timeout 1000
...
addr_LBL_hosting="88.82.97.14"
...
host_SAM="172.16.12.3"
host_DEAN="172.16.12.4"
...
table <webhosting> { $host_SAM, $host_DEAN }
...
redirect webhosting_http {
listen on $addr_LBL_hosting port http
tag RELAYD
sticky-address
forward to <webhosting> check http "/" code 200
}
redirect webhosting_https {
listen on $addr_LBL_hosting port https
tag RELAYD
sticky-address
forward to <webhosting> check https "/" code 200
}
....
any ideas? I really looks like a hard-coded limit as I cannot find any
limit setting in the man page... Or is it a bug?
Thanks a lot
best regards
Marco