Skip To Content

Развертывание отказоустойчивого сайта ArcGIS Mission Server с помощью CloudFormation

Шаблон Esri arcgis-mission-server-ha.template.json Amazon Web Services (AWS) CloudFormation создает сайт ArcGIS Mission Server на нескольких экземплярах Amazon Elastic Compute Cloud (EC2) для обеспечения отказоустойчивости.

Экземпляры EC2 развертываются в группе AWS Auto Scaling, у которой есть такие преимущества, как планирование емкости на основе конкретных критериев, лучшая отказоустойчивость, доступность и оптимизированное управление затратами.

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

Сайт ArcGIS Mission Server на нескольких экземплярах EC2

Лицензия:

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

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

Предварительные требования можно сгруппировать по элементам - таким как файлы и учетные записи, которые вы должны получить, а также по задачам, которые вы должны выполнить перед запуском шаблона 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).

  • Файл лицензии ArcGIS Mission Server (.ecp или .prvc).
  • Файл сертификата SSL (в формате .pfx) и соответствующий пароль

    Сертификат должен быть выдан центром сертификации.

  • Если вы создаете развертывание на экземплярах Ubuntu EC2 в AWS GovCloud, вам нужен AMI ID. Если вы хотите использовать базовые канонические Ubuntu AMI, следуйте инструкциям в шаблонах Esri Amazon Web Services CloudFormation для идентификации ID.
  • Amazon Virtual Private Cloud (VPC) и подсети.

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

  • Шаблон arcgis-mission-server-ha.template.json CloudFormation.

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

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

  • Подготовьте бакет развертывания Amazon Simple Storage Service (S3) в учетной записи AWS. Укажите имя бакета в шаблоне при запуске стека.
    1. Создайте бакет или используйте существующий бакет S3. Вы должны быть владельцем бакета.
    2. Загрузите файл авторизации ArcGIS Mission Server в бакет.
    3. Загрузите файл сертификата SSL в бакет.
  • Если вы используете адрес Elastic IP с этим развертыванием (что необязательно), вы должны создать адрес Elastic IP перед запуском этого шаблона.

    Можно воспользоваться AWS Management Console для создания адреса Elastic IP.

  • Настройте пароли в 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.

  • Настройте доменное имя системы (DNS).

    У вас должно быть полное доменное имя для сайта ArcGIS Mission Server. Это доменное имя должно существовать до запуска этого стека, также оно должно быть разрешаемым. Обратитесь к своему ИТ-департаменту, если не знаете, как получить полное доменное имя и настроить DNS.

Подсказка:

По умолчанию 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

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

ArcGIS Mission Server Site Domain Name

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

Укажите полное доменное имя для сайта ArcGIS Mission Server. Доменное имя должно существовать и быть разрешаемым. Если вы не уверены в том, какое доменное имя использовать, обратитесь к своему ИТ-администратору.

Elastic Load Balancer DNS Name

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

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

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

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

ArcGIS Mission Server Configuration

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

EC2 Instance Type

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

Определите тип экземпляра EC2. По умолчанию это m5.2xlarge.

Это тип экземпляра, используемого для машин с ArcGIS Mission Server.

Экземпляры EC2 будут настроены в группе AWS Auto Scaling. Эти экземпляры присоединятся к сайту ArcGIS Mission Server путем доступа к хранилищу конфигураций ArcGIS Mission Server.

EC2 Instance Root Drive Disk Space

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

Это размер корневого диска для экземпляров ArcGIS Mission Server EC2.

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

Number of EC2 Instances

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

Укажите количество экземпляров EC2, участвующих в сайте. Значение по умолчанию равно 2. Максимум 10. Минимум 1.

Экземпляры EC2 будут настроены в группе AWS Auto Scaling. Более подробную информацию об изменении размера группы Auto Scaling см. в разделе Обратите внимание ниже.

Deployment Bucket Name

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

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

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

License File Name

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

Укажите имя ключа объекта файла авторизации ArcGIS Mission Server. Перед запуском этого стека необходимо загрузить файл лицензии (файл .ecp или .prvc) в бакет развертывания.

Чтобы получить имя ключа объекта файла, перейдите к файлу в корзине развертывания в консоли Amazon S3, например, mission.prvc или resources/licenses/server/mission.prvc.

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

Site Administrator User Name

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

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

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

Site Administrator User Password

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

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

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

Configuration Store Type

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

Выберите тип хранилища конфигурации ArcGIS Mission Server. По умолчанию FileSystem.

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

Примечание:
Даже если вы выберете CloudStore, будет создан отдельный файловый сервер для размещения общих директорий ArcGIS Mission Server.

ArcGIS File Server Instance Type

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

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

ArcGIS File Server EC2 Instance Root Drive Disk Space

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

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

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

Web Adaptor Name

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

Чтобы использовать ArcGIS Web Adaptor с сайтом ArcGIS Mission Server, введите имя веб-адаптера. Доступ к сайту ArcGIS Mission Server будет осуществляться через URL в формате https://<fully qualified domain name>/<web adaptor name>. Имя должно начинаться с буквы и содержать только буквенно-цифровые символы.

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

SSL Certificate File Name

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

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

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

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

SSL Certificate Password

Условные

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

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

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

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

DeploymentLogsURL

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

ServerAdminDirURL

URL каталога администратора ArcGIS Mission Server.

ServerServicesURL

URL сервисов ArcGIS Mission Server.

Этот URL можно использовать в качестве входного параметра в шаблоне интегрированного сервера.

StopStackFunctionName

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

StartStackFunctionName

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

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

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

  • В отказоустойчивых развертываниях ArcGIS Mission Server экземпляры EC2 будут настроены в группе AWS Auto Scaling. После создания сайта ArcGIS Mission Server можно добавить на сайт дополнительные компьютеры (экземпляры EC2) путем уточнения размера группы Auto Scaling. Воспользуйтесь AWS Management Console для увеличения емкости группы Auto Scaling для добавления компьютеров. Чтобы удалить компьютеры, уменьшите емкость. Обратитесь к документации AWS для изучения инструкций об изменении лимитов емкости группы Auto Scaling, чтобы добавить или удалить компьютеры с сайта ArcGIS Mission Server.

    Подсказка:

    Чтобы найти группу AWS Auto Scaling, созданную для стека CloudFormation, изучите вкладку Ресурсы связанного стека CloudFormation. Логический ID ресурса - AutoScalingGroup.

    Хотя технически возможно изменить размер группы AWS Auto Scaling на ноль, оставьте хотя бы один экземпляр запущенным в группе Auto Scaling, иначе сайт ArcGIS Mission Server может работать некорректно.

    После изменения емкости группы может потребоваться до часа на добавление компьютеров или до 15 минут на их удаление. После применения изменений используйте API администратора ArcGIS Server, чтобы убедиться в том, что количество компьютеров сайта ArcGIS Mission Server соответствующим образом увеличилось или уменьшилось.

  • У сайтов ArcGIS Server, созданных с помощью этого шаблона, параметр suspendedMachineUnregisterThreshold отключен, это означает, что регистрация компьютеров на сайте не будет автоматически отменена, если они неактивны. После развертывания сайта вы можете изменить значение suspendedMachineUnregisterThreshold в ArcGIS REST API для сайта ArcGIS Server, чтобы задать период бездействия (в минутах), по истечении которого регистрация машины на сайте будет отменена. Смотрите Системные свойства в справке разработчика для получения информации о настройке этого параметра для сайта ArcGIS Mission Server.
  • Не удаляйте никакие ресурсы AWS, созданные этим шаблоном CloudFormation. Если вы хотите знать, какие ресурсы AWS были созданы этим шаблоном, обратитесь к вкладке Ресурсы этого стека в AWS Management Console. У каждого ресурса, созданного шаблоном Esri CloudFormation, также есть теги метаданных. Однако некоторые из этих ресурсов не показывают теги в AWS Management Console.
  • Сайты ArcGIS Mission Server всегда являются интегрированными серверами (а не автономными сайтами). Вы также можете использовать один из следующих шаблонов для создания портала ArcGIS Enterprise для интегрирования с ним сайта ArcGIS Mission Server.

    Как только у вас будет базовое развертывание ArcGIS Enterprise и созданный сайт ArcGIS Mission Server, воспользуйтесь шаблоном интегрирования, чтобы интегрировать сайт ArcGIS Mission Server с порталом.

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

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

Примечание:

Вы должны использовать функции Lambda для остановки и запуска экземпляров EC2, которые являются частью группы Auto Scaling. Группы Auto Scaling добавляют машины на основе заданной для них емкости, если вы используете AWS Management Console для остановки экземпляров EC2 в группе Auto Scaling, будут добавлены новые экземпляры.

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

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