03 / 20

What are health checks?

Difficulty: 5/10
ELB health checks, Auto Scaling, Availability

Health checks are a mechanism used by load balancers to monitor the status of registered targets, such as EC2 instances, ensuring that traffic is only routed to healthy targets [citation:6][citation:10].

Health checks are a critical feature of Elastic Load Balancing (ELB) that monitor the health of your registered targets (e.g., EC2 instances). The load balancer sends periodic requests to each target on a configured cadence. If a target fails to respond within a specified timeout or responds with an error code, the load balancer marks it as unhealthy and stops routing traffic to it. Once the target becomes healthy again, the load balancer resumes routing traffic to it [citation:6][citation:10].

Scenario Questions

0-2 years experience

  1. 1How would you set up a basic HTTP health check for an EC2 instance behind an Elastic Load Balancer?
  2. 2If the health‑check endpoint starts returning 500 errors, what immediate steps would you take?
  3. 3You notice an instance is marked unhealthy in the console; walk me through how you’d investigate the root cause.

2-5 years experience

  1. 1Our Auto Scaling group isn’t terminating and replacing unhealthy instances. How would you debug the health‑check configuration?
  2. 2Explain the trade‑offs between using TCP versus HTTP health checks for a web service running on EC2.
  3. 3A new /health endpoint sometimes hangs for several seconds. How would you adjust the health‑check settings to avoid false negatives?

5-8 years experience

  1. 1Design a health‑check strategy for a set of microservices deployed on EC2 across multiple AZs that supports rolling deployments with zero downtime.
  2. 2At large scale, a misbehaving health‑check endpoint can flood the load balancer. How would you mitigate that impact?
  3. 3If you need to meet a 99.99% availability SLA for a critical service, what changes would you make to the health‑check configuration?

8+ years experience

  1. 1We’re migrating a legacy monolith on EC2 to containers but must keep existing health‑check contracts for downstream services. How would you orchestrate the transition without breaking other teams’ monitoring pipelines?
  2. 2Health‑check definitions have diverged across product teams. Propose a governance model that standardizes contracts while preserving team autonomy.
  3. 3If you had to redesign the health‑check infrastructure to support multi‑cloud failover, what architectural changes would you introduce and why?

Follow-up Questions

  • What values would you choose for timeout and interval, and why?
  • Which CloudWatch metrics would you watch to confirm health checks are behaving as expected?
  • How would you communicate a change to health‑check settings across multiple teams?
Share

Share via WhatsApp, X, Facebook, LinkedIn or copy link. Open Graph preview enabled.