Features

Sticky Sessions

  • Applies to target group.

  • Allows a user to be redirected to same EC2 instance, behind the load balancer.

  • Supported by CLB, ALB and NLB (NLB does not use cookies).

  • It uses a cookie with an expiration date, to achieve this functionality.

  • Primarily used for session maintenance.

  • There are two types of cookies

    • Application based cookie

      • Custom cookie

        • Generated by application.

        • Cookie name must be specified for each target group.

        • Cookie name must not be AWSALBAPP, AWSALBTG or AWSALB as these are reserved names for ELB.

      • Application cookie

        • Cookie name is AWSALBAPP.

        • Generated by load balancer, so cannot specify cookie duration via application

    • Duration based cookie

      • Cookie name : AWSALB for ALB and AWSELB for CLB.

      • Generated by load balancer, so cannot specify cookie expiration via application.

  • Duration of cookie is between 1 second and 7 days.

Cross-Zone Load balancing

  • This feature allows traffic to be evenly distributed across all AZ registered instances, and not on the node of elastic load balancer.

Cross-Zone load balancing enabled
Cross-Zone load balancing disabled

enabled

disabled

  • Feature status based on ELB type

Feature
ALB
NLB
GWLB
CLB

Cross-Zone load balancing default config

Enabled by default, Cannot be disabled at Elastic load balancer level. Can be disabled at target group level

Disabled by default

Disabled by default

Disabled by default

Charges for inter AZ transfer

No charges

Pay as you use

Pay as you use

No charges

Connection Draining

  • Connection Draining is the term used for CLB. AKA Deregistration-Delay for ALB/NLB.

  • Time to complete inflight-request, while instance is marked unhealthy or deregistered.

  • Once an EC2 instance is in deregistering stage, ELB will stop sending request to deregistered instance/s.

  • By default 300 seconds is the connection draining duration, but can be configured between 1 to 3600 seconds.

  • It can be disabled by setting the parameter to 0. Note that lower the duration value, the sooner the instance will be taken down.

Last updated