Skip To Content

Create an application load balancer using CloudFormation

Rather than create an Elastic Load Balancer in AWS Management Console, you can use an Esri sample CloudFormation template to create an application load balancer, as shown in the following diagram:

Application elastic load balancer


Certain icons in the diagram are used with permission from Amazon Web Services.

The template links the imported SSL certificate to the load balancer. You can use a single application load balancer for all components of an ArcGIS Enterprise deployment (a base ArcGIS Enterprise deployment and additional federated servers).


Prerequisites can be grouped by the items—such as files and accounts—that you must obtain and the tasks you must perform before running the CloudFormation template.

Required items

You need the following before running this template:

  • An Amazon Web Services account.

    The account must have access to basic AWS services such as CloudFormation, Amazon Elastic Compute Cloud (EC2), Amazon Virtual Private Cloud (VPC), Amazon Simple Storage Service (S3), Systems Manager, Amazon CloudWatch, Lambda, AWS Identity and Access Management (IAM), Amazon DynamoDB, Secrets Manager, AWS Certificate Manager, and Amazon Relational Database Service (RDS).

  • An SSL certificate file (in .pfx format) and corresponding password.

    The certificate must be from a certifying authority.

  • An Amazon Virtual Private Cloud (VPC) and subnets.

    You can use one of the following CloudFormation templates to create a VPC: VPC with two public subnets or VPC with two public and private subnets with a NAT Gateway.

  • The CloudFormation template.

    Open and save a local copy of the arcgis-application-loadbalancer.template.json template.


    There is a separate template to create a classic load balancer.

Required tasks

Complete the following task before running this template:

  • Upload your SSL certificate in the AWS Certificate Manager service and copy the SSL Certificate Amazon Resource Name (ARN).

    See the AWS documentation for instructions on how to upload an SSL certificate into AWS Certificate Manager.


Refer to the following tables for descriptions of the parameters used in this CloudFormation template. Tables are grouped by parameter type.

Amazon VPC Configuration

Parameter nameRequired?Parameter description



Choose a VPC ID.


All ArcGIS Enterprise components that are part of the same deployment must be deployed in the same VPC.

If you need to create a VPC, you can use one of the VPC sample templates: VPC with public subnets or VPC with public and private subnets and a NAT Gateway.

Subnet ID 1


Choose a subnet ID. The subnet ID that you select must be within the VPC you have selected above.

If you used an Esri CloudFormation template to create the VPC, you can get the subnet ID from that template's output parameters.

Subnet ID 2


Choose a second subnet ID. This must be a different subnet ID than you used for Subnet ID 1. The subnet ID that you select must be within the VPC you specified for this deployment.

If you used an Esri CloudFormation template to create the VPC, you can get the subnet ID from that template's output parameters.

Amazon Elastic Load Balancer Configuration

Parameter nameRequired?Parameter description

SSL Certificate ARN


Provide the ARN of the SSL certificate imported in AWS Certificate Manager.

It must be in the following format: aws:acm:<region>:<account-id>:certificate/<resourceid>.

Load Balancer Scheme


Choose a load balancer scheme. The default scheme is internet-facing.


When your stack is created successfully, you can see the following output parameters on the Outputs tab of the CloudFormation stack in AWS Management Console.

Output nameOutput description


The Elastic Load Balancer domain name system (DNS) name.


The Elastic Load Balancer name.

Once you have a load balancer, map it to the domain name for your deployment.