创建 ArcGIS Enterprise 主部署和备用部署后,可使用 webgisdr 实用程序、独立的完整备份和增量备份属性文件以及使用 cron 作业的计划任务自动进行从主部署到备用部署的复制。
要使主部署和备用部署更加密切地保持同步,请使用 webgisdr 实用程序定期创建完整备份,但是要导出完整备份之间的增量更改。例如,如果 ArcGIS Enterprise 部署中的服务和数据在一天内进行大量更改,则可在午夜创建完整备份并分别在 10:00 a.m.、2:00 p.m. 和 6:00 p.m. 导出增量更改以获取整个工作日中发生的更改。
要自动执行此操作,请创建四个模板属性文件 (webgisdr.properties) 副本和四个不同的脚本以完成以下任务:
- 从主部署中导出完整备份,然后将文件复制到备用部署。
- 从主部署中导出增量备份并复制到备用部署。
- 将完整备份导入至备用部署。
- 将增量备份导入至备用部署。
设置 cron 作业以在特定时间运行各个脚本。
确定运行脚本的频率时,需要考虑完成导出和复制数据所花费的时间。您首先需要手动运行此过程以了解创建完整备份并将其通过网络复制到备用部署所需的时间,以及创建增量备份并通过网络将其复制到备用部署所需的时间。包括 30 到 60 分钟的缓冲,以应对网络和硬件性能的波动。
例如,如果创建增量备份需要 20 分钟,将其复制到备用部署需要 5 分钟,则请在增量备份脚本运行一小时后安排导入增量备份。因此,如果创建增量备份的脚本在 10:00 a.m. 运行,请将导入安排在 11:00 a.m. 运行。
- 创建 webgisdr.properties 文件的副本并将其命名为 expfullbackups.properties。将该文件与 webgisdr.properties 文件保存在同一位置。
默认位置为 /arcgis/portal/tools/webgisdr。
- 在文本编辑器中打开 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。
- PORTAL_ADMIN_URL = <portal admin directory URL>
指定 Portal for ArcGIS 管理目录的 URL。使用格式 https://portalhostname.domain.com:7443/arcgis,其中 portalhostname.domain.com 为安装了 Portal for ArcGIS 的计算机的完全限定名称。
- PORTAL_ADMIN_USERNAME = <portal administrator user name>
指定分配给 Esri 定义的管理员角色的门户成员的用户名。
- PORTAL_ADMIN_PASSWORD = <portal administrator 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。
- SHARED_LOCATION = <备份文件位置>
- 保存更改并关闭 expfullbackups.properties 文件。
- 创建 expfullbackups.properties 文件的副本并将其命名为 expincremental.properties。
- 在文本编辑器中打开 expincremental.properties 文件并将 BACKUP_RESTORE_MODE 设置更改为 incremental。
- 保存更改并关闭 expincremental.properties 文件。
- 创建两个将运行 webgisdr 实用程序以从主部署导出的脚本。将其中一个脚本设置为调用 expfullbackups.properties 文件,将另一个脚本设置为调用 expincremental.properties 文件。
您将创建两个脚本,以便您可以安排一个脚本在特定的时间内运行以创建完整备份,一个在其他时间内运行以创建增量备份。
例如,放入脚本中以创建完整备份的行将包含以下类似内容:
webgisdr --export --file /arcgis/portal/tools/webgisdr/fullbackups.properties
- 用于导出备份的脚本需要包括将备份文件复制到备用部署的方法。
在主部署中安装 ArcGIS Server、Portal for ArcGIS 和 ArcGIS Data Store 的帐户必须对在 .properties 文件中设置的 SHARED_LOCATION 具有写入权限。此外,运行 webgisdr 实用程序的帐户必须对 SHARED_LOCATION 和复制备份文件的目标位置具有读取和写入权限。在备用部署中安装 ArcGIS Server、Portal for ArcGIS 和 ArcGIS Data Store 的帐户必须至少具有这些位置的读取权限。
- 如果您的 ArcGIS Enterprise 部署包括地图服务和托管切片图层缓存,则脚本还需要将这些缓存从主部署中 ArcGIS Server 站点的(一个或多个)缓存目录复制到备用部署上的(一个或多个)缓存目录中。
- 将 expfullbackups.properties 和 expincremental.properties 文件复制到备用部署上 webgisdr.properties 文件所在的位置(默认为 /arcgis/portal/tools/webgisdr),然后分别重命名 impfullbackups.properties 和 impincremental.properties 文件。
- 要导入备份的两个脚本需要调用已复制到备用部署的属性文件。
- 安排脚本在主部署和备用部署上运行。
如简介中所述,您需要估算完成完整备份和增量备份所需的时间以及复制备份文件、向备份文件中添加缓冲时间并相应安排脚本运行所需的时间。