TL;DR: Stack-aware health checks lifted client query success from near zero to 99.9% during scaling, restarts, and rollouts by checking readiness across Kubernetes, Docker, and systemd instead of relying on basic process liveness, according to Pomerium. The deeper lesson is that availability controls fail when they measure uptime but not operational readiness.
Editorial analysis by NHI Mgmt Group, based on content published by Pomerium: “Designing Smarter Health Checks for Pomerium”.
Key questions
Q: What breaks when a zero trust proxy is marked healthy before it is ready to serve traffic?
A: The proxy can enter rotation while authentication, authorization, or backend state is still incomplete, so users see failed requests even though orchestration reports success.
Q: Why do readiness checks matter more than liveness checks for proxy availability?
A: Liveness only shows that a process is still running, which is not enough for a stateful access gateway.
Q: How can security teams tell whether a proxy health model is too shallow?
A: If the health signal only tracks process survival, container status, or a single endpoint, it is probably too shallow for a zero trust gateway.
Practitioner guidance
- Define readiness by request-path eligibility Base health on whether the proxy can actually authenticate, authorize, and route traffic successfully, not whether the process is merely running.
- Separate startup, readiness, and liveness Use different checks for initialization, traffic admission, and crash detection so the orchestrator does not conflate recovery with availability.
- Gate traffic on synchronized state Prevent new instances from joining the active pool until policy, configuration, and backend state have reached a coherent operating point.
Bottom line: Basic health checks can report a proxy as alive while its access path is still not ready, which creates avoidable request failures during scale events and rollouts.
Explore further
View Full Forum → | NHI Foundation Course → | Our Services → | Read the full analysis →
Readiness is a governance control, not just an uptime check: zero trust proxies expose a control assumption that many teams miss, which is that a service can be considered available once the process exists. That assumption breaks when authentication, authorization, and state synchronization are not yet aligned. The practitioner takeaway is to govern service entry into traffic based on functional readiness, not container presence.
A question worth separating out:
Q: What should teams review before using health checks to automate self-healing?
A: They should review whether the check measures the exact state needed to admit traffic, not a proxy for it. Self-healing is only safe when the signal maps to the service’s real operating boundary. Otherwise the automation can restart or promote instances that are still unsuitable for production use.
👉 Read our full editorial: Smarter health checks expose the readiness gap in zero trust proxies