部署方案
本主题介绍了根据不同的站点容量和可用性要求构建 ArcGIS Server 站点的不同方法。
以下术语用于解释每种部署方案:
- 站点:一个站点由多个组件(如 GIS 服务器和 ArcGIS Web Adaptor)构成,这些组件可以有选择地部署到多台计算机上以提高计算能力和冗余性。有关更详细的描述,请参阅 ArcGIS Server 站点的内部。
- GIS 服务器:站点的主要组件,用于处理发布到 GIS web 服务的请求。GIS 服务器可绘制地图、运行工具、提供影像以及执行 ArcGIS 所提供的众多的其他操作。
- ArcGIS Web Adaptor:可选组件,用于配置站点的 Web 入口点。ArcGIS Web Adaptor 与 Web 服务器相集成并将收到的请求分配给 GIS 服务器。有关详细信息,请参阅关于ArcGIS Web Adaptor。
- 服务器目录:一组包含某些特定类型的文件的目录,这些文件可对您的服务提供支持。这些文件包括缓存、搜索索引和地理处理作业结果。有关详细信息,请参阅关于服务器目录。
- 配置存储:一个包含配置信息(例如参与站点的 GIS 服务器的列表)的位置。该配置存储必须可使站点运行。有关详细信息,请参阅关于配置存储。
- 数据:用于支持 Web 服务的数据,例如要素类、工具、影像和定位器。有关详细信息,请参阅使数据可供 ArcGIS Server 访问。
构建 ArcGIS Server 站点时,以下情形具有指导意义,可供参考。虽然您可将站点配置为与以下任一情形完全相同,但是这些配置往往是非常灵活的,您可以根据特定需求以及硬件资源情况进行调整。
开发人员沙盒站点
如果您仅仅是开发或试用 ArcGIS Server,则无需安装 Web 服务器或 Web Adaptor 而只需安装 GIS 服务器。
这种情况下,站点配置了一台 GIS 服务器。数据、服务器目录和配置存储位于本地 GIS 服务器上。PostgreSQL 数据库非常适合在 GIS 服务器上创建小型地理数据库实例。
客户端通过 使用 6080 端口的 HTTP 直接连接到 GIS 服务器,以访问开发人员沙盒站点。例如,站点的 URL 可能是 http://gisserver.domain.com:6080。GIS 服务器只托管服务;该配置中没有用于托管 Web 应用程序的 Web 服务器。
开发人员沙盒站点的应用案例和优势
该配置非常适用于原型服务和孤立的沙盒测试。安装和维护相对简单。
开发人员沙盒站点的缺点
该配置并非十分安全,因为 ArcGIS Server 管理器和 ArcGIS Server 管理员目录通过同一端口暴露出来,而其他所有人都可使用这个端口来访问服务。而且,该配置无法托管 Web 应用程序并且在 GIS 服务器转为离线时不能实现故障转移。
单机站点
生产站点的相对最简单的配置是通过 Web Adaptor 提供一个 GIS 服务器。
建议使用 Web Adaptor,这样收到的请求就可以传入所建立的 Web 服务器。从而可提供更多安全设置并且可托管 Web 应用程序。如果资源短缺或者并不需要容纳大量的并发请求,则可以在一台机器上同时安装 GIS 服务器和 Web Adaptor。而且,这台计算机上还必须安装一个 Web 服务器。
例如,下图中的站点在端口 80 配置了一个 Web Adaptor 且可通过 URL http://webadaptor.domain.com/arcgis 进行访问。Web Adaptor 将收到的客户端请求传送到端口 6080 的 GIS 服务器。服务器管理员应通过端口 6080 登录管理器或管理员目录。
您可以构建站点,来使用组织中现有 IT 架构的某些部分。下图中,Web Adaptor 被转移到另一台计算机的 Web 服务器上。同样,数据、服务器目录和配置存储也被放置到一台专用的数据服务器中。这表示“单机站点”这个词在技术方面等同于“单 GIS 服务器站点”。
如果组织中的 Web 服务器与 GIS 服务器具有一组不同的管理员或访问策略,那么最好将 Web 服务器放在一台单独的机器上。
将数据放置到另一台计算机上可方便地向站点中添加或从中移除 GIS 服务器,而不影响数据路径的设置。将服务器目录和配置存储放置到一台冗余网络存储设备中可大大改善备份和恢复资源的能力。
单机站点的应用案例和优势
如上图所示,具有 Web Adaptor 的单机站点非常适用于容纳少量并发用户。此外,无论是在开发过程中,还是在需要提高安全性或具备 Web 应用程序托管能力的原型设计阶段,单机站点也都很有用。单机站点的配置相对简单,可以将单机站点整合到现有 Web 服务器和数据存储架构中。
单机站点的缺点
GIS 服务器转为离线时,单机站点不具备故障转移能力。而且,GIS 服务器的容量将受限于单机的物理硬件特征。
多机站点
站点可包含多个 GIS 服务器,以处理增加的流量或在其中一个 GIS 服务器离线时快速地提供一个后备服务器。下图显示了将一个站点配置成具有多台 GIS 服务器的最简单方法。Web Adaptor 检测添加到站点的 GIS 服务器并且以轮询方式将请求转发到每个站点。GIS 服务器也将在相互间执行一定程度的请求分配。
在多机部署中,为了使站点能够正常运行,每台 GIS 服务器必须具有相同版本号。此外,完全相同的许可必须应用于该站点中的每台 GIS 服务器上。
使用多个 GIS 服务器时,可使用两种策略存储数据。上图所示的方法确保数据位于一个集中位置且对于每台 GIS 服务器都是可以看见的。数据只需保留在一个位置上,并且如果 intranet 连接情况较好的话,建议采用这种配置。
如下所示,另一种数据存储方法是将数据的本地复本放置到每台 GIS 服务器计算机上的相同路径下。该策略可减少网络调用并且可以在 intranet 连接速度较慢时提升性能。但是,使用此架构来维护大型的、变化频繁的数据集是相当困难的。
如果上述任意一种情况下的需求有所增加,可手动或自动(通过脚本)将其他 GIS 服务器计算机加入该站点。此架构非常适合云计算,任何一台 GIS 服务器都可以随时添加到站点中去,也可以从站点中移除。
利用集群
具有两个或多个 GIS 服务器的大型站点可利用集群。集群是一组经过配置以运行一小组专用服务的 GIS 服务器。在下图中,集群 A 可配置为运行地图服务,而集群 B(具有更高的处理能力)可配置为运行地理处理服务。
一些服务器操作(如批量地理编码)非常占用 CPU 资源。使用集群服务器执行此类操作时,可释放站点中的其他计算机,使其余服务继续保持在线状态,不会受到妨碍。
集群也可以用在硬件资源多种多样的情况下。例如,可以将旧的、速度慢的服务器放在自己的集群中以执行优先级低的作业。
有关详细信息,请参阅关于 GIS 服务器集群。
使用多个 Web 服务器
为了确保站点高度可用,还可以在 Web 服务器层上建立冗余。在下图中,两个装有 Web Adaptor 的 Web 服务器作为端口 80 上的站点的相同入口点。这样有助于使站点在其中一个 Web 服务器意外停电的情况下继续运行。还可以减少第一台 Web 服务器计算机的负载。
以下为其他几种可能需要两个 Web Adaptor 的情况,虽然这些情况不十分常见:
- 您需要内部用户通过 Web Adaptor 连接到管理器,但又希望阻止外部用户访问管理器登录界面。如果 ArcGIS Server 位于外围网络 (DMZ),并且防火墙阻止其通过端口 6080 接收来自内部网络的连接,那么即可实现上述要求。在这种情况下,您可以仅为内部用户安装另一个 Web Adaptor,用户通过您的防火墙所允许的任何一个端口进行通信。
- 您想阻止外部用户访问管理器登录界面,但是还要执行 Web 层身份验证。在这种情况下,您可以仅为内部用户安装另一个 Web Adaptor,以允许发布和管理访问。
多机站点的应用案例和优势
与单机相比,多机站点非常适用于需要容纳更多用户的企业级部署。此架构可扩展为容纳所有所需计算机,使站点的处理能力倍增。甚至可以添加 GIS 服务器,以响应用户需求。这一点在 Amazon EC2 等可以根据使用情况的统计数据自动扩展的云环境中非常有用。
多机站点也适用于不可以出现宕机情况的站点。这种情况下,即使某个 GIS 服务器转为离线,其他 GIS 服务器仍然可以保证站点的运行。
多机站点的缺点
多机站点需要额外设置,而且很明显还需要更多的硬件资源。因为站点在某个 GIS 服务器转为离线时可以继续运行,所以服务器管理员必须创建自己的监控或提醒日程以了解计算机是否变为不可用。
概要
ArcGIS Server 设计为可容纳大型部署和小型部署。首次构建站点时,您可能想要启动小型部署并将所有组件安装在单机上。当您准备好部署生产站点或需要处理更多用户请求时,可以添加更多 GIS 服务器。还可以将站点通过您自己的企业级 Web 服务器(通过 Web Adaptor)或数据服务器集成到现有的 IT 基础架构。最后,ArcGIS Server 架构中的许多组件都可以重复或并行运行,以避免出现单一故障点。