Skip To Content

Create a classic load balancer for an ArcGIS Enterprise deployment using CloudFormation

Rather than create an Elastic Load Balancer in AWS Management Console, you can use the arcgis-classic-load balancer.template.json Esri Amazon Web Services (AWS) CloudFormation template to create a classic load balancer, as shown in the following diagram:

Classic elastic load balancer

License:

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 classic load balancer per site. This means you must have a different load balancer for the base ArcGIS Enterprise deployment and for each ArcGIS Server site.

Prerequisites

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 arcgis-classic-loadbalancer.template.json CloudFormation template.

    Tip:

    There is a separate template to create an application 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.

Parameters

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

VPC ID

Required

Choose a VPC ID.

Note:

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

Required

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

Required

Choose a second subnet ID. This must be a different subnet ID than you used for the Subnet ID 1 parameter. 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

Required

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

Optional

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

Outputs

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

ELBDNSName

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

ELBName

The Elastic Load Balancer name.

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