ArcGIS Enterprise portals store information about portal items in the portal content directory. When you configure a highly available portal—which is composed of two portal machines—both machines share the content directory. To make your content highly available, you need to store your Portal for ArcGIS content directory in a highly available, shared location. You can use Amazon Simple Storage Service (S3) for this.
In this workflow, you will create a bucket on Amazon S3, launch one portal instance using an Esri Amazon Machine Image (AMI), create a portal that uses the S3 bucket for its content directory, launch a second portal instance using an Esri AMI, and join the second portal to the portal on the first instance you launched.
Create a highly available portal with content directory on S3
Follow these steps to create a highly available portal that uses an Amazon S3 bucket to store the portal's content directory, thereby making the content directory highly available.
- Download your Portal for ArcGIS license file from My Esri.
- Create an Amazon S3 bucket using the Amazon Web Services (AWS) Management Console. Create the bucket in the same region in which you will create your portal machines.
- Use one of the Esri AMIs to launch an instance on AWS.
Note that if this is the first time using a particular AMI, you must first read and accept AWS Marketplace terms before launching the instance.
- Create an Amazon Elastic IP and associate it with the EC2 instance.
- Set up CNAME mapping to create a more user-friendly Domain Name System (DNS) hostname.
- Create a remote connection to the instance.
- Open the hostidentifier.properties file and confirm the preferredidentifier=ip property is uncommented. The file is found in the <Portal for ArcGIS installation directory>\framework\runtime\ds\framework\etc\ directory.
- Start Portal for ArcGIS.
- On a Microsoft Windows instance, start the Portal for ArcGIS service from the Windows Services panel.
- On an Ubuntu Server instance, log in as the arcgis user and run startportal.sh in /arcgis/portal to start Portal for ArcGIS.
- Open the ArcGIS Portal Directory. The URL is in the format https://portal.domain.com:7443/arcgis/portaladmin.
- Click Create New Site.
- Create the initial portal administrator account.
- Import the license file you downloaded in step 1.
- Copy one of the following blocks of JSON and paste it into the Content Store field. Be sure to replace connectionString values with information specific to your account and implementation. For the objectStore, provide the name of the S3 bucket you created in step 1 to store the content directory.
Use this JSON if you want to access the S3 bucket using the accessKeyId and secretAccessKey of your AWS account:
{ "type": "cloudStore", "provider": "Amazon", "connectionString": {"accessKeyId":"ABCDEFGHIJK123456","secretAccessKey": "ZYXWVUTSRQPONML98765432","region": "<region name>","credentialType": "accessKey"}, "objectStore": "<your S3 bucket>" }
Use this JSON if you want to access the S3 bucket through an IAMRole you configured for your AWS account:
{ "type": "cloudStore", "provider": "Amazon", "connectionString": {"region": "<region name>","credentialType": "IAMRole"}, "objectStore": "<your S3 bucket>" }
- Click Create New Site.
- Enable HTTPS on at least the ArcGIS Web Adaptor directory, using a CA-signed certificate.
The certificate is issued to the public DNS hostname for the Elastic IP or the CNAME DNS hostname that maps to the Elastic IP.
Note:
Do not use a self-signed certificate when running Portal for ArcGIS.
- Configure ArcGIS Web Adaptor with Portal for ArcGIS. You can do this from a web browser on the local machine or from command line on Ubuntu.
- If running from a web browser, open the ArcGIS Web Adaptor configuration page.
The web adaptor registration page opens automatically when you install; however, change the URL to use the elastic IP of the EC2 instance or the CNAME DNS hostname where ArcGIS Web Adaptor is installed. For example, change the URL from https://localhost/arcgis/webadaptor to https://<Elastic IP>/arcgis/webadaptor or https://<CNAME DNS hostname>/arcgis/webadaptor.
- Use the elastic IP or CNAME DNS hostname in the URL rather than the portal machine name in Portal URL. For example, type https://<Elastic IP>:7443/arcgis or https://<CNAME DNS hostname>:7443/arcgis.
- If running from a web browser, open the ArcGIS Web Adaptor configuration page.
- Use the Esri AMI to launch a second instance.
- Create a remote connection to the second instance and start Portal for ArcGIS.
- Open the portal website for the second Portal for ArcGIS installation (https://<fully qualified instance2 name>:7443/arcgis/home) and choose to Join existing portal.
- Enter the Portal URL for the portal you configured on the first instance. The URL is in the format https://<fully qualified instance1 name>:7443.
- Enter the user name and password for the initial portal administrator you created in step 10.
- Click Join.
You now have two AWS instances running Portal for ArcGIS using a shared, highly available content directory stored on S3.
Note:
If you delete the portal deployment in the future, you must manually empty and delete the S3 bucket used for the content directory; uninstalling Portal for ArcGIS will not delete the content directory or the bucket.
Next steps
To make the entire ArcGIS Enterprise portal highly available, the hosting GIS Server site and ArcGIS Data Store also need to be highly available. See the following topics for instructions on configuring a highly available GIS Server site and ArcGIS Data Store: