Skip To Content

Настройка отказоустойчивого ArcGIS Server с общим хранилищем конфигураций на базе сервисов хранения Amazon

Чтобы получить действительно отказоустойчивый сайт ArcGIS Server, необходимо, чтобы хранилище конфигурации ArcGIS Server также размещалось в отказоустойчивом местоположении. Для хранилища конфигурации можно использовать сервисы хранения Amazon.

Вам потребуется учетная запись Amazon Web Services (AWS), а также ключ доступа и секретный ключ для учетной записи с преднастроенной ролью IAM, чтобы полностью пройти процесс настройки отказоустойчивого сайта ArcGIS Server, который использует сервисы хранения Amazon для хранилища конфигурации.

В ходе этого процесса будут запущены три экземпляраAmazon Elastic Compute Cloud (EC2); два из них будут использоваться для сайта ArcGIS Server, а третий для файлового хранилища, в котором будут размещены директории ArcGIS Server. Кроме того, для хранилища конфигурации создаются бакет Amazon DynamoDB и бакет Amazon Simple Storage Service (S3).

  1. Войдите в AWS Management Console и запустите три экземпляра EC2.

    Более подробную информацию см. в разделе Запуск экземпляра EC2 при запуске ArcGIS Server.

    При запуске экземпляров в Amazon Virtual Private Cloud (VPC), необходимо сделать следующее:

    1. Настройте подсеть для автоматического назначения общедоступных IP-адресов. Более подробную информацию см. в разделе AWSДокументация по адресам VPC IP.
    2. Откройте порт 6443 в группе безопасности, которую вы будете использовать с экземплярами.
  2. Подключитесь к двум экземплярам, установите ArcGIS Server на эти экземпляры.

    Инструкции по подключению к экземпляру EC2 см. в Справке AWS.

  3. Вместо того, чтобы создавать сайт ArcGIS Server из ArcGIS Server Manager, откройте ArcGIS Server Administrator Directory URL (https://<public DNS>:6443/arcgis/admin) для одного из экземпляров AWS и щелкните createNewSite.
  4. Укажите новое имя и пароль для основного сайта ArcGIS Server в полях Имя основного администратора и Пароль, соответственно.
  5. Скопируйте одно из следующего в поле Подключение к хранилищу конфигураций (JSON) и измените информацию на сведения, связанные с вашим аккаунтом и развертыванием.
    • Если вы настроили роль IAM, скопируйте следующую информацию в Подключение хранилища конфигураций (JSON):

      {
      	    "type": "AMAZON",
           "connectionString": "NAMESPACE=<Name of your Bucket>;REGION=<AWS region>;"
      	}

    • Если вы не настроили роль IAM, скопируйте следующую информацию в Подключение хранилища конфигураций (JSON):

      {
      	    "type": "AMAZON",
           "connectionString": "NAMESPACE=<Name of your Bucket>;REGION=<AWS region>",
      	    "connectionSecret"="ACCESS_KEY_ID=<Your AccessKey>;SECRET_KEY=<Your Secret Key>;"
      	}

    Пространство имен бакета должно быть уникально для данного сайта ArcGIS Server. ArcGIS добавляет текст arcgis-config-store- к указанному имени; поэтому, максимальное число знаков в имени бакета составляет

    <Максимально допустимо символов AWS> – 20
    .

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

  6. Скопируйте следующую информацию в поле Директории сервера (JSON) и заполните сведения, связанные с вашим конкретным развертыванием:

    {
    	  "directories": [
    	           {
    	             "name": "arcgisoutput",
    	             "physicalPath": "<arcgisoutput directory>",
    	             "directoryType": "OUTPUT",
    	             "cleanupMode": "TIME_ELAPSED_SINCE_LAST_MODIFIED",
    	             "maxFileAge": 10,
    	             "description": "Stores various information generated by services, such as map images.",
    	             "useLocalDir": "false",
    	             "localDirectoryPath": "",
    	             "virtualPath": "/rest/directories/arcgisoutput"
    	           },
    	           {
    	             "name": "arcgisjobs",
    	             "physicalPath": "<arcgisjobs directory>",
    	             "directoryType": "JOBS",
    	             "cleanupMode": "TIME_ELAPSED_SINCE_LAST_MODIFIED",
    	             "maxFileAge": 360,
    	             "description": "Stores results and other information from geoprocessing services.",
    	             "useLocalDir": "false",
    	             "localDirectoryPath": "",
    	             "virtualPath": "/rest/directories/arcgisjobs"
    	           },
    	           {
    	             "name": "arcgiscache",
    	             "physicalPath": "<arcgiscache directory>",
    	             "directoryType": "CACHE",
    	             "cleanupMode": "NONE",
    	             "maxFileAge": 0,
    	             "description": "Stores tile caches used by map, globe, and image services for rapid performance.",
    	             "useLocalDir": "false",
    	             "localDirectoryPath": "",
    	             "virtualPath": "/rest/directories/arcgiscache"
    	           },
    	           {
    	             "name": "arcgissystem",
    	             "physicalPath": "<arcgissystem directory>",
    	             "directoryType": "SYSTEM",
    	             "cleanupMode": "NONE",
    	             "maxFileAge": 0,
    	             "description": "Stores directories and files used internally by ArcGIS Server.",
    	             "useLocalDir": "false",
    	             "localDirectoryPath": "",
    	             "virtualPath": "arcgissystem"
    	           }
    	     ]
    	}

    Подсказка:
    Примеры значений для каждого типа physicalPath см. в разделе Пример использования: в Создание сайта в справке ArcGIS REST API.

  7. Дополнительно можно скопировать следующее в поле Настройки журнала (JSON) и заменить значения, относящиеся к особенностям вашего развертывания.

    Если информация по ведению журнала не указана, то ArcGIS использует уровень ведения журнала по умолчанию (предупреждение), директорию (C:\\arcgisserver\\logs\\ для экземпляров Windows; /arcgis/server/usr/logs - для экземпляров Ubuntu), максимальное количество хранящихся файлов журнала (10) и максимальное количество дней, в течение которого хранится файл журнала (90).

    Примечание:

    JSON рассматривает обратный слэш (\) как символ выхода (esc); поэтому, при каждом вводе текста с символом обратный слэш - например, путей в Windows - необходимо использовать два обратных слэша.

    {
    		"logLevel": "<DEBUG | VERBOSE | FINE | INFO | WARNING | SEVERE>",
    		"logDir": "<directory>",
    		"maxErrorReportsCount": 10,
    		"maxLogFileAge": 90
    	}

    В следующем примере около 25 файлов журнала отладки будут созданы в папке журнала на компьютере ArcGIS Server, и файлы журнала будут сохраняться в течение 30 дней.

    {
    		"logLevel": "DEBUG",
    		"logDir": "C:\\arcgisserver\\logs\\",
    		"maxErrorReportsCount": 25,
    		"maxLogFileAge": 30
    	}

  8. Оставьте пустым поле Кластер (JSON), чтобы использовать кластер по умолчанию.
  9. Нажмите Создать.
  10. Как только сайт ArcGIS Server будет создан, вернитесь к AWS Management Console и убедитесь, что бакет S3 и DynamoDB существует.
    1. Перейдите в Сервисы > Хранилище и ресурсы > S3 и убедитесь, что бакет S3 с именем arcgis-config-store-<name you provided> существует.
    2. Перейдите в Сервисы > База данных > Dynamo DB и убедитесь, что существуют элементы: ArcGISConfigStore.<S3 bucket name> (содержит элемент Container) и ArcGISConfigStores (содержит элемент NameSpace).
  11. Откройте ArcGIS Server Manager для второго экземпляра AWS.

    URL – https://<public DNS>:6443/arcgis/manager.

  12. Выполните следующие действия, чтобы присоединить этот второй экземпляр AWS к сайту ArcGIS Server.
    1. Щелкните Подключиться к существующему сайту.
    2. Укажите URL сайта ArcGIS Server, который был создан для первого экземпляра.
    3. Укажите имя пользователя и пароль основного администратора первого экземпляра.

Теперь у вас есть отказоустойчивый сайт ArcGIS Server, который состоит из двух машин, на третьей машине хранятся общедоступные директории ArcGIS Server и общее хранилище конфигурации на сервисах хранения Amazon.