Configuration to create an Application Load Balancer (ALB), target groups and listeners in an AWS VPC to load balance incoming traffic to targets such as EC2 instances or Lambda functions. The ALB also includes health checks to ensure the state of the targets before forwarding traffic.

This template includes settings for configuring: 

  • Load balancer Name and Schema (Internet vs Internal)
  • Network settings such as Security Groups and Subnets
  • Deletion Protection to prevent the load balancer from being deleted accidentally 
  • Enabling S3 Access Logging to log requests processed by the load balancer
  • Target Groups to configure the destination for the load balancer:
    • Target Type can be an EC2 instance, IP address or a Lambda function and Target Id
    • ProtocolProtocol Version, and Port
    • If HTTPS is selected, then SSL policy and Certifiacte ARN must be provided
    • Health Check settings such as path, interval, etc.
  • Listeners to specify the ports the load balancer accepts connections on:
    • Protocol and Port number
    • Actions such as Forward, Fixed-Response or Redirect
  • Load Balancer Attributes such as Idle timeout, Desync mitigation mode, WAF fail open, Client Port Preservation, and more  
Items
1
Size
0.9 KB
Missing Parameters
AWSTemplateFormatVersion: '2010-09-09'
Description: ''
Resources:
  ApplicationLoadBalancer:
    Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
    Properties:
      Type: application
      Scheme: internet-facing
      IpAddressType: ipv4
      LoadBalancerAttributes:
        - Key: deletion_protection.enabled
          Value: false
        - Key: access_logs.s3.enabled
          Value: false
        - Key: idle_timeout.timeout_seconds
          Value: 60
        - Key: routing.http.desync_mitigation_mode
          Value: defensive
        - Key: routing.http.drop_invalid_header_fields.enabled
          Value: false
        - Key: routing.http.x_amzn_tls_version_and_cipher_suite.enabled
          Value: false
        - Key: routing.http.xff_client_port.enabled
          Value: false
        - Key: routing.http2.enabled
          Value: true
        - Key: waf.fail_open.enabled
          Value: false
Parameters: {}
Metadata: {}
Conditions: {}

Actions



Customize Template

Load Balancer

Target Groups*

Listeners*

* Required field