From 2d6cf8d76034525db7cb2f1a0fbbff273720ac46 Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Mon, 29 Jun 2026 22:36:28 +0000 Subject: [PATCH 1/2] Document configurable HEALTH_CHECK_PATH for load balancing endpoints --- serverless/load-balancing/overview.mdx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/serverless/load-balancing/overview.mdx b/serverless/load-balancing/overview.mdx index 022b12b8e..fc594f08c 100644 --- a/serverless/load-balancing/overview.mdx +++ b/serverless/load-balancing/overview.mdx @@ -89,7 +89,9 @@ This exposes custom endpoints: `https://ENDPOINT_ID.api.runpod.ai/ping` and `htt ## Health checks -Workers must expose a `/ping` endpoint on the `PORT_HEALTH` port. The load balancer periodically checks this endpoint: +Each worker exposes a health check endpoint on the `PORT_HEALTH` port, and the load balancer polls it periodically to decide whether the worker is healthy enough to receive traffic. By default the load balancer polls `/ping`, but you can point it at any path by setting the `HEALTH_CHECK_PATH` environment variable. This is useful when you deploy a public image whose server already exposes a health check at a different path, such as a `llama.cpp` image that serves `/health`, so you don't need to build a custom image just to satisfy the health check. + +The load balancer interprets the response code from the health check endpoint as follows: | Response code | Status | |---------------|--------| @@ -101,7 +103,7 @@ Unhealthy workers are automatically removed from the routing pool. -When calculating endpoint metrics, Runpod calculates the cold start time for load balancing workers by measuring the time it takes between `/ping` first returning `204` until it first returns `200`. +When calculating endpoint metrics, Runpod calculates the cold start time for load balancing workers by measuring the time it takes between the health check endpoint first returning `204` until it first returns `200`. @@ -112,6 +114,7 @@ When calculating endpoint metrics, Runpod calculates the cold start time for loa |----------|---------|-------------| | `PORT` | `80` | Main application server port | | `PORT_HEALTH` | Same as `PORT` | Health check endpoint port | +| `HEALTH_CHECK_PATH` | `/ping` | Path the load balancer polls to check worker health | If using a custom port, add it to your endpoint's environment variables and expose it in container configuration (under **Expose HTTP Ports (Max 10)**). From 916a476f737cc4dd76e49b813db07ac31267dff8 Mon Sep 17 00:00:00 2001 From: "promptless[bot]" Date: Tue, 14 Jul 2026 14:11:41 +0000 Subject: [PATCH 2/2] docs: add Note about setting health check path in Runpod console --- serverless/load-balancing/overview.mdx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/serverless/load-balancing/overview.mdx b/serverless/load-balancing/overview.mdx index fc594f08c..1db34a7e2 100644 --- a/serverless/load-balancing/overview.mdx +++ b/serverless/load-balancing/overview.mdx @@ -91,6 +91,10 @@ This exposes custom endpoints: `https://ENDPOINT_ID.api.runpod.ai/ping` and `htt Each worker exposes a health check endpoint on the `PORT_HEALTH` port, and the load balancer polls it periodically to decide whether the worker is healthy enough to receive traffic. By default the load balancer polls `/ping`, but you can point it at any path by setting the `HEALTH_CHECK_PATH` environment variable. This is useful when you deploy a public image whose server already exposes a health check at a different path, such as a `llama.cpp` image that serves `/health`, so you don't need to build a custom image just to satisfy the health check. + +You can also set the health check path directly in the Runpod console when creating a new endpoint. The **Health check endpoint** field appears on the Configure image step. Leave it empty to use the default `/ping`. + + The load balancer interprets the response code from the health check endpoint as follows: | Response code | Status |