Health checks
MinIO Sidekick monitors backend server health using HTTP health check requests and automatically removes failed servers from the rotation.
Health check mechanism
Sidekick sends periodic HTTP GET requests to each backend’s health check endpoint. Backends responding with HTTP 200 status are considered healthy and receive traffic. Any other response code or connection failure marks the backend as unhealthy. Sidekick immediately stops routing requests to unhealthy backends.
Health checks run in the background at the configured interval.
The default interval is 5 seconds with a 10-second timeout per request.
These values are configurable using --health-duration and --health-timeout flags.
Health check configuration
Configure the health check path using the --health-path flag.
Sidekick appends this path to each backend URL when performing health checks.
For example, with --health-path=/health/ready and backend http://server1:9000, Sidekick requests http://server1:9000/health/ready.
Use a custom port for health checks by setting --health-port.
Sidekick sends health check requests to this port instead of the backend’s service port.
This allows health endpoints on separate ports from the main application.
Status transitions
When a healthy backend fails a health check, Sidekick marks it as unhealthy and stops routing traffic immediately. The health checker continues monitoring the backend. When the backend succeeds at a health check, Sidekick marks it healthy and resumes routing traffic.
Sidekick tracks downtime duration for each backend. This information appears in Prometheus metrics and console output. Cumulative downtime statistics help identify unreliable backends.
Error-triggered checks
Backend errors during regular request processing can trigger additional health checks. When a backend returns certain error conditions such as connection timeouts or protocol errors, Sidekick marks it unhealthy without waiting for the next scheduled health check. Transient errors like client disconnections do not trigger this behavior.