在 ArcGIS Enterprise 中,“迁移”一词描述了组织将现有部署或部分现有部署移至备用部署的要求。 此备用部署可能较新,位于不同的操作系统或不同的基础设施上。 迁移策略可用于将现有内容从初始部署移动到备用部署。
常见策略
各个组织之间的架构和迁移需求各不相同,相应的策略和解决方案也是如此。 选择迁移内容的具体策略可能会根据具体因素而有所不同。 选择迁移策略时需要考虑的因素包括:
- 哪些内容需要迁移? 这可以包括所有内容、所有内容以及用户和组、或者内容的特定子集。
- 涉及哪些操作系统? 从同一类型的操作系统(例如 Windows Server 2019)迁移到 Windows Server 2022 时,与从 Windows 部署迁移到 Linux 部署时需要考虑不同的注意事项。
- 涉及什么类型的基础设施? 将内容从 ArcGIS Enterprise 迁移到 ArcGIS Enterprise 与从 ArcGIS Enterprise 迁移到 ArcGIS Online 时,迁移内容的考虑因素会有所不同。 从本地部署迁移到云时还需要考虑其他注意事项,反之亦然。
以下各部分概述了常见的迁移策略,其中包含指向工具、帮助文档、博客和其他资源的链接,用以支持您在所在领域的工作。
将内容从一个 ArcGIS 组织迁移到另一个同类组织
如果您所在的组织打算执行以下操作,则此策略可能会有所帮助:
- 在各个组织中推广内容,例如从开发到过渡再到生产。
- 在将选择内容迁移到 ArcGIS Online 中时,维护在 ArcGIS Enterprise 中选择的内容,反之亦然(以交付私有项目和公共项目的组合等)。
- 在将选择内容迁移到一个 ArcGIS Enterprise 部署(例如,在离线环境下)中时,维护在另一个 ArcGIS Enterprise 部署中选择的内容。
迁移托管内容
复制或迁移托管图层、web 地图和项目时,可以在 ArcGIS API for Python 或 ArcGIS REST API 中使用以下工具和资源: 如果您以前有 ArcGIS API for Python 的经验,以下工具和资源将更容易使用:
- 克隆内容指南详细说明了 clone_items() 函数跨环境的使用方法。 clone_items() 函数支持托管服务、web 地图和应用程序以及其他项目类型。 将所有内容从一个组织迁移到另一个组织时,应考虑这种类型的迁移策略。
- 自 10.8.1 版本起,arcgis.gis.GroupMigrationManager.create() 函数可用于将 ArcGIS Enterprise 组织中的群组内容作为包导出。 管理员可以使用此函数提取选定的群组内容并将其导入另一个组织的群组。 此函数支持托管要素图层、web 地图和应用程序以及其他基于文本的项目。 在迁移过程中维护项目 ID。 将所有内容子集从一个组织迁移到另一个组织时,应考虑这种类型的迁移策略。
- 自 10.8.1 版本起,arcgis.gis.GroupMigrationManager.load() 函数可用于将导出的包作为群组内容导入到 ArcGIS Enterprise 组织中。 导入后,项目所有权默认为导入包的管理员。 然后,可以根据需要将项目分配给其他所有者。 将所有内容子集从一个组织迁移到另一个组织时,应考虑这种类型的迁移策略。
如果不熟悉 ArcGIS API for Python,导出和导入群组内容操作可供 ArcGIS REST API 将内容从一个 ArcGIS Enterprise 组织移动到另一个同类组织。 当将内容从开发移动到过渡环境或跨离线环境移动时,这些操作会非常有用。 将所有内容子集从一个组织迁移到另一个组织时,应考虑这种类型的迁移策略。
迁移引用的内容
迁移引用的内容时,引用用户管理的数据存储的 GIS 服务将需要发布或共享到每个 ArcGIS Enterprise 部署。 可以使用以下方法共享引用的服务:
- 从 ArcGIS Pro 发布 web 图层。 从 ArcGIS Pro 发布的服务将引用共享 Web 图层时使用的数据源。 这意味着如果您想引用不同的数据源,可能需要创建新地图。
- 在 ArcGIS Server Manager 发布服务定义文件 (.sd)。 从该数据库连接发布的所有服务都将引用相同的源数据。
- 在 ArcGIS Enterprise 门户中批量发布。 从该数据库连接发布的所有服务都将引用相同的源数据。
此外,可以使用 ArcPy 共享模块 arcpy.sharing 实现服务自动化。 当同时将相同的 GIS 服务共享到多个 ArcGIS Enterprise 部署时,应考虑此迁移策略。
注:
尽管上述方案描述的是跨环境移动项目,不过跨组织共享项目也是十分常见的。 在这种情况下,可跨环境复制项目,以便跨组织交付和分发公共和私有项目。 对于此策略,您可以使用分布式协作。 虽然分布式协作可用于在环境之间共享内容,但它并不是为在环境之间迁移内容而设计的。
将现有部署从一台计算机迁移到另一台计算机
如果您的组织需要将现有软件组件迁移到更新的硬件或更新的操作系统,则此策略可能会有所帮助。 此策略可用于在本地或云中托管的单机或多机部署。 从相同类型的操作系统迁移到另一个操作系统时,应考虑该类型的迁移策略。
- 要在部署中替换计算机而又不会丢失内容或中断服务,请使用“加入站点”操作将软件组件迁移到另一台计算机。 加入站点操作可通过门户管理员目录和服务器管理员目录进行。 有关其他详细信息,请参阅本博客,其中包含迁移 ArcGIS Data Store 的相关步骤。
- 稍微复杂一点的工作流需要使用 webgisdr 实用程序。 您可能更喜欢此工作流,因为它不会影响生产环境中的工作。 有关其他详细信息,请参阅本博客。
将现有的本地部署迁移到云部署
如果您所在的组织打算执行以下操作,则此策略可能会有所帮助:
- 添加新功能。
- 提高系统性能和容量。
- 降低系统成本。
- 改善或遵守安全标准。
要确定此迁移策略是否适合您的组织,请查看以下内容:
- Enterprise 和云迁移页面 - 请从这里开始,获取有关迁移到云部署的介绍。
- ArcGIS Enterprise 和云迁移指南 - 本指南提供了一种详细的方法来理解、计划和采取相应措施,以解决组织的迁移需求。
- 云博客中的 ArcGIS Enterprise - 本博客概述了云部署。
- AWS CloudFormation and ArcGIS - 熟悉可用于 AWS 部署的云部署工具。
- 在 Microsoft Azure 上部署 ArcGIS Enterprise - 熟悉可用于 Microsoft Azure 部署的云部署工具。
升级和迁移
升级 ArcGIS Enterprise 软件并不是一种迁移策略。 升级 ArcGIS Enterprise(其中包括基础部署组件、服务器角色等)时,目标通常是获得对新特性、功能和应用程序的访问权限。 例如,一个组织可能正在使用 11.1 版本,但计划升级版本以获取对 11.2 版本中所提供的新特性或应用程序的访问权限。 在这种情况下,系统会备份现有部署,并在现有软件之上安装较新的软件版本以使其保持最新。
但是,通常需要结合实施迁移策略来完成软件升级 - 例如迁移到新操作系统或从本地部署迁移到云部署。