Skip To Content

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

Когда и первичное, и дежурное развертывания ArcGIS Enterprise будут созданы, вы можете автоматизировать репликацию из первичного развертывания в дежурное, используя для этого инструмент Web GIS Disaster Recovery (WebGISDR), отдельные файлы свойств для полных и накопительных резервных копий, а также создать расписание задания с помощью задания cron.

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

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

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

Задайте функцию планирования cron для запуска каждого из этих скриптов в определенное время.

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

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

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

    Расположение по умолчанию /arcgis/portal/tools/webgisdr.

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

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

    Так, строка скрипта, который будет создавать полные резервные копии, должна содержать что-то похожее на следующее:

    webgisdr --export --file /arcgis/portal/tools/webgisdr/fullbackups.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 в дежурном развертывании (по умолчанию используется /arcgis/portal/tools/webgisdr) и переименуйте файлы impfullbackups.properties и impincremental.properties соответственно.
  11. Обновите SHARED_LOCATION, BACKUP_LOCATION (если BACKUP_STORE_PROVIDER установлено на FileSystem), и PORTAL_ADMIN_URL в свойствах для параметров среды отдельного развёртывания.
  12. Задайте расписание работы инструмента WebGISDR в первичном и дежурном развертываниях. Вы можете сделать это, используя cron job. Определите расписание резервного копирования и настройте автоматические задачи, чтобы они указывали соответствующий файл свойств. Два скрипта, которые импортировали резервные копии, должны вызвать файлы свойств, которые вы скопировали в дежурное развертывание.
    Подсказка:

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