Skip To Content

Автоматизация копирования в дежурное развертывание

Когда и первичное, и дежурное развертывания ArcGIS Enterprise будут созданы, вы можете автоматизировать репликацию из первичного развертывания в дежурное, используя для этого утилиту webgisdr, отдельные файлы свойств для полных резервных копий, а также назначенное задание с помощью планировщика задач Windows.

Для более полной синхронизации первичного и дежурного развертываний необходимо регулярно создавать полные резервные копии с помощью утилиты webgisdr и экспортировать накопившиеся изменения между полными резервными копиями. Например, если за сутки сервисы и данные развертывания ArcGIS Enterprise изменяются достаточно серьезно, то полную резервную копию вы можете создавать в полночь, а экспорт новых, накопившихся изменений выполнять в 10-00, 14-00 и 18-00, чтобы собрать все изменения, которые произойдут в течение всего рабочего дня.

Чтобы автоматизировать этот процесс, создайте четыре копии файла-шаблона свойств (webgisdr.properties) и четыре разных скрипта, которые будут выполнять следующие задачи:

  • Экспортировать полные резервные копии из первичного развертывания и копировать файлы в дежурное развертывание.
  • Экспортировать новые, накопившиеся резервные копии (изменения) из первичного развертывания и копировать в дежурное развертывание.
  • Импортировать полные резервные копии в дежурное развертывание.
  • Импортировать новые, накопившиеся резервные копии (изменения) в дежурное развертывание.

Для запуска этих скриптов по графику в определенное время используйте планировщик задач Windows.

Когда вы будете решать, как часто будут запускаться эти скрипты, необходимо учитывать время, необходимое для выполнения экспорта и копирования данных. Вам придется проделать это сначала вручную, чтобы получить представление о том, сколько времени потребуется для создания полной резервной копии, а также резервных копий новых, накопившихся изменений и их копирования через сеть в дежурное развертывание. Включите буфер 30 – 60 минут, чтобы учесть колебания в сети и производительность оборудования.

Например, если для создания новой, дополнительной резервной копии (изменения) требуется 20 минут, и 5 минут уходит на копирование в дежурное развертывание, запрограммируйте так, чтобы импорт резервной копии происходил через час после запуска скрипта, импортирующего накопившиеся изменения. Таким образом, если скрипт, создающий резервную копию накопившихся изменений, запускается в 10-00, планируйте запуск импорта на 11-00.

  1. Создайте копию файла webgisdr.properties и дайте ему имя expfullbackups.properties. Сохраните этот файл в той же папке, что и файл webgisdr.properties.

    Расположение по умолчанию – C:\Program Files\Portal\tools\webgisdr.

  2. Откройте файл expfullbackups.properties в текстовом редакторе и добавьте в него информацию о вашем развертывании.

    • = <местоположение файлов резервных копий>SHARED_LOCATION

      Выберите доступное местоположение, где будет создана временная копия файлов резервной копии для ArcGIS Server, Portal for ArcGIS и ArcGIS Data Store. Доменная учетная запись, под которой запускается ArcGIS Server, Portal for ArcGIS и у сервиса ArcGIS Data Store, и у учетной записи, которая используется для запуска утилиты webgisdr, должны быть права доступа записи данных в эту папку. Убедитесь, что размер папки достаточен для хранения файлов архивов каждого компонента. Хотя эти файлы сжаты, они могут быть довольно большими, в зависимости от объема и типа имеющихся данных. Если у вас есть размещенные слои сцен и кэши, а для параметра INCLUDE_SCENE_TILE_CACHES установлено значение true, размер файла резервной копии ArcGIS Data Store будет особенно большим.

      Прежние версии:

      В Portal for ArcGIS 10.4 значением этого свойства было SHARED_FOLDER.

    • BACKUP_STORE_PROVIDER = {FileSystem | AmazonS3 | AzureBlob}

      Выберите хранение файла резервной копии webgissite в локальной системе или в облаке.

      Если вы хотите сохранить свою резервную копию ArcGIS Enterprise в локальном местоположении файлового хранилища, укажите FileSystem, и тогда утилита webgisdr сохранит файлы резервного копирования в файловом хранилище, которое будет задано для BACKUP_LOCATION.

      Если вы хотите хранить свои резервные копии ArcGIS Enterprise на Amazon Simple Storage Service (S3), создайте блок памяти S3 специально для хранения архивных файлов, созданных с помощью утилиты webgisdr, и обновите свойства S3, добавив информацию, необходимую для доступа к этому блоку памяти.

      Если вы хотите хранить свои резервные копии ArcGIS Enterprise на Azure Blob storage, создайте контейнер Azure Blob storage специально для хранения архивных файлов, созданных с помощью утилиты webgisdr, и обновите свойства Azure, добавив информацию, необходимую для доступа к этому контейнеру.

    • BACKUP_LOCATION = <местоположение файла резервного копирования на локальном ресурсе>

      Укажите местоположение файла резервной копии webgissite.

      Файлы резервного копирования сначала сохраняются в SHARED_LOCATION, но затем копируются в BACKUP_LOCATION. Убедитесь, что размер папки достаточен для хранения файла архива. Хотя этот файл сжат, он может быть довольно большим, в зависимости от объема и типа имеющихся данных. Учетная запись, которая запускает утилиту webgisdr должна иметь права доступа на запись в BACKUP_LOCATION.

      Если для BACKUP_LOCATION задана папка, то инструмент аварийного восстановления импортирует в эту папку самый последний доступный файл резервной копии. Если для BACKUP_LOCATION задан определённый файл резервной копии в папке, то инструмент аварийного восстановления импортирует именно этот файл.

    • PORTAL_ADMIN_URL = <URL директории администратора портала>

      Укажите URL-адрес директории администратора Portal for ArcGIS. Используйте формат https://portalhostname.domain.com:7443/arcgis, где portalhostname.domain.com – это полное имя компьютера, на котором установлен Portal for ArcGIS.

    • PORTAL_ADMIN_USERNAME = <имя пользователя администратора портала>

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

    • PORTAL_ADMIN_PASSWORD = <пароль администратора портала>

      Укажите пароль учетной записи администратора портала.

    • PORTAL_ADMIN_PASSWORD_ENCRYPTED = <true | false>

      При первом вводе в файл пароля администратора установите эту опцию на false. Когда вы сохраните этот файл, пароль будет зашифрован, а значение PORTAL_ADMIN_PASSWORD_ENCRYPTED будет установлено на true, чтобы указать, что пароль был зашифрован. Если в будущем понадобится изменить пароль, установите PORTAL_ADMIN_PASSWORD_ENCRYPTED = false, введите новый пароль администратора и сохраните этот файл.

    • INCLUDE_SCENE_TILE_CACHES = <true | false>

      Если на портале публикуются размещенные слои сцен и вы хотите включить в резервную копию данные кэша сцены, установите INCLUDE_SCENE_TILE_CACHES на true. Имейте в виду, что при выборе true, все данные кэша сцен будут включены в резервную копию, а не только новые данные кэша, созданные после последнего резервного копирования. Если вы знаете, что после последнего резервного копирования новый кэш сцены не создавался, или вы не публикуете сцены на портале, можно задать для INCLUDE_SCENE_TILE_CACHES значение false.

    • BACKUP_RESTORE_MODE = full.

  3. Сохраните изменения и закройте файл expfullbackups.properties.
  4. Создайте копию файла expfullbackups.properties и дайте ему имя expincremental.properties.
  5. Откройте файл expincremental.properties в текстовом редакторе и измените параметр BACKUP_RESTORE_MODE на incremental.
  6. Сохраните изменения и закройте файл expincremental.properties.
  7. Создайте два скрипта, которые будут запускать утилиту webgisdr для экспорта из первичного развертывания. Один из них вызывает файл expfullbackups.properties, а другой – файл expincremental.properties.

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

  8. Необходимо, чтобы в скриптах, которые используются для экспорта резервных копий, указывался способ их копирования в дежурное развертывание.

    Доменная учетная запись, под которой запускаются сервисы ArcGIS Server, Portal for ArcGIS и ArcGIS Data Store на первичном развертывании, должна иметь права доступа для записи в SHARED_LOCATION файла .properties. И кроме того, учетная запись, которая запускает утилиту webgisdr, должна иметь права доступа для записи в SHARED_LOCATION и в папку, куда вы будете копировать файлы резервной копии. Доменная учетная запись, под которой запускаются сервисы ArcGIS Server, Portal for ArcGIS и ArcGIS Data Store на дежурном развертывании, должна иметь права доступа хотя бы для чтения в этих папках.

  9. Если развертывание ArcGIS Enterprise содержит картографический сервис и кэши размещенного слоя листов, скриптам также необходимо скопировать их из папки (папок) кэша сайтов ArcGIS Server первичного развертывания в папку (папки) кэша в дежурном развертывании.
  10. Скопируйте файлы expfullbackups.properties и expincremental.properties в папку файла webgisdr.properties в дежурном развертывании (по умолчанию используется C:\Program Files\Portal\tools\webgisdr) и переименуйте файлы impfullbackups.properties и impincremental.properties соответственно.
  11. Обновите SHARED_LOCATION, BACKUP_LOCATION (если BACKUP_STORE_PROVIDER установлено на FileSystem), и PORTAL_ADMIN_URL в свойствах для параметров среды отдельного развёртывания.
  12. Задайте расписание работы инструмента webgisdr в первичном и дежурном развертываниях. Это можно сделать при помощи Диспетчера задач Windows. Определите расписание резервного копирования и настройте автоматические задачи, чтобы они указывали соответствующий файл свойств. Два скрипта, которые импортировали резервные копии, должны вызвать файлы свойств, которые вы скопировали в дежурное развертывание.
    Подсказка:

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