ArcGIS Server 10.1 中引入了重要的架构更改。因此,如果您要从 10.0 或较早版本升级至 10.9,则应严格遵守本主题中的一览表。如果您要将 10.1 或更高版本升级到 ArcGIS Server 10.9,则下列升级一览表不适用。应参阅现有 ArcGIS Server 用户来查看升级常见问题和主题链接,这为您提供了全面的升级说明。
从 10.0 升级到 10.9 之前,您必须首先卸载所有的 ArcGIS 产品。由于 10.9 安装不会识别 10.0 的服务配置,因此强烈建议您在卸载 10.0 服务器之前在开发或测试环境中创建升级的原型。本一览表中的步骤可帮助您对现有服务器进行清点,以便能够在 10.9 服务器上重新创建其服务和设置。
本一览表包含了每位用户都需要执行的核心升级和迁移步骤。您可能会发现需要进行其他调整以支持特定的一组服务或 Web 应用程序。在大多数情况下,这些其他调整应为微调。
检查操作系统先决条件
确定托管当前安装了 ArcGIS Server 的操作系统 (OS) 是 32 位还是 64 位。ArcGIS Server10.9 需要 64 位的操作系统,如果操作系统不满足此要求,安装将退出且安装失败。
如果当前操作系统为 32 位,请确保硬件能够兼容支持托管 64 位操作系统。如果无法托管 64 位操作系统,请不要继续卸载 ArcGIS Server。您需要新硬件来支持 ArcGIS Server 的最新版本。
确定当前安装的 ArcGIS 产品和版本
浏览计算机的文件系统并记下当前安装的 ArcGIS 产品和版本。
备份重要配置文件的副本
卸载当前的 ArcGIS Server 之前,请制作以下文件的副本并将其放在一个稳定安全的位置。尽管您无法直接使用这些文件恢复您的服务,但它们会保留您所设置的参考。这些备份在升级中断或推迟时也非常有用。
- <ArcGIS Server 安装目录>/arcgis/support/Instance.log
- <ArcGIS Server 安装目录>/arcgis/server/system/Server.dat
- <ArcGIS Server 安装目录>/arcgis/server/system/ServerTypes.dat
- <ArcGIS Server 安装目录>/arcgis/server/user/cfg(此位置下的所有文件夹和文件)
创建使用您的服务器的客户端应用程序列表
考虑一下您的员工和客户用于连接到 ArcGIS Server 上托管的 Web 服务的各种客户端应用程序。这些应用程序可包括但不限于以下各项:
- 通过 ArcGIS API for JavaScript 构建的应用程序
- Java 和 .NET Web ADF 应用程序,包括通过以前版本的 ArcGIS Server Manager 构建的应用程序
- 使用Map Viewer构建并保存在ArcGIS Online中的地图
- 通过适用于 iOS、Android 和 Windows Phone 的 ArcGIS API 构建的应用程序
- 桌面应用程序(例如 ArcMap)和通过 ArcGIS Engine 构建的应用程序
- 第三方和 OGC 应用程序
根据他们使用的连接类型和升级时您配置的服务器 URL,您可能需要在这些应用程序中进行一些更新(在本主题的其余部分通篇介绍)。您可能需要联系这些应用程序的所有者并提醒他们您正在升级。
确定是否有任何客户端应用程序通过 DCOM (ArcGIS Server Local) 连接来连接到 ArcGIS Server
ArcGIS Server 10.0 和之前版本同时支持 DCOM (ArcGIS Server Local) 和 HTTP (ArcGIS Server Internet) 连接。从 10.1 版本开始,已弃用对 ArcGIS Server 的 DCOM 连接的支持。升级前,您需要将 web 应用程序重构为使用 HTTP 连接。如果您出于访问 ArcObjects 的目的使用 DCOM 连接,则需要删除 ArcObjects 编码或将其在服务器对象扩展中打包。
确定连接到 ArcGIS Server 时现有应用程序使用的 URL 格式
连接到 ArcGIS Server 时,您需要确定现有应用程序使用的 URL 格式。这将帮助您了解升级后应用程序是否需要进行修改。通过 ArcGIS Web Adaptor,您可以将站点设计为匹配在之前版本中使用的 URL,从而节省了更新所有应用程序代码的时间和精力。
通过 REST 或 SOAP 建立到服务器的 HTTP 连接的应用程序通常遵从以下语法:
- https://gisserver.domain.com:6443/arcgis/rest
或者
- https://gisserver.domain.com:6443/arcgis/services
如果 ArcGIS Server 已配置为使用 Web 服务器的默认端口(例如端口 443),您的 URL 很可能不包括端口 :6443。请注意,端口 6443 与使用 HTTPS 相对应,该行为由 ArcGIS Server 默认强制执行。如果您的站点使用仅 HTTP,ArcGIS Server 端口将为 6080。
记下您的服务是通过默认实例名称“arcgis”还是通过某些其他实例名称进行访问。
升级 ArcGIS Server 时,您的站点将使用端口 6443 并将在 URL 中显示站点名称 arcgis。通过安装 ArcGIS Web Adapter,您可以通过不同的端口和站点名称向外部用户显示您的站点。如果不使用 ArcGIS Web Adapter,您需要更新应用程序以使用引用 6443 端口的新服务器 URL。
建立现有服务的清单
创建所有现有服务的清单以及包含它们的文件夹结构。例如:
- MyServer(根目录)
- Service1(服务类型)
- Service2(服务类型)
- Folder1
- Service3
- Service4
- Folder2
- . . .
- . . .
记下服务的属性
仔细记录每个服务的属性以便您能够在升级后重新创建该服务。您应该记下 ArcCatalog 的服务属性 对话框或管理器中对应的对话框中的以下内容:
- 描述 - 在常规选项卡中,复制描述属性(如果已填充)。此项在您重新创建服务时可以重复使用。
- 文档路径 - 文档路径是卸载之前要记下的最重要的信息。查看参数选项卡以了解源文件(例如 .mxd、.tbx 或 .loc)在磁盘中的位置。一旦升级后,您将返回到这些文档并重新将其发布到服务器。对于使用 .msd 文件的地图服务,还将查找并记下 .mxd 的位置。
- 参数 - 记下参数选项卡中的所有其他属性值。
- 功能和操作 - 在功能选项卡中,记下启用的功能和允许的操作。
- 池化参数 - 查看池化选项卡并记下配置该服务使用的最小和最大实例数。此外,记下记录的超时值。您不必记录服务是池化还是非池化,因为 10.1 版本以及更高版本中的所有服务均已池化。
- 进程 - 查看进程选项卡并记下隔离值和循环值。
- 缓存 - 查看缓存选项卡并记录服务是从数据动态绘制还是使用缓存中的切片。如果服务使用缓存,请记下缓存目录位置。
建立 KML 网络链接的清单
通过登录 Manager 并单击服务 > KML 网络链接来确定您的服务器是否托管了任何 KML 网络链接。如果您看到列出了 KMZ 文件,请记下这些文件。此外,请浏览至 ArcGIS Server 实例的 KML 文件夹并备份此处所有 KMZ 文件的副本。
记下安全性配置的详细信息
ArcGIS Server for Microsoft .NET Framework
通过打开 Manager 并浏览至安全性 > 设置来确定是否启用了服务器的安全性。
迁移用户和角色
如果 GIS 服务的安全性已启用,请记下安全性存储的位置(该位置在同一页面上可见)并按照下面特定存储类型的说明迁移您的用户和角色:
- SQL Server - 要在 10.9 中使用 10.0 SQL Server 存储,请参阅在更高版本中使用 10.0 .NET SQL Server 安全性存储。
- Windows 本地用户和组 - 如果使用本地 Windows 组分配 Web 服务或文件夹的权限,请使用安全性 > 用户和安全性 > 角色页面建立用户和角色的清单。您将使用此清单在 10.9 中重新创建用户和角色。
- Windows 域用户和组 - 如果使用 Windows 域组分配 Web 服务或文件夹的权限,则可在 10.9 中继续使用同一域。为此,您必须在作为相同域组成部分的计算机上安装 ArcGIS Server。
记下文件夹和服务的权限
如果 GIS 服务的安全性已启用,请使用管理器确定哪些角色可以访问每个文件夹和服务。要执行此操作,请单击服务 > 管理服务 > 管理文件夹,然后单击权限链接。记录允许的角色列表以便能够在 10.9 服务器上应用这些权限。通过单击服务旁边的权限(锁)按钮,对每项服务重复此过程。
ArcGIS Server for Java Platform
通过打开 Manager 并浏览至安全性 > 设置来确定是否启用了服务器的安全性。
迁移用户和角色
如果 GIS 服务的安全性已启用,单击安全性存储选项卡确定所使用的安全性存储类型,然后按照下面特定存储类型的说明迁移您的用户和角色:
- 内部数据存储或外部数据库存储 - 如果使用的安全性存储是内部数据存储或外部数据库,则请使用安全性 > 用户和安全性 > 角色页面建立用户和角色的清单。您将使用此清单在已升级站点中重新创建用户和角色。
- LDAP 存储 - 如果使用的安全性存储是 LDAP 服务器,请记录 LDAP 连接属性。您将使用这些属性在已升级站点中使用同一 LDAP 服务器作为安全性存储。
- 活动目录 - 如果安全性存储是活动目录,则请确定托管活动目录的域。您将需要在作为相同域组成部分的计算机上安装 ArcGIS Server。这将使服务器能够使用该域的活动目录服务器作为安全性存储。
记下文件夹和服务的权限
确定允许哪些角色访问每个文件夹和服务。要执行此操作,请单击服务 > 管理服务,然后单击文件夹名称旁边的权限(锁)按钮。记录允许的角色列表以便能够在已升级的服务器上应用这些权限。通过单击服务旁边的权限(锁)按钮,对根文件夹内的每项服务重复此过程。对根文件夹内的每个子文件夹重复此过程。
注销服务器对象扩展库
卸载 ArcGIS Server 之前,要注销已在服务器对象容器 (SOC) 计算机上部署的任何服务器对象扩展库。不必使用 ArcGIS Server 注销扩展,应该仅注销库(例如,.NET 扩展中的 DLL)。
服务器对象扩展不会自动从 10.0 迁移到更高版本。需要对其进行重新构建和重新部署。
验证已升级版本的授权和许可信息
卸载 ArcGIS Server 之前,验证您是否具有必需的授权代码或配置文件以在升级新版本后对服务器进行授权。
卸载 ArcGIS Server 和其他 ArcGIS 产品
从服务器卸载所有 ArcGIS 产品。如果 SOM 和 SOC 组件分布在多台计算机中,请从所有计算机中卸载这些组件。
卸载完毕后,请备份安装位置 (/ArcGIS/Server10.0) 和实例根目录位置中留下的任何文件。
安装 10.9 版本并创建站点
安装 ArcGIS Server 10.9 并创建站点。您可以在多个计算机上安装服务器并在需要时将其加入到同一站点。请参阅安装指南和创建新站点。
也可能需要在网络上的至少一台计算机上安装 ArcGIS 10.9 for Desktop。ArcMap 和 ArcCatalog 将识别出在目录树中存在的任何之前的 ArcGIS Server 连接。删除与旧服务器之间的连接并建立与 10.9 服务器的新连接。请参阅从 ArcGIS Desktop 连接到 ArcGIS Server。
将您的数据注册到服务器
10.0 版本中未包含的 ArcGIS Server 管理的一个方面是数据存储,即服务器已知的包含数据并应用了必要权限的位置列表。安装 10.9 时,应授予以前的服务所使用的数据 ArcGIS Server 帐户权限。然后通过使用 ArcGIS for Desktop 将数据注册到 ArcGIS Server 中的步骤向 ArcGIS Server 注册数据库和数据文件夹。
要复制先前版本中存在的工作流,可以注册文件夹和数据库,因此发布者和服务器会使用相同路径或连接信息。换句话说,发布者和服务器访问通用文件夹以外的数据,这些数据对两者均可见。但是,提供了更为复杂的工作流,允许文件在发布期间于发布者计算机和服务器之间进行传输时进行自动路径校正。
最后,向 ArcGIS Server 注册现有的服务器缓存目录,或将缓存移动到创建站点的同时所创建的服务器缓存目录中。
发布服务和配置属性
现在,您可以开始发布服务并以卸载之前所具有的相同属性配置这些服务。发布体验在 10.1 中已更改,目前在 ArcGIS Desktop 中进行。按照如何发布服务中的说明进行操作以熟悉发布工作流。如果发布的是地图服务,您必须在 ArcMap 中打开源 .mxd 文件;无法像在 10.0 或更早版本中那样直接发布 .msd 文件。
当您逐步完成发布过程时,您可以使用服务编辑器对话框设置从以前的服务所记录的属性。大多数属性的工作方式与在 10.0 或更早版本中一样。值得注意的是最大和最小实例数属性,现在这些属性是指每个 ArcGIS Server 计算机的最小和最大实例数,而不是每个站点作为一个整体。
以前的版本中创建的地图和 globe 缓存可以在升级的站点中使用,前提是切片位于注册的服务缓存目录中并且 ArcGIS Server 文件夹和服务名称与包含切片的目录名称一致。该目录的命名格式应为 <文件夹名称>_<服务名称>,这意味着如果您有具有服务 Fresno 的文件夹 California,则该文件夹包含的切片应命名为 California_Fresno。
您将看到一些已在升级站点中运行的服务,它们将帮助您完成发布 (PublishingTools) 和缓存(CachingTools 和 CachingControllers)。如果您打算进行大量缓存并且要指定更多的服务器功能用于缓存作业,应增加允许运行的 CachingTools 服务的最大实例数。在 10.0 和更早版本中,您添加更多缓存的地图或 globe 服务实例;现在,需要添加更多 CachingTools 实例。
重新构建和重新部署服务器对象扩展
如果您使用服务器对象扩展进行先前的部署,则现在可对它们进行重新构建并将它们部署到 ArcGIS Server。创建在 10.1 和更高版本中使用的 .SOE 文件需要进行重新构建。.SOE 文件极大地简化了部署,部署通常使用管理器执行。请参阅将 .NET 服务器对象扩展模块迁移至 10.9 和将 Java 服务器对象扩展模块迁移至 10.9。
重新部署服务器对象扩展之后,您需要在任何使用它们的服务上启用它们并设置扩展属性(如果存在)。
安装 ArcGIS Web Adaptor。
ArcGIS Web Adaptor 可帮助您将 ArcGIS Server 站点与现有的企业级 Web 服务器相集成。如果要修改用于访问服务器的端口和 URL,请安装 ArcGIS Web Adaptor。在大多数情况下,您可以获得与以前版本中相同的 URL,从而避免了由于 Web 应用程序更新而带来的各种问题。关于 ArcGIS Web Adaptor 中还列出了 Web Adaptor 的各种其他优点。
如果 ArcGIS Server 实例使用默认名称“arcgis”,并且希望在使用 ArcGIS Web Adaptor 后在升级的站点中依然使用该名称,则需要在运行 Web Adaptor 安装程序之前进行一些准备工作。使用 web 服务器软件移除名为 arcgis 的虚拟目录。然后删除磁盘上用于存储 ArcGIS Server 实例文件的文件夹,例如,C:\Inetpub\wwwroot\arcgis。(执行此操作之前您可能希望创建备份。) 最后,安装 ArcGIS Web Adaptor 并运行 Web Adaptor 配置页面。
如果没有安装 ArcGIS Web Adaptor,您需要将客户端应用程序中使用的 URL 更新为指向已升级服务器的 URL。对于 REST 服务,此 URL 为 http://gisserver.domain.com:6080/arcgis/rest/services。
定义安全性存储
此时,您可以开始重新构建服务中的安全性设置。您可以将 ArcGIS Server 连接到以前的用户和角色存储,也可以使用 ArcGIS Server 中的内置存储重新创建用户和角色存储。一旦定义用户和角色存储后,您就可以重新分配为每个文件夹和服务记录的权限。
重新发布 KML 网络链接
如果您记下了以前的服务器上可用的任何 KML 网络链接,则可以将其与已升级的 ArcGIS Server 站点一起重新发布。请参阅将现有的 KML 网络链接上传到 ArcGIS Server。
迁移并测试您的 web 应用程序
现在您可以测试所有 web 应用程序并更新它们所使用的 URL(如有需要)。