summaryrefslogtreecommitdiffstats
path: root/health/guides/haproxy/haproxy_backend_status.md
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 02:57:58 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 02:57:58 +0000
commitbe1c7e50e1e8809ea56f2c9d472eccd8ffd73a97 (patch)
tree9754ff1ca740f6346cf8483ec915d4054bc5da2d /health/guides/haproxy/haproxy_backend_status.md
parentInitial commit. (diff)
downloadnetdata-be1c7e50e1e8809ea56f2c9d472eccd8ffd73a97.tar.xz
netdata-be1c7e50e1e8809ea56f2c9d472eccd8ffd73a97.zip
Adding upstream version 1.44.3.upstream/1.44.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'health/guides/haproxy/haproxy_backend_status.md')
-rw-r--r--health/guides/haproxy/haproxy_backend_status.md49
1 files changed, 49 insertions, 0 deletions
diff --git a/health/guides/haproxy/haproxy_backend_status.md b/health/guides/haproxy/haproxy_backend_status.md
new file mode 100644
index 00000000..47be09c7
--- /dev/null
+++ b/health/guides/haproxy/haproxy_backend_status.md
@@ -0,0 +1,49 @@
+### Understand the alert
+
+This alert monitors the average number of failed HAProxy backends over the last 10 seconds. If you receive this alert in a critical state, it means that one or more HAProxy backends are inaccessible or offline.
+
+HAProxy is a reverse-proxy that provides high availability, load balancing, and proxying for TCP and HTTP-based applications. A backend in HAProxy is a set of servers that receive forwarded requests and are defined in the backend section of the configuration.
+
+### Troubleshoot the alert
+
+- Check the HAProxy configuration file for errors
+
+ Making changes in the configuration file may introduce errors. Always validate the correctness of the configuration file. In most Linux distros, you can run the following check:
+
+ ```
+ haproxy -c -f /etc/haproxy/haproxy.cfg
+ ```
+
+- Check the HAProxy service for errors
+
+ 1. Use `journalctl` and inspect the log:
+
+ ```
+ journalctl -u haproxy.service --reverse
+ ```
+
+- Check the HAProxy log
+
+ 1. By default, HAProxy logs under `/var/log/haproxy.log`:
+
+ ```
+ cat /var/log/haproxy.log | grep 'emerg\|alert\|crit\|err\|warning\|notice'
+ ```
+
+ You can also search for log messages with `info` and `debug` tags.
+
+- Investigate the backend servers
+
+ 1. Verify that the backend servers are online and accepting connections.
+ 2. Check the backend server logs for any errors or issues.
+ 3. Ensure that firewall rules or security groups are not blocking traffic from HAProxy to the backend servers.
+
+- Review the HAProxy load balancing algorithm and configuration
+
+ 1. Analyze the load balancing algorithm used in the configuration to ensure it is suitable for your setup.
+ 2. Check for any misconfigurations, such as incorrect server addresses, ports, or weights.
+
+### Useful resources
+
+1. [The Four Essential Sections of an HAProxy Configuration](https://www.haproxy.com/blog/the-four-essential-sections-of-an-haproxy-configuration/)
+2. [HAProxy Explained in DigitalOcean](https://www.digitalocean.com/community/tutorials/an-introduction-to-haproxy-and-load-balancing-concepts) \ No newline at end of file