Skip To Content

Amazon Web Services 上的 ArcGIS for Server 架构

可使用 ArcGIS Server Amazon 机器映像 (AMI) 在 Amazon Web Services (AWS) 上启动若干个不同的架构。Esri 提供了 AWS CloudFormation 模板来加载大多数受支持的架构。此外,Esri 还提供了 ArcGIS Server Cloud Builder on Amazon Web Services,以此提供若干 GIS 服务器站点架构选项。您还可以使用 AWS 管理控制台手动部署这些架构。

AWS CloudFormation 模板的可用架构

Esri 提供了示例 AWS CloudFormation 模板,以部署以下架构:

  • 高可用性筒仓 GIS 服务器
  • 高可用性 GIS 服务器站点
  • 单机 web GIS
  • 高可用性 web GIS 部署

AWS CloudFormation 和 ArcGIS for Server 对上述每个架构进行了说明。

可用于云构建器的架构

ArcGIS Server Cloud Builder on Amazon Web Services 允许您使用一台 GIS 服务器构建一个简单的 GIS 服务器站点,也允许您使用多台 GIS 服务器构建复杂的站点。还允许您包含一个企业级地理数据库并确定它的放置位置。

不包含企业级地理数据库的 GIS 服务器

您可以使用云构建器创建一个运行在 Windows 或 Linux 上但不包含企业级地理数据库的 ArcGIS Server 站点。此类站点可以包含一个或多个 GIS 服务器。所有参与的 GIS 服务器必须使用相同的操作系统。在任何情况下,一个或多个 GIS 服务器都将放置于一个 Amazon 负载均衡器之下。

相同 EC2 实例上含有企业级地理数据库的 GIS 服务

或者,您可以选择创建一个含有企业级地理数据库并且此地理数据库与 ArcGIS Server 运行在同一个 EC2 实例上的站点。如果站点中包含多个 GIS 服务器,则企业级地理数据库仅运行在其中的一个服务器上。

如果您的 ArcGIS Server 站点构建在 Linux 上,则企业级地理数据库将在 PostgreSQL 上运行。如果构建在 Windows 上,则企业级地理数据库可以在 Microsoft SQL Server Express 或 SQL Server Standard 上运行。

在 ArcGIS Server 所在的同一个 EC2 实例上运行企业级地理数据库可以帮助您节省硬件成本(Amazon 的实例按小时支付费用)。此架构还能降低服务器与数据库之间的延迟。但是,当您在同一个 EC2 实例上运行服务器和数据库时,您实际上是在共享硬件资源,如果组件过载或离线,则站点中断的风险会大大增加。

自有 EC2 实例上含有企业级地理数据库的 GIS 服务

可以选择创建一个含有企业级地理数据库并且在自有 EC2 实例上运行的站点,从而实现与 ArcGIS Server EC2 实例的分离。如果您的 ArcGIS Server 站点构建在 Linux 上,则企业级地理数据库将在 PostgreSQL 上运行。如果构建在 Windows 上,则企业级地理数据库将在 SQL Server Standard 上运行。如果您选择使用 Amazon Relational Database Service (RDS) for Microsoft SQL Server 创建站点,则其将始终在与 ArcGIS Server 实例分离的实例上运行。

在与 ArcGIS Server 分离的实例上运行企业级地理数据库会导致实例使用费用的增加。但是,如果将 GIS 服务器层与数据库层进行分离,您便可以更随意地调整或修复其中的任意一个层,而不会影响其他层。

手动构建站点时可用的架构

本地部署时,您可以使用 AWS 管理控制台尽可能手动在 AWS 上构建相同的架构;但是,这需要您熟于配置 web GIS 或 GIS 服务器,并熟练使用 AWS。以下列出了一些关于手动部署的提示。

使用 AWS 管理控制台手动构建站点时,可启动一个或多个运行 ArcGIS for Server 的 EC2 实例,以创建 GIS 服务器站点。如果启动了多个实例,还必须启动一个 Amazon 负载均衡器并将这些实例加入其中。添加于负载均衡器之下的所有 GIS 服务器实例都必须相同。同样,如果启动多个运行 ArcGIS for Server 的实例,以便在 web GIS 中使用,您还需要启动 Amazon 负载均衡器并向其中添加实例。

负载均衡器下的各个实例均彼此独立运行。换言之,每个实例都有自己的配置存储、服务器目录、日志等等。这就限制了您可以对服务器进行的处理的类型,如异步地理处理或分布式地图缓存作业。如果需要一个可以执行这些处理的真正分布式架构,请使用云构建器创建您的站点。

使用 AWS 管理控制台手动构建站点时,您也可以启动一个运行 ArcGIS for ServerPortal for ArcGISArcGIS Data Store 的 EC2 实例。

启动站点实例时,有三种 Esri AMI 可供选择,或者,您也可以使用从这三个 AMI 之一中衍生出的自定义 AMI。所有 AMI 包括 ArcGIS for ServerPortal for ArcGISArcGIS Data Store 和数据库管理系统。如果使用 AWS 管理控制台构建站点,则必须使用地理处理工具或 Python 创建自己的地理数据库。

提示:

如果要在与 ArcGIS Server 实例分离的单独实例上运行企业级地理数据库,建议您使用云构建器创建您的站点。

我是否需要安装 ArcGIS Web Adaptor

ArcGIS Server AMI 包括 ArcGIS Web Adaptor。如果使用 ArcGIS Server AMI 和 CloudFormation 模板部署 web GIS,则系统将配置和使用 ArcGIS Web Adaptor

如果使用 ArcGIS Server Cloud Builder on Amazon Web Services 或 CloudFormation 模板部署 GIS 服务器站点,则系统不会配置 ArcGIS Web Adaptor,因为 Amazon 负载均衡器所起的很多作用与之相同,可在站点的 GIS 服务器间分配收到的请求。但是,创建站点之后,您可以选择登录实例并配置 ArcGIS Web Adaptor。如果要在 Windows 实例上托管 ArcGIS API for JavaScript 应用程序,则必须进行此操作。有关详细信息,请参阅在 Windows 站点上部署 Web 应用程序