Network Load Balancers - Amazon Application Recovery Controller (ARC)

Network Load Balancers

Using zonal shift for Network Load Balancers

To use Network Load Balancers with zonal shift, you must enable ARC zonal shift integration in the Network Load Balancer attributes. Network Load Balancer supports zonal shift with cross-zone enabled or cross-zone disabled configurations. If you are using cross-zone configuration enabled Network Load Balancers, you must also ensure that the target group protocol is either TCP or TLS and the Target Group configuration is set to target_health_state.unhealthy.connection_termination.enabled = false. Refer to Routing Configuration for more information.

Important

Only cross-zone enabled Network Load Balancers with target group protocol set to either TCP or TLS, and connection termination disabled (target_health_state.unhealthy.connection_termination.enabled = false) on unhealthy targets are supported.

You can choose which resources to opt-in to use zonal shift and zonal autoshift, and when you would like to fail away from an impaired Availability Zone. Both internet-facing and internal Network Load Balancers are supported.

You can start a zonal shift for a Network Load Balancer by using the AWS CLI, the AWS console, or the Elastic Load Balancing widget. When an Application Load Balancer is the target of a Network Load Balancer, you must start the zonal shift from the Network Load Balancer. If you start the zonal shift from the Application Load Balancer, the Network Load Balancer will not stop sending traffic to the Application Load Balancer and its targets.

Console
To enable zonal shift on a load balancer (Console)
  1. Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/.

  2. On the Navigation page, under Load Balancing, choose Load Balancers.

  3. Select the Network Load Balancer name.

  4. On the Attributes tab, choose Edit.

  5. Under Availability Zone routing configuration, set ARC zonal shift integration to Enable.

  6. Choose Save.

AWS CLI
To enable zonal shift on a load balancer (AWS CLI)
  • Enter the following command:

    aws elbv2 modify-load-balancer-attributes --load-balancer-arn my-nlb-arn --attributes Key=zonal_shift.config.enabled,Value=true

For more information about triggering a zonal shift, see Starting, updating, or canceling a zonal shift.

How zonal shift works for Network Load Balancers

ARC induces a health check failure for the registered Network Load Balancer so the Network Load Balancer node in the impaired AZ is removed from the DNS when you trigger a zonal shift. The Network Load Balancer will disable the targets in the impacted zone so they stop receiving traffic, and Elastic Load Balancing treats these targets as disabled targets by zonal shift. Targets in the disabled state continue receiving health checks. When the targets are healthy and the zonal shift expires (or is cancelled), the routing to targets in the previously impaired zone resumes.

During zonal shift on Network Load Balancers with cross-zone load balancing enabled, the zonal load balancer IP addresses are removed from DNS. Existing connections to targets in the impaired Availability Zone persist until they organically close, while new connections are no longer routed to targets in the impaired Availability Zone.

For more information refer to the Zonal Shift for your Network Load Balancer topic in the Network Load Balancer User Guide.