Skip To Content

Развертывание Portal for ArcGIS на двух компьютерах для отказоустойчивости с помощью CloudFormation

Шаблон Esri arcgis-portal-ha.template.json Amazon Web Services (AWS) CloudFormation создает два экземпляра Amazon Elastic Compute Cloud (EC2) с установленным Portal for ArcGIS, сделав отказоустойчивый портал.

При использовании этого шаблона для развертывания Portal for ArcGIS у вас есть следующие опции:

  • Разместить директорию ресурсов Portal for ArcGIS в бакете Amazon Simple Storage Service (S3) или разместить директорию ресурсов Portal for ArcGIS на экземпляре файлового сервера EC2.
  • Настройте ArcGIS Web Adaptor на каждом компьютере Portal for ArcGIS.

Этот шаблон создает следующую архитектуру в Amazon Web Services.

Portal for ArcGIS на главном и дополнительном экземплярах EC2

На расположенной ниже схеме и файловый сервер, и бакет S3 показаны для хранилища директории ресурсов портала. Вы выберете одно местоположение для директории содержимого при запуске этого стека. Директория ресурсов портала не хранится для одного и того же портала в обоих местах.

Лицензия:

Определенные значки в схеме используются с разрешения Amazon Web Services.

Подсказка:
Используйте этот шаблон как часть создания развертывания ArcGIS Enterprise, как это описано в статьте Развертывание компонентов ArcGIS Enterprise на отдельных машинах с помощью CloudFormation.

Предварительные условия

Предварительные требования можно сгруппировать по элементам - таким как файлы и учетные записи, которые вы должны получить, а также по задачам, которые вы должны выполнить перед запуском шаблона CloudFormation.

Обязательные элементы

Перед запуском этого шаблона у вас должно быть следующее:

  • Учетная запись Amazon Web Services.

    У учетной записи должен быть доступ к базовым сервисам AWS, таким как 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 и Amazon Relational Database Service (RDS).

  • Файл лицензии Portal for ArcGIS (.json).
  • Amazon Virtual Private Cloud (VPC) и подсети.

    Все компоненты в тех же компонентах ArcGIS Enterprise должны быть запущены в той же VPC. Если вы создали ArcGIS GIS Server или ArcGIS Data Store, которые вы будете использовать с этим порталом, используйте ту же VPC и подсети, которые использовали для этих компонентов. Если вы еще не создали эти компоненты и у вас нет существующей VPC, вы можете использовать один из следующих шаблонов CloudFormation для создания VPC: VPC с двумя общедоступными подсетями или VPC с двумя общедоступными и частными подсетями с NAT Gateway.

  • Если вы планируете использовать с порталом ArcGIS Web Adaptor и хотите настроить в нем сертификат SSL, получите сертификацию SSL от центра сертификации.
  • Если вы создаете развертывание на экземплярах Ubuntu EC2 в AWS GovCloud, вам нужен AMI ID. Если вы хотите использовать базовые канонические Ubuntu AMI, следуйте инструкциям в шаблонах Esri Amazon Web Services CloudFormation для идентификации ID.
  • Шаблон arcgis-portal-ha.template.json CloudFormation.

Обязательные задачи

Перед запуском этого шаблона вам необходимо выполнить следующие задачи:

  • Подготовьте бакет развертывания Amazon Simple Storage Service (S3) в своей учетной записи AWS. Укажите имя бакета в шаблоне при запуске стека.
    1. Создайте бакет или используйте существующий бакет S3. Вы должны быть владельцем бакета.
    2. Загрузите файл авторизации программного обеспечения Portal for ArcGIS в бакет.
    3. Загрузите файл сертификата SSL (.pfx) в бакет развертывания. Это действие необходимо только при использовании вами ArcGIS Web Adaptor с порталом и настройке на нем SSL-сертификата.
  • Создайте полное доменное имя в своем развертывании. Это доменное имя должно быть разрешаемым. Если вы не знаете, как создать и настроить доменное имя, обратитесь к IT-администратору.
  • Настройте пароли в AWS Secrets Manager (не обязательно, но рекомендуется).

    Вы можете настроить пароли для учетных записей, таких как имя пользователя администратора сайта и пароль пользователя Windows arcgis в AWS Secrets Manager. При этом вам будет предоставлено секретное Amazon Resource Name (ARN). Используйте ARN вместо пароля в параметрах шаблона при запуске стека. Если вы не используете AWS Secrets Manager для хранения паролей, вы должны ввести пароли в виде простого текста в параметр шаблона при запуске стека.

    Примечание:

    При создании секретного ARN в AWS Secrets Manager для пароля, который будет использоваться в шаблонах Esri CloudFormation, вы должны использовать секретный тип Другие типы секретов и опцию Простой текст. Более подробно о создании Amazon Resource Name для паролей см. AWS CloudFormation и ArcGIS.

  • Для использования в развертывании Portal for ArcGIS приложения или классического Elastic Load Balancer (ELB) создайте ELB перед запуском этого стека для получения отказоустойчивого развертывания Portal for ArcGIS. Вы можете использовать шаблон application load balancer или шаблон classic load balancer для создания ELB.

Подсказка:

По умолчанию CloudFormation удаляет частично созданные ресурсы в случае неудачного создания стека. Это удобно, потому что он удаляет неиспользуемые развертывания из вашей учетной записи, но это может затруднить выявление проблем. Чтобы получить стек в состоянии неудачи, отключите опцию создания стека Rollback on failure CloudFormation перед его запуском. Подробнее см. Настройка опций AWS CloudFormation в справке AWS.

Параметры

В следующих таблицах описываются параметры, используемые в этом шаблоне CloudFormation. Таблицы сгруппированы по типу параметра.

Amazon EC2 Configuration

Имя параметраОбязательно или нетОписание параметра

Platform Type

Обязательный

Выберите платформу операционной системы. Поддерживаются следующие типы:

  • Windows
  • Linux

Информацию о конкретных версиях операционной системы см. в разделе Операционные системы, поддерживаемые при использовании CloudFormation для развертывания ArcGIS в AWS.

EC2 Instance AMI ID

Дополнительный

Вы можете оставить для этого параметра пустое значение. Если вы это сделаете, в шаблонах CloudFormation будет использоваться последний ID Amazon Machine Image (AMI) для Microsoft Windows Server 2019 или Ubuntu Server 20.04 LTS, в зависимости от типа выбранной вами платформы.

Примечание:

Вы не можете оставить этот параметр пустым, если вы выполняете развертывание в AWS GovCloud на платформе Linux. См. шаблоны Esri Amazon Web Services CloudFormation для получения инструкции по поиску ID для базы Ubuntu AMI из Canonical. Если вы выполняете развертывание в поддерживаемой операционной системе Linux, отличной от Ubuntu, вы можете найти ID AMI с помощью AWS Management Console.

Чтобы использовать пользовательский AMI, введите идентификатор AMI одним из следующих способов:

  • Введите идентификатор AMI в формате 'ami-xxxxx'.
  • Если вы сохранили идентификатор AMI в хранилище параметров SSM AWS, укажите имя параметра SSM в формате AWS'{{resolve:ssm:[a-zA-Z0-9_.- /]+:\d+}}'.

Если вы применяете пользовательский AMI, убедитесь, что он соответствует следующим требованиям:

  • Сервис метаданных экземпляра EC2 (с версией V2 или V1) должен быть активирован.
  • Должна быть установлена последняя версия AWS Systems Manager Agent (SSM).
  • Если пользовательский AMI имеет операционную систему Windows, необходимо установить AWS Tools для PowerShell.

EC2 Instance Keypair Name

Обязательный

Выберите имя пары ключей EC2, чтобы разрешить удаленный доступ к экземплярам EC2.

Amazon VPC Configuration

Имя параметраОбязательно или нетОписание параметра

VPC ID

Обязательный

Выберите идентификатор VPC.

Примечание:

Все компоненты ArcGIS Enterprise, которые являются частью одного развертывания, должны быть развернуты в одном и том же VPC.

Если вам нужно создать VPC, вы можете использовать один из примеров шаблонов VPC: VPC с общедоступными подсетями или VPC с общедоступными и частными подсетями и шлюзом NAT.

Subnet ID 1

Обязательный

Выберите идентификатор подсети. Выбранный идентификатор подсети должен находиться в VPC, выбранном ранее.

Если вы использовали шаблон Esri CloudFormation для создания VPC, вы можете получить идентификатор подсети из выходных параметров этого шаблона.

Subnet ID 2

Обязательный

Выберите идентификатор второй подсети. Это должен быть идентификатор подсети, отличный от используемого для параметра Subnet ID 1. Выбранный идентификатор подсети должен находиться в VPC, указанном для этого развертывания.

Если вы использовали шаблон Esri CloudFormation для создания VPC, вы можете получить идентификатор подсети из выходных параметров этого шаблона.

Domain Name System (DNS) Configuration

Имя параметраОбязательно или нетОписание параметра

Portal for ArcGIS Site Domain Name

Обязательный

Укажите полное доменное имя для портала. Доменное имя должно существовать и быть разрешаемым: например, test.abc.com. Если вы не уверены в том, какое доменное имя использовать, обратитесь к своему ИТ-администратору.

Elastic Load Balancer DNS Name

Дополнительный

Чтобы использовать эластичный балансировщик нагрузки (ELB) с развертыванием, укажите значение для приложения или классическое DNS-имя ELB. Этот ELB должен уже существовать.

Если вы не хотите использовать ELB или хотите настроить его самостоятельно позже, оставьте значение этого параметра пустым.

Вы можете получить DNS-имя ELB, перейдя в раздел Балансировщики нагрузки сервиса Amazon EC2 внутри AWS Management Console или, если вы использовали шаблон Esri CloudFormationдля создания ELB, вы можете получить его из выходных параметров этого шаблона. Допустимые DNS-имена ELB должны заканчиваться на .elb.amazonaws.com.

Portal for ArcGIS Configuration

Имя параметраОбязательно или нетОписание параметра

EC2 Instance Type

Обязательный

Выберите тип экземпляра EC2 для основной и резервной машин портала. По умолчанию это m5.2xlarge.

EC2 Instance Root Drive Disk Space

Обязательный

Укажите размер корневого диска в ГБ. По умолчанию 100 ГБ. Минимум 100 ГБ. Максимум 1024 ГБ.

Deployment Bucket Name

Обязательный

Укажите имя бакета Amazon S3, в котором содержатся файлы лицензий на программное обеспечение, и сертификат SSL, если вы собираетесь его использовать. Этот бакет должен уже существовать и содержать файл лицензии и сертификат SSL для вашего развертывания.

Вы должны быть владельцем бакета, и она должна располагаться в той же учетной записи AWS, что и ваше развертывание.

License File Name

Обязательный

Укажите имя ключа объекта файла авторизации Portal for ArcGIS. Перед запуском этого стека необходимо загрузить файл лицензии (файл .json) в бакет развертывания. Вы можете получить имя ключа объекта файла, перейдя к файлу в бакете развертывания в консоли AWS S3, например, portal.json или resources/licenses/portal/portal.json.

Имена файлов лицензии чувствительны к регистру. Убедитесь, что вы корректно ввели имя в правильном регистре.

User License Type ID

Дополнительный

Укажите идентификатор типа лицензии пользователя портала. Более подробно о типах пользователей см. в разделе Типы пользователей, роли и права доступа.

Если вы не уверены, какой тип использовать, оставьте это поле пустым. В этом случае используется временный идентификатор типа пользовательской лицензии.

Примечание:
Если вы не предоставили идентификатор типа пользовательской лицензии сейчас, вы должны изменить тип пользовательской лицензии после создания развертывания.

Administrator User Name

Обязательный

Укажите имя пользователя для основного администратора портала.

Имя должно состоять из 6 или более буквенно-цифровых символов или символов подчеркивания (_) и начинаться с буквы.

Administrator User Password

Обязательный

Укажите пароль для первичного администратора портала.

Вы можете ввести либо обычный текстовый пароль, либо ARN вашего секретного ID из AWS Secrets Manager. Пароль должен состоять из 8 или более буквенно-цифровых символов и может содержать точки (.). Пароль не может содержать другие специальные символы или пробелы.

Лучше всего управлять своими паролями через AWS Secrets Manager. Более подробно о создании Amazon Resource Name для паролей см. AWS CloudFormation и ArcGIS.

Windows arcgis user password

Условные

Введите пароль для пользователя arcgis. Пользователь arcgis - это локальный логин Windows, используемый для запуска программных сервисов ArcGIS; поэтому этот пароль требуется только при развертывании на Windows.

Вы можете ввести либо обычный текстовый пароль, либо ARN вашего секретного ID из AWS Secrets Manager.

Лучше всего управлять своими паролями в AWS Secrets Manager. Более подробную информацию о создании Amazon Resource Name для паролей см. в разделе AWS CloudFormation и ArcGIS.

Content Store Type

Обязательный

Выберите тип местоположения хранилища для директории ресурсов портала. По умолчанию FileSystem.

  • FileSystem - директория ресурсов портала хранится в экземпляре EC2 файлового сервера ArcGIS.
  • CloudStore - директория ресурсов будет в бакете S3, созданном с помощью этого шаблона.

ArcGIS File Server Instance Type

Условные

Выберите тип экземпляра EC2 для файлового сервера ArcGIS. По умолчанию тип экземпляра m5.2xlarge.

Эта опция доступна, только если для параметра FileSystem выбрано Content Store Type.

ArcGIS File Server EC2 Instance Root Drive Disk Space

Условные

Укажите размер корневого диска в ГБ. По умолчанию 100 ГБ. Минимум 100 ГБ. Максимум 1024 ГБ.

Размер дискового пространства корневого диска для экземпляра EC2 файлового сервера ArcGIS.

Эта опция доступна, только если для параметра FileSystem выбрано Content Store Type.

Web Adaptor Name

Дополнительный

Оставьте значение этого параметра пустым, если вы не хотите использовать ArcGIS Web Adaptor, и URL-адреса для сайта будут в формате https://<fully qualified domain name><PortNumber>/arcgis.

SSL Certificate File Name

Дополнительный

Если вы включаете ArcGIS Web Adaptor в портал, вы можете предоставить сертификат SSL от центра сертификации (файл .pfx). Чтобы предоставить файл сертификата, вы должны загрузить его в бакет развертывания перед запуском этого стека.

Вы можете получить имя ключа объекта файла, перейдя к файлу в бакете развертывания в консоли AWS S3. Примеры имен сертификатов включают в себя domainname.pfx для файла сертификата, хранящегося на корневом уровне бакета развертывания, или resources/sslcerts/domainname.pfx для файла сертификата, хранящегося в папке в бакете развертывания.

Если вы используете веб-адаптер и оставляете значение этого параметра пустым, с веб-адаптером будет использоваться автоматически сгенерированный самозаверяющийся сертификат.

SSL Certificate Password

Условные

Если вы включаете ArcGIS Web Adaptor в портал и используете сертификат SSL от центра сертификации, введите либо обычный текстовый пароль, либо ARN вашего секретного идентификатора из AWS Secrets Manager. Более подробно о создании Amazon Resource Name для паролей см. AWS CloudFormation и ArcGIS.

Выходные данные

Когда ваш стек будет успешно создан, вы можете увидеть следующие выходные параметры на вкладке Outputs стека CloudFormation в AWS Management Console.

Выходное имяВыходное описание

DeploymentLogsURL

Это URL-адрес журналов Amazon CloudWatch, где хранятся все журналы развертывания. Вы можете обратиться к этим журналам для устранения неполадок в случае сбоя развертывания.

PortalHomeAppURL

URL для доступа к порталу.

StopStackFunctionName

Это URL функции Stop Stack Lambda. Вы можете использовать эту лямбда-функцию, чтобы остановить все экземпляры EC2 в стеке.

StartStackFunctionName

Это URL функции Start Stack Lambda. Вы можете использовать эту лямбда-функцию для запуска всех экземпляров EC2 в стеке, которые вы ранее остановили.

Рекомендации

Следующие моменты являются важными после создания стека CloudFormation, который содержит развертывания ArcGIS:

  • Не удаляйте никакие ресурсы AWS, созданные этим шаблоном CloudFormation. Если вы хотите знать, какие ресурсы AWS были созданы этим шаблоном, обратитесь к вкладке Ресурсы этого стека в AWS Management Console. У каждого ресурса, созданного шаблоном Esri CloudFormation, также есть теги метаданных. Однако некоторые из этих ресурсов не показывают теги в AWS Management Console.
  • Вы можете использовать функции AWS Lambda, которые появляются в выходных данных стека (перечислены в разделе Выходные данные на этой странице), чтобы остановить экземпляры EC2 в этом стеке, когда они не используются, и запустить их заново, когда это требуется. Эти функции применяются для управления затратами.

    Когда вы запускаете функцию Lambda для остановки экземпляров EC2 в развертывании, то функция возвращает сообщение, что экземпляры остановлены. Однако если экземпляры участвуют в группе Auto Scaling, функция также должна отделять экземпляры от группы. На выполнение этого может уйти до 10 минут. Поэтому подождите хотя бы 10 минут перед тем, как запустить функцию запуска Lambda для перезапуска развертывания.

  • Если вы используете AWS Secrets Manager для паролей, таких как пароль пользователя администратора сайта или пароль пользователя Windows ArcGIS, а позже (после создания развертывания) вы меняете эти пароли, убедитесь, что вы обновили соответствующие AWS Secrets Manager ARN новыми паролями.
  • Если в развертывании используется Application Load Balancer, можно настроить тайм-аут простоя Application Load Balancer после создания развертывания. Например, вам может потребоваться увеличить тайм-аут простоя, чтобы обеспечить выполнение операций, требующих много времени, на любом из компьютеров в развертывании. Настройте значение тайм-аута простоя Application Load Balancer в AWS Management Console.

Решение проблем

Если вы столкнулись с проблемами при создании этого стека CloudFormation, см. Решение проблем, возникающих при развертывании ArcGIS на AWS.