Before you deploy ArcGIS Enterprise on Amazon Web Services (AWS), you must have a fully qualified domain name (FQDN) for each component in your architecture. A fully qualified domain name identifies a machine—in this case, Amazon Elastic Compute Cloud (EC2) instances—within the internet. It is composed of a host name and a domain name and takes a form such as gis.mydomain.com. A fully qualified domain name refers to either an IP address or another fully qualified domain name. The various parts of ArcGIS Enterprise require fully qualified domain names to communicate with each other and for your users to communicate with ArcGIS Enterprise.
Your IT department needs to create the fully qualified domain name (or names) for you. They will map it to either an Amazon Elastic IP address or an Amazon Elastic Load Balancer, depending on the type of deployment you need to create. Domain names must be unique; for example, you cannot use the same domain name for the Elastic IP of your single-machine ArcGIS Enterprise portal and the classic load balancers you create for its federated servers.
ArcGIS Enterprise deployment on a single EC2 instance
Before you create a single-machine base ArcGIS Enterprise deployment using an Esri deployment tool, create an Elastic IP address in your AWS account using the AWS Management Console.
In summary, you need to do the following:
- Create the Elastic IP address in the Amazon region where you will create your deployment.
- Click the Copy EIP to clipboard button to copy the Elastic IP address to your clipboard. Paste the IP address into a text file.
- Ask your IT staff to create a fully qualified domain name for the EC2 instance you'll use for the ArcGIS Enterprise deployment (for example, gis.your-organization.com).
- Map the fully qualified domain name to the Elastic IP address.
Now you can proceed with creating your single-machine base ArcGIS Enterprise deployment, making sure to use the Elastic IP ID that you noted earlier.
ArcGIS Server sites and highly available ArcGIS Enterprise portals
When your ArcGIS Enterprise deployment includes multiple EC2 instances—such as when you add federated servers to your ArcGIS Enterprise deployment or you deploy a highly available portal—you need a load balancer to facilitate incoming communication with all instances. Stand-alone ArcGIS Server sites on AWS also use load balancers for incoming communication, as these sites can contain multiple instances.
Therefore, you must create a load balancer before you create each of the following on AWS:
- A highly available ArcGIS Enterprise portal
- A federated server site
- A stand-alone ArcGIS Server site
If you use a classic load balancer, each of these requires its own load balancer with a unique name. Create the load balancers in the same Amazon region where you will create your deployment. For each load balancer, ask your IT staff to create a CNAME Domain Name System (DNS) mapping to the load balancer's name. You can use an AWS CloudFormation template provided by Esri to create a classic load balancer.
Alternatively, you can use a single application load balancer to manage communication with the ArcGIS Enterprise components in a single deployment. Use the CloudFormation template provided by Esri to create an application load balancer.
The load balancers you use with ArcGIS Server sites and ArcGIS Enterprise portals on AWS must meet specific configuration requirements. To ensure your load balancers meet these requirements, create them using either of the methods described in the next two sections. Which method you use depends on how quickly your IT staff can complete the DNS mapping. If it will take more than a day for them to complete the mapping, you may want to use Esri AWS CloudFormation templates to create your Amazon Virtual Private Cloud (VPC), subnets, and load balancers before you create a deployment.
Use Esri AWS CloudFormation templates
Esri provides sample CloudFormation templates to create a VPC and templates to create elastic load balancers for use with an ArcGIS Enterprise portal or ArcGIS Server site.
Use the following links to access descriptions of each template and links to view them:
- An Amazon Virtual Private Cloud (VPC) with public subnets
- A VPC with a NAT Gateway and public and private subnets
- A classic load balancer
- An application load balancer
- Create a VPC network and subnets.
Use this VPC and subnets when you create your ELB and when you subsequently create your deployment. The VPC and load balancer must be in the same region as one another and in the same region where you want to create your deployment.
- Create a load balancer.
AWS should create your load balancer within a few minutes. When it completes, write down the ELBName and the DNSName for your load balancer.
- Send the DNSName value to your IT staff so that they can create a DNS mapping (a CNAME mapping) to this name. You'll use the ELBName value when you use a CloudFormation template or Cloud Builder to create your deployment.
Once the mapping is complete, you can create your deployment on AWS.
Use the ArcGIS Enterprise Cloud Builder for AWS app
You can create a classic elastic load balancer using the ArcGIS Enterprise Cloud Builder for AWS app. Once you create the ELB using the app, you must leave the app open while you look up the DNS for the ELB in AWS Management Console. Send that information to your IT staff, and they will create the CNAME DNS mapping.
- Start the process of creating a highly available ArcGIS Enterprise portal or creating a stand-alone ArcGIS Server site using the Cloud Builder app.
- When you get to the Configure Elastic Load Balancer (ELB) page, specify your SSL certificate and password, and create a load balancer for the stand-alone site or the portal and any federated servers.
- For each load balancer you create, the DNS name for the load balancer is shown in bold when Cloud Builder finishes creating the load balancer. Click the Copy ELB DNS name to clipboard button to copy the name to your clipboard. Paste each DNS name into a text file.
- Send the DNS name (or names) to your IT staff so they can create a CNAME DNS mapping.
- When DNS mapping is complete, you can proceed with creating your deployment in the Cloud Builder app.