You can use Amazon Web Services (AWS) CloudFormation templates provided by Esri to build various ArcGIS Enterprise architectures.
In most cases, you will use a combination of CloudFormation templates to build a deployment.
What is AWS CloudFormation?
AWS CloudFormation is a service that helps define architectures on Amazon Web Services. It is an example of infrastructure as code, meaning you write code that can deploy a particular hardware infrastructure in a cloud environment. With CloudFormation, you use a JavaScript Object Notation (JSON) template to define a stack of resources that work together in a predetermined way. CloudFormation ensures that you maintain a minimum number of machines in a site, allowing for recovery when one of the machines is unavailable.
You can also use CloudFormation templates to launch and maintain a deployment rather than doing it manually, and you can set up identical architectures in different AWS accounts or regions.
Esri CloudFormation templates
Esri stores CloudFormation templates in an Amazon Simple Storage Service (S3) bucket, from which you can download them. Templates are specific to an ArcGIS release. You can also copy and modify these templates to fit your specific needs, or create your own templates to implement your deployment patterns.
Use the Esri CloudFormation templates to launch stacks from AWS Management Console or script stack creation.
Quick links
The sections below (excluding the password section) provide brief information on each type of CloudFormation template Esri provides and links to detailed pages about each template.
The following tables provide consolidated lists of links to pages that describe each template, including the required inputs and the outputs that are created, as well as links to the template.
Templates to create deployments
Deployment created | View template |
---|---|
Amazon Virtual Private Cloud (VPC) with public subnets | |
VPC with a NAT Gateway and public and private subnets | |
ArcGIS Enterprise base components on a single machine | |
ArcGIS Enterprise base components duplicated on two machines for high availability | |
Portal for ArcGIS on a single machine | |
Portal for ArcGIS on two machines for high availability | |
Single machine ArcGIS Data Store (relational, tile cache, or spatiotemporal big data store) | |
ArcGIS Data Store in primary-standby mode (relational or tile cache data store) | |
ArcGIS Data Store in cluster mode (tile cache or spatiotemporal big data store) | |
Single machine ArcGIS Server site (ArcGIS GIS Server, ArcGIS Image Server, or ArcGIS GeoAnalytics Server) | |
Multiple machine ArcGIS Server site for high availability (ArcGIS GIS Server, ArcGIS Image Server, or ArcGIS GeoAnalytics Server) | |
Federate an ArcGIS Server site with a portal | |
Multiple machine ArcGIS Mission Server site for high availability | |
Multiple machine ArcGIS Notebook Server site for high availability | |
Multiple machine ArcGIS Workflow Manager site for high availability | |
Enterprise geodatabase in Amazon Aurora (PostgreSQL-compatible edition) added to an ArcGIS Server site (managed database or registered database) | |
Enterprise geodatabase in Amazon Relational Database Service (RDS) for PostgreSQL added to an ArcGIS Server site (managed database or registered database) | |
Enterprise geodatabase in Amazon RDS for SQL Server added to an ArcGIS Server site (managed database or registered database) |
Tip:
To access CloudFormation templates that create 10.8.1 or earlier releases of ArcGIS software, start with the 10.8.1 CloudFormation templates page, and use the links at the top of the page to access earlier releases. Not all templates that are available at this release were available in earlier releases.
Templates to upgrade deployments
Deployment upgraded | View template |
---|---|
ArcGIS Enterprise base components on a single machine | |
ArcGIS Enterprise base components duplicated on two machines | |
Portal for ArcGIS on a single machine | |
Portal for ArcGIS on two machines | |
Single machine ArcGIS Server site (ArcGIS GIS Server, ArcGIS Image Server, or ArcGIS GeoAnalytics Server) | |
Multiple machine ArcGIS Server site (ArcGIS GIS Server, ArcGIS Image Server, or ArcGIS GeoAnalytics Server) | |
ArcGIS Data Store on a single machine (relational, tile cache, or spatiotemporal big data store) | |
Primary and standby ArcGIS Data Store machines (relational or tile cache data store) | |
Cluster of ArcGIS Data Store machines (tile cache or spatiotemporal big data store) | |
Single machine ArcGIS GeoEvent Server site | |
Single machine ArcGIS Mission Server site | |
Multiple machine ArcGIS Mission Server site | |
Single machine ArcGIS Notebook Server site | |
Multiple machine ArcGIS Notebook Server site |
Templates to create custom AMIs
Type of custom Amazon Machine Image created | View template |
---|---|
Create an AMI with a Linux operating system and ArcGIS Enterprise components. | |
Create an AMI with a Microsoft Windows operating system, ArcGIS Enterprise, and ArcGIS Pro. |
Passwords used in CloudFormation templates
It's recommended that you store your passwords in AWS Secrets Manager and use the secret Amazon Resource Name (ARN) for the passwords instead of providing passwords in plain text.
When you create a secret ARN in the Secrets Manager service of AWS Management Console for a password used with Esri CloudFormation templates, you must do the following:
- Choose Other types of secrets for secret type and use the Plaintext option.
- Delete all default text from the input field before you type the password.
Templates that create a VPC
An Amazon Virtual Private Cloud (VPC) is a virtual network. You must have a VPC in which to create your deployments on AWS. You can use one of the following templates to create a VPC before you create an ArcGIS deployment. The VPC template you use depends on the level of security you require.
- Create a VPC with two public subnets.
- Create a VPC with a NAT Gateway and public and private subnets.
Templates that create an Elastic Load Balancer
An Amazon Elastic Load Balancer (ELB) directs network traffic to Amazon Elastic Compute Cloud (EC2) instances.
The following templates create an ELB with an SSL certificate configured in it. The load balancers can be internet facing, which means you can use it with public subnets, or internal, which means you can use it with private subnets.
- Classic load balancer—You must create one load balancer per site or portal when you use classic load balancers.
- Application load balancer—You can use a single application load balancer for all components of an ArcGIS Enterprise deployment. If you use a load balancer with an ArcGIS Notebook Server site, it must be an application load balancer.
If you use a load balancer with your site or portal, you must create it before creating the ArcGIS deployment.
Templates that create an ArcGIS Enterprise deployment
Esri provides multiple CloudFormation templates you can use to create an ArcGIS Enterprise deployment.
All-in-one deployments
If you deploy for testing purposes or on very large machines for a production deployment, you can use the templates that create base ArcGIS Enterprise components on the same EC2 instance.
The base ArcGIS Enterprise deployment on a single machine template deploys Portal for ArcGIS, an ArcGIS GIS Server site (hosting server), and ArcGIS Data Store (relational and tile cache) on one EC2 instance.
The highly available base ArcGIS Enterprise deployment template deploys two identical EC2 instances (a primary and standby instance) each containing the base ArcGIS Enterprise components.
Templates that allow you to deploy components on separate machines
Rather than deploying all ArcGIS Enterprise components on the same machine, you can use the following templates in combination to build an ArcGIS Enterprise deployment with each component on separate EC2 instances. This allows a more customized deployment. For example, you can size machines differently for each component or create different numbers of machines for each component.
All ArcGIS Enterprise components that are part of the same deployment must be deployed in the same VPC. All components and resources (including the VPC) must run under the same AWS account.
Templates are listed in the order they must be used. Use one template from each step (single machine or highly available).
- Deploy Portal for ArcGIS on a single machine or create a highly available Portal for ArcGIS deployment.
- Create an ArcGIS GIS Server site using the ArcGIS Server on a single machine template or the highly available ArcGIS Server site template.
- Create a relational data store using the ArcGIS Data Store on a single machine template or the primary-standby ArcGIS Data Store template.
- Run the CloudFormation template to federate the ArcGIS GIS Server to the portal, and add the site as the hosting server.
Templates that create ArcGIS Server sites
Esri provides CloudFormation templates that allow you to create ArcGIS Server sites to fill different roles. The role the site fills depends on the template you use and the license you provide. The sites described in the table below can be created using one of the following templates:
- ArcGIS Server site on a single machine
- Multiple machine ArcGIS Server site for high availability
License role | Site type | Site role |
---|---|---|
ArcGIS GIS Server | GIS Server | A stand-alone or federated GIS Server site to which you can publish feature, map, geoprocessing, geocoding, geodata, or geometry services. |
ArcGIS GeoAnalytics Server | GeoAnalytics Server | Acts as a federated GeoAnalytics Server server to allow portal users to run GeoAnalytics Tools. |
ArcGIS Image Server | Image Server, Image Hosting Server, or Raster Analytics Server | A stand-alone or federated Image Server site to which you can publish image services from mosaic datasets. If the site is federated with a portal, you can set it as the portal's raster analysis server or image hosting server. |
To federate any of these ArcGIS Server sites with an ArcGIS Enterprise portal, use the CloudFormation template to federate sites.
ArcGIS GeoEvent Server site
Use the ArcGIS GeoEvent Server CloudFormation template to create a single-machine ArcGIS GeoEvent Server site.
You can use the site as a stand-alone GeoEvent Server from which you stream real-time observation data, or you can use the CloudFormation template to federate ArcGIS Server sites with an ArcGIS Enterprise portal.
ArcGIS Mission Server site
Use one of the following ArcGIS Mission Server CloudFormation templates to create a single-machine ArcGIS Mission Server site.
- Single machine ArcGIS Mission Server site
- Multiple machine ArcGIS Mission Server site for high availability
The ArcGIS Mission Server site must be federated with an ArcGIS Enterprise portal. If you have a base ArcGIS Enterprise deployment, you can use the CloudFormation template to federate ArcGIS Server sites with an ArcGIS Enterprise portal to accomplish this.
ArcGIS Notebook Server site
Use one of the following ArcGIS Notebook Server CloudFormation templates to create an ArcGIS Notebook Server site on Amazon Elastic Compute Cloud (EC2) instances running Ubuntu.
- Single machine ArcGIS Notebook Server site
- Multiple machine ArcGIS Notebook Server site for high availability
The ArcGIS Notebook Server site must be federated with an ArcGIS Enterprise portal. If you have a base ArcGIS Enterprise deployment, you can use the CloudFormation template to federate ArcGIS Server sites with an ArcGIS Enterprise portal to accomplish this.
ArcGIS Workflow Manager site
Use one of the following ArcGIS Workflow Manager CloudFormation templates to create an ArcGIS Workflow Manager site:
- Single machine ArcGIS Workflow Manager site
- Multiple machine ArcGIS Workflow Manager site for high availability
The ArcGIS Workflow Manager site must be federated with an ArcGIS Enterprise portal. If you have a base ArcGIS Enterprise deployment, you can use the CloudFormation template to federate ArcGIS Server sites with an ArcGIS Enterprise portal to accomplish this.
You must restart ArcGIS Workflow Manager on each machine in the site after you federate it with an ArcGIS Enterprise portal.
Templates that create enterprise geodatabases and register them with an ArcGIS Server site
You can run one of the following CloudFormation templates to create a database service, create an enterprise geodatabase in it, and register the database with an ArcGIS Server site. If the site is an ArcGIS GIS Server site, you can register the geodatabase as a managed database.
- An enterprise geodatabase in Amazon Aurora (PostgreSQL-compatible edition) added to an ArcGIS Server site (managed database or registered database)
- An enterprise geodatabase in Amazon Relational Database Service (RDS) for PostgreSQL added to an ArcGIS Server site (managed database or registered database)
- An enterprise geodatabase in Amazon RDS for SQL Server added to an ArcGIS Server site (managed database or registered database)
The ArcGIS Server site must exist before you run any of the templates listed above. You can use either of the following templates to create a GIS Server or ArcGIS Image Server site with which you can register a database:
- ArcGIS Server site on a single machine
- Multiple machine ArcGIS Server site for high availability
Templates to upgrade deployments
If you created a deployment using the 10.9, 10.9.1, or 11.0 version of one of the deployment templates listed above or used the 10.9, 10.9.1, or 11.0 ArcGIS Enterprise Cloud Builder for Amazon Web Services app to create the deployment, you can use the corresponding upgrade CloudFormation template to upgrade your deployment.
See Upgrade deployments for more information about how to upgrade deployments based on how and when they were created.
Templates to create a custom Amazon Machine Image
The custom Amazon Machine Image CloudFormation templates allow you to choose the base AMI that you start with, which ArcGIS Enterprise components the image contains, and which operating system to use. Confirm that the operating system and version are supported for the ArcGIS Enterprise component you include on the image.
When you create an AMI with a Microsoft Windows operating system, you can include ArcGIS Pro on the image.