HAProxy backend server DOWN
-
I have a single frontend server configured to route traffic to multiple backends based on the subdomain. I have added all of these and they were UP and working fine. Until they weren't.... I have deleted a backend server when receiving an error, recreated it IDENTICALLY, and poof it works again. So I am playing whack-a-mole with deleting and recreating things.
I have 8 different backend servers. Half work, half don't. All configs are seemingly the same.
I have tried to update the package, but the pfsense package manager says I am on the latest version.
NOTICE] (69864) : haproxy version is 2.7.8-58c657f
[NOTICE] (69864) : path to executable is /usr/local/sbin/haproxy
[WARNING] (69864) : config : Server lidarr-backend_ipvANY/lidarr is DOWN, changed from server-state after a reload. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[WARNING] (69864) : config : Server sonarr-backend_ipvANY/sonarr is DOWN, changed from server-state after a reload. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[WARNING] (69864) : config : Server radarr-backend_ipvANY/radarr is DOWN, changed from server-state after a reload. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.
[WARNING] (69864) : config : Server prowlarr-backend_ipvANY/prowlarr is DOWN, changed from server-state after a reload. 0 active and 0 backup servers left. 0 sessions active, 0 requeued, 0 remaining in queue.Does anyone have any insight into this?
-
@jdenny
The backend state is determined by the health check. So ensure that your health check works with your backend server. Use basic if you're unsure. -
@viragomann So I changed all of the "Checks" from HTTP to Basic. Now everything is working. However, yesterday the HTTP check worked fine with everything. What would the underlying reason be for this?
Regardless, thanks for the help... Looks like it was an easy fix (if it holds).
-
@jdenny
If you use the HTTP check, you will need to configure it properly. You can specify the method, URL and also the protocol version.Note that HAproxy just request the server by its IP and port as stated in the backend setting. It doesn't send a host header to the backend. If your server requires this, the check will fail.
Also it just requests the server root / if you didn't state any other URL.So ensure, that your server is responding to such requests.