2
votes

Hello I have a haproxy LB pointing to a single backend server with a minimal traffic but usually we received many alerts because haproxy checks timeout.

This is the configuration.

server XXX.example.com:443 check resolvers dns inter 30s

is that any option to remove the check part from the configuration?

Error

Server XXXXXX is DOWN, reason: Layer4 timeout, check duration: 5002ms. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.

 defaults
  log         global
  mode        tcp
  option      tcplog
  option      dontlognull
  option      dontlog-normal
  retries     3
  option      redispatch
  maxconn 100000
  timeout connect 5000
  timeout client  50000
  timeout server  50000
  timeout check   10000

listen default_listener
  bind 127.0.0.1:64000

  listen cw-ui
    bind 0.0.0.0:443
    balance leastconn
    mode    tcp
    maxconn 100000
    option  tcplog
    timeout client 300000
    timeout server 300000
    server www.example.com:443 check resolvers dns inter 30s

resolvers dns
  nameserver dns0 x.x.x.x:53
  nameserver dns1 x.x.x.x:53
  resolve_retries       3
  timeout retry         1000
  hold valid            10000
1
It would be awesome if someone experienced enough, or even an HA Proxy developer, could come here with a solid explanation of such event, which obviously (I guess), has to do with network issues, but a more specific and rich explanation, would be great. And IMHO opinion, if alerts are happening due to such event, better not ignore them. Alerts are not casual things. A limit is set, and some condition is exceeding it. Why? It is good to know. Is the limit too strict? That's another story. - ivanleoncz

1 Answers

1
votes

Yes, you can remove health checks on the server by removing the check option on the server line, e.g.

server www.example.com:443 resolvers dns inter 30s