06 / 20

How to create an application load balancer

Create an Application Load Balancer by specifying a name, network (VPC and subnets), listeners, and a target group (which defines health check settings and registered targets) using the AWS Management Console, CLI, or API [citation:5].

You can create an Application Load Balancer using the AWS Management Console, CLI, or API [citation:5]. The basic steps include:

  1. 1
    1. Provide a unique name for the load balancer and choose its scheme (internet-facing or internal).
  2. 2
    1. Select a VPC and at least two Availability Zones (and corresponding subnets) for high availability.
  3. 3
    1. Configure one or more listeners (e.g., an HTTP listener on port 80 or an HTTPS listener on port 443).
  4. 4
    1. Create or select a target group, which defines where traffic will be routed. This includes configuring health check settings (e.g., ping path and timeout) [citation:5].
  5. 5
    1. Register targets (e.g., EC2 instances, IP addresses) to the target group.
Difficulty: 5/10
Topics: ALB provisioning, target groups & routing, health checks

Scenario Questions

0-2 years experience
  1. 1

    We need to expose a simple web service running on EC2 instances behind a load balancer. Walk me through the steps you’d take in the AWS console to create an Application Load Balancer for this.

  2. 2

    If you forget to register your EC2 instances with the target group, what will happen when you send traffic to the ALB?

2-5 years experience
  1. 1

    Our team is adding a new microservice and wants to use path‑based routing on an existing ALB. How would you configure the listener rules and target groups, and what trade‑offs would you consider?

  2. 2

    During a deployment we noticed that health checks started failing after we changed the health check path. How would you troubleshoot the issue and what could have caused it?

5-8 years experience
  1. 1

    We expect traffic spikes up to 10 000 requests per second and need to ensure the ALB scales without dropping connections. What configuration knobs and architectural choices would you adjust, and how would you validate they work?

  2. 2

    Our application uses both HTTP and WebSocket connections. How would you design the ALB setup to support both protocols while maintaining session stickiness and low latency?

8+ years experience
  1. 1

    The company is migrating from a monolithic architecture on EC2 with a classic ELB to a microservices platform using multiple ALBs across regions. What high‑level migration plan would you propose, and how would you handle DNS, cross‑region failover, and shared security policies?

  2. 2

    We have legacy services that require TLS termination at the load balancer, but compliance requires end‑to‑end encryption for certain APIs. How would you architect the ALB and backend to satisfy both requirements while keeping operational overhead manageable?

Follow-up Questions

  • What metrics would you watch to know the ALB is healthy?
  • How does cross‑zone load balancing affect cost and latency?
  • If you needed to enforce client‑IP based access, where would you implement that?