AWS target groups — Backends for load balancers

Beginner
⏱️ 10 min read
📚 Updated: Aug 2025
ELB / EC2 / ALB

What you’ll learn

In Amazon Web Services, target groups are how Elastic Load Balancing knows which backends should receive forwarded traffic: for example Amazon EC2 instances, IP addresses, or (with an Application Load Balancer) AWS Lambda functions.

A load balancer listener uses rules to choose a target group; the group defines the protocol and port on targets, health checks, and stickiness options. This guide summarises those ideas and walks through creating an instance target group in the console.

What is a target group?

A target group is a named collection of registered targets in a VPC. When a client hits your load balancer, a listener rule forwards the request to one healthy target in the chosen group. You can attach the same group to multiple rules or share an Auto Scaling group so new instances register automatically.

Key features

Target groups sit between listeners and your workloads: they define where traffic goes, how it is split, and how AWS decides what is healthy.

Traffic distribution

  • Scaling out — Spread requests across many instances or tasks so no single host becomes a bottleneck.
  • Weighted forwards — With an ALB you can split traffic across target groups (for example blue/green) using weighted forward actions on advanced rules.

Health checks

  • Probes — The load balancer periodically calls your health check path and port.
  • Unhealthy routing — Targets that fail thresholds stop receiving new connections until they recover; configure thresholds and matchers to match your app’s readiness signal.

Target types

  • Instances — Classic EC2 fleet behind an ALB or NLB.
  • IP addresses — On-premises or peered networks reachable from the VPC (where supported).
  • Lambda — ALB can invoke a Lambda target (different limits and payload rules than instance targets).
  • ECS / EKS — Container workloads often register tasks or pods through service integrations.

Integration

  • Auto Scaling — Attach a group to an ASG so scale-out registers new instances automatically.
  • Observability — Use CloudWatch metrics on the target group to see healthy host count, connection counts, and error rates.

Create a target group in the console

These steps mirror the original screenshots; labels in the AWS console can move slightly between UI revisions.

  1. Open the EC2 console and confirm you are in the correct Region.

    Amazon EC2 dashboard in the AWS console
    Amazon EC2
  2. In the left navigation, expand Load Balancing and choose Target groups, then Create target group.

    Target Groups in EC2 Load Balancing menu with Create target group
    Amazon EC2
  3. On the first page of the wizard, set basic attributes (adjust to your workload):

    1. Target type: Instances (typical for EC2 web servers).
    2. Target group name: A unique name in the account/Region.
    3. Protocol : Port: Often HTTP : 80 when the app listens on HTTP behind the load balancer.
    4. IP address type: IPv4 unless you run IPv6 end-to-end.
    5. Protocol version: HTTP1, HTTP2, or gRPC depending on the listener you will attach.
    6. Health check protocol: HTTP (or HTTPS) and a path such as / or a dedicated /health endpoint.
    7. Tags: Optional cost-allocation or owner tags.

    Choose Next.

    Target group basic configuration wizard in EC2 console
    Amazon EC2
  4. Select the EC2 instances to register, then choose Create target group. Instances appear as initial or unused until a listener forwards traffic to the group.

    Register targets step selecting EC2 instances for target group
    Amazon EC2
  5. When creation finishes, the group appears in the list with its ARN, VPC, and protocol. Health will move to healthy after checks succeed.

    Target group created successfully in EC2 console list
    Amazon EC2

What to read next

Use this target group from an Application Load Balancer listener rule, or follow Create an Application Load Balancer (step by step) for a full end-to-end console path. For diagrams of listeners versus groups, see Target groups and ALB.

Key takeaways

1

Target groups define where traffic goes and how AWS decides if a backend is usable.

2

Health checks should reflect real readiness—cheap endpoints beat probing heavy pages.

3

Listeners and rules on the load balancer reference target groups; the group alone does not expose a public hostname.

Frequently asked questions

Clients connect to the load balancer DNS name (or a Route 53 alias to it). The target group is an internal routing construct.
You can edit many health check settings in place. Tightening thresholds may briefly flip targets to unhealthy if the new criteria are harder to satisfy—plan changes during low traffic.
HTTP/2 is an application protocol version. HTTPS means HTTP over TLS. An ALB can terminate HTTPS on a listener while still forwarding HTTP/1.1 or HTTP/2 to targets, depending on your configuration.

Next: Application Load Balancer

Attach your target group to an ALB listener as a default or conditional forward action and test with the load balancer DNS name.

ALB →
Did you know?

When you deregister a target or it fails health checks, the load balancer can keep existing connections briefly while deregistration delay elapses. Tune that value so long-lived connections drain without surprising drops.

About the author

Mari Selvan M P
Mari Selvan M P 🔗

Developer, cloud engineer, and technical writer

  • Experience 12 years building web and cloud systems
  • Focus Full Stack Development, AWS, and Developer Education

I write practical tutorials so students and working developers can learn by doing—from databases and APIs to deployment on AWS.

8 people found this page helpful