Skip To Content

AWS CloudFormation 和 ArcGIS

可以使用 Esri 提供的 Amazon Web Services (AWS) CloudFormation 模板创建弹性负载均衡器并部署以下架构:

还可以复制并修改这些模板以满足您的特定需求,或创建您自己的模板以执行您自己的部署模式。

ArcGIS Enterprise Cloud Builder for Amazon Web Services 将使用 CloudFormation 模板。您也可以使用 CloudFormation 模板直接AWS Management Console 启动堆栈创建脚本堆栈

AWS CloudFormation 服务可帮助您在 Amazon Web Services 上定义架构。它是一种代码形式的基础架构示例,这表示您可编写可以在云环境中部署特定硬件基础架构的代码。对于 CloudFormation,可以使用 JavaScript 对象表示法 (JSON) 模板来定义以预先确定的方式结合使用的资源堆栈。CloudFormation 可确保您始终只需维护站点中最少量的计算机,因而,可在其中一台计算机不可用时实现无缝恢复。

使用 CloudFormation 模板启动和维护部署比手动执行此操作更加容易,并且允许您在不同的 AWS 帐户或区域中设置相同的架构。

CloudFormation 模板

EsriCloudFormation 模板存储在 Amazon Simple Storage Service (S3) 存储段中,您可以从中下载相应模板。这些模板特定于 ArcGIS 版本。使用各个页面顶部的软件版本号链接可访问其他版本。

将为这些模板创建的每个堆栈创建一个文件服务器。这意味着基础 ArcGIS Enterprise 部署具有一个文件服务器,每个联合服务器都有自己的文件服务器。如果使用文件系统内容存储进行部署,则每个堆栈都包含适用于文件服务器的 Amazon Elastic Compute Cloud (EC2)实例。如果使用云内容存储,则每个堆栈都包含适用于文件服务器 EC2 实例、Amazon Simple Storage Service (S3) 存储段和 Amazon DynamoDB。当前,无法为部署中的所有堆栈创建单个文件服务器,也无法将现有文件服务器用于部署。

创建弹性负载均衡器

您可以使用其中一个 Esri 示例 CloudFormation 模板针对高可用性 ArcGIS Enterprise 部署或 ArcGIS Server 站点创建负载均衡器,而不是在 AWS Management Console 中创建弹性负载均衡器。系统还提供一个单独的模板,用于为 ArcGIS GeoEvent Server 站点创建负载均衡器。

该模板可将导入的 SSL 证书链接到负载均衡器。

具有负载均衡器后,可将其映射到部署的域名。

使用 CloudFormation 部署 ArcGIS Enterprise

可使用 CloudFormation 模板在 AWS 上部署 ArcGIS EnterpriseArcGIS Enterprise 部署包括以下 ArcGIS 组件:

  • Portal for ArcGIS
  • ArcGIS Server
  • ArcGIS Web Adaptor
  • ArcGIS Data Store

您需要在 Amazon Virtual Private Cloud (VPC) 中部署 ArcGIS Enterprise。系统提供 Esri 示例 CloudFormation 模板来创建 VPC

运行 CloudFormation 模板以部署 ArcGIS Enterprise 之前,您必须具备以下条件:

  • 站点的有效域名。
  • 从证书颁发机构获取的该域的 TLS (SSL) 证书。
  • 将与 Amazon Elastic Compute Cloud (EC2) 实例相关联的弹性 IP 地址;您必须将域名称映射到此弹性 IP 地址。

在一台计算机上部署 ArcGIS Enterprise

Esri 提供的单机示例 CloudFormation 模板允许您在单个 AWS 实例上部署基础 ArcGIS Enterprise 门户。

示例单机部署 CloudFormation 模板可配置以下组件,使其在 AWS 上的单机中配合使用:

  • Portal for ArcGIS 已使用上下文 portal 注册到 ArcGIS Web Adaptor。例如,注册的门户 URL 的格式为 https://<domain name>/portal/home
  • ArcGIS GIS Server 站点已创建且已使用上下文 server 注册到 ArcGIS Web Adaptor。例如,ArcGIS Server Manager URL 的格式为 https://<domain name>/server/manager
  • 创建 ArcGIS Data Store 关系和切片缓存数据存储并注册到 GIS Server 站点。允许 GIS Server 站点为门户存储托管 web 图层数据。
  • 联合 GIS Server 站点与门户,并将其设置为门户的托管服务器。

使用此模板,您还可以选择创建时空大数据存储,并且可以将云存储用于门户内容存储和 GIS Server 配置存储。如果您包括这些元素,则它们将与基础 ArcGIS Enterprise 部署分开存储,如下图所示:

将 ArcGIS Enterprise 基于一个实例,其中带有用于时空大数据存储和可选云存储容器的可选的其他实例

使用单机部署模板以及使用 AWS CloudFormation 中的步骤在单个 AWS 实例上部署 ArcGIS Enterprise

或者,可在 Amazon DynamoDBS3 中存储 ArcGIS Server 配置存储,并在 S3 存储段(而非该台计算机的目录)中存储 Portal for ArcGIS 内容目录。

注:

如果将 ArcGIS Server 配置存储在 Amazon DynamoDBS3 中,并将 Portal for ArcGIS 内容目录存储在 S3 存储段中,则删除此部署时将删除这些内容。如果要保留此内容,请在删除部署前对其进行备份。

部署高可用性 ArcGIS Enterprise 组件

Esri 提供了 CloudFormation 模板,可用于在 AWS 上创建高可用性 ArcGIS Enterprise 部署。这些模板将安装并配置前一部分中列出的产品,并对每个组件进行配置,以确保即使部署中的一台计算机出现故障,数据和服务仍然可用。其中包括使用 AWS 自动恢复进行配置的文件服务器实例,用于存储门户内容、ArcGIS Server 的配置存储和目录,以及关系及切片缓存数据存储的备份文件 (请注意,您需要手动配置切片缓存数据存储的备份,默认情况下系统不会自动创建这些备份。有关详细信息,请参阅 ArcGIS Data Store 帮助。)

一个高可用性 ArcGIS Enterprise 部署至少包含三台计算机。下图显示了 AWS 上每台计算机的软件组件:

AWS 上的高可用性 ArcGIS Enterprise 部署

可选择将运行时空大数据存储集群的独立计算机包括在此配置中。

只能将此实例恢复到相同的可用性区域中。如果整个可用性区域均无法使用,除非在另一 AWS 区域内设置了相同的次要部署,否则无法恢复 ArcGIS Enterprise 部署。下一章节中将对此案例进行介绍。

注:

如果将 ArcGIS Server 配置存储在 Amazon DynamoDBS3 中,并将 Portal for ArcGIS 内容目录存储在 S3 存储段中,则删除此部署时将删除这些内容。如果要保留此内容,请在删除部署前对其进行备份。

在用于灾难恢复的不同区域中部署两个相同的 ArcGIS Enterprise 配置

您可以在两个不同区域中创建两个 ArcGIS Enterprise 部署,然后将其中一个设为活动的主部署。使用随 Portal for ArcGIS 一同安装的 webgisdr 工具将主部署中的内容复制到另一区域内的备用部署。此部署如下图所示:

复制的 ArcGIS Enterprise 部署

注:

如果将 ArcGIS Server 配置存储在 Amazon DynamoDBS3 中,并将 Portal for ArcGIS 内容目录存储在 S3 存储段中,则删除此部署时将删除这些内容。如果要保留此内容,请在删除部署前对其进行备份。

使用 CloudFormation 部署 ArcGIS Server 站点

Esri 提供了示例 CloudFormation 模板,可用于创建 ArcGIS Server 站点以填充不同角色。站点填充哪个角色取决于您所使用的模板和您提供的许可。

部署使用共享配置存储的高可用性 ArcGIS Server 站点

ArcGIS Server 站点包括 web 服务器、web 适配器、数据服务器以及可在多台计算机间分布以便提高计算能力的一个或多个 ArcGIS Server 安装程序(包括配置存储和服务器目录)。在对分配给一组服务的资源进行管理的过程中,站点中的各个组件都有着明确的分工。

可使用下表中列出的任一 CloudFormation 模板,按照使用 AWS CloudFormation 中的步骤定义包含两个或更多 ArcGIS Server 安装程序的高可用性 ArcGIS Server 站点,并针对配置存储使用 Amazon S3DynamoDB。在使用任一上述模板时,系统会向 ArcGIS Server 目录设置自动恢复;因此,即使一台计算机故障,您的服务仍然可用。

许可角色站点类型站点所扮演的角色

ArcGIS GIS Server

GIS Server

可为独立或联合 GIS Server 站点,能够用于发布要素、地图、地理处理、地理编码、地理数据或几何服务。

ArcGIS GeoAnalytics Server

GeoAnalytics Server

用作联合 GeoAnalytics Server 服务器,以便门户用户运行 GeoAnalytics 工具集

ArcGIS Image Server

图像服务器、图像托管服务器或栅格分析服务器

可为独立或联合 Image Server 站点,您可基于镶嵌数据集向其发布影像服务。如果站点与门户联合,则可以将该站点设置为门户的栅格分析服务器。

下图所示的 ArcGIS Server 站点中含有存储 ArcGIS Server 目录的文件服务器计算机,以及存储 ArcGIS Server 配置的 DynamoDB

高可用性 ArcGIS Server 站点

配置存储

使用 Amazon S3DynamoDB 存储配置时,多数服务为高可用性服务,但以下服务例外:

  • 无法将地理处理服务处理为高可用性服务。
  • 缓存服务不会自动处理为高可用性服务,但可单独对其进行配置,使其具有高可用性

使用 arcgis-server-<os>-haconfigstore 模板之一创建高可用性 ArcGIS Server 站点时,系统会在您的 AWS 帐户内创建以下内容:

  • 在部署 ArcGIS Server 站点的 AWS 区域内创建一个名为 ArcGISConfigStores 的 DynamoDB 表,并为其配置 5 个读取容量单位和 1 个写入容量单位
  • 为每个命名空间创建的名为 ArcGISConfigStores 的 DynamoDB 表。<命名空间>,创建时配置有 250 个读取容量单位和 25 个写入容量单位
  • 每个命名空间配有名为 arcgis-config-store-<命名空间>-<唯一 ID> 的 S3 存储段

请注意,如果删除 ArcGIS Server 站点,则 ArcGIS 将删除各个命名空间的 S3 存储段和 DynamoDB 表。如果不将 ArcGIS Server 站点部署到该 AWS 区域,则必须手动删除 DynamoDB 表。

另请注意,必须管理 DynamoDB 表中配置的吞吐量设置,以确保 ArcGIS Server 服务器配置存储的操作能够可靠、快速地进行。

服务器目录

系统将使用 ArcGIS Server 高可用性模板部署的站点配置为自动恢复。如果目录所在的实例发生故障或无法使用,AWS 会将实例的状态替换为发生故障前的状态。如果整个 Amazon 可用性区域在长时间内均不可用,则 ArcGIS Server 站点将无法使用。如果您希望站点在 Amazon 可用性区域故障时仍能使用,则可利用 AWS 云存储的备份功能。您可以访问这些备份副本来恢复站点。

如果您的服务器目录存储于 AWS 存储服务之内,则您可遵循这些步骤,在 Amazon 可用性区域发生故障时恢复 ArcGIS Server 站点。

  1. 在新的可用性区域中,重新创建与故障可用性区域相关联的 Amazon Virtual Private Cloud (VPC) 子网。
  2. 使用 ArcGIS Amazon Machine Image,在重新创建的 VPC 子网内启动 EC2 实例。实例的专用 IP 地址必须与原始站点不可用之前其拥有的专用 IP 地址相同。
  3. 运行并登录实例,然后更改 ArcGIS 管理员帐户密码,使其与最初使用 CloudFormation 创建站点时指定的密码一致。
  4. 确保共享服务器目录位置的根路径可用。

    无法为共享服务器目录指定新位置。

  5. 登录到 ArcGIS Server 管理员目录。
  6. 转至系统 > 目录 > 恢复
  7. 单击恢复

    云备份的内容或文件夹结构将会复制到共享服务器目录中。

部署 ArcGIS GeoEvent Server 站点

使用任一 ArcGIS GeoEvent Server CloudFormation 模板创建单机 ArcGIS GeoEvent Server 站点。

站点可以是独立或联合 GeoEvent Server,您可将实时观测数据流保存到其中。

部署 ArcGIS Mission Server 站点

使用任一 ArcGIS Mission Server CloudFormation 模板创建单机 ArcGIS Mission Server 站点。

ArcGIS Mission Server 站点必须与 ArcGIS Enterprise 门户联合。

部署 ArcGIS Notebook Server 站点

使用任一 ArcGIS Notebook Server CloudFormation 模板创建 ArcGIS Notebook Server 站点。您可以选择创建单机或多机站点。

ArcGIS Notebook Server 站点必须与 ArcGIS Enterprise 门户联合。

部署单机(活动-活动)ArcGIS Server 站点

单机(活动-活动)ArcGIS Server 站点(之前称为筒仓架构)包含多个相同但独立的 ArcGIS Server 计算机,这些计算机在负载均衡器下运行,以便相互分配作业。每个 ArcGIS Server 站点均在单机上自成体系,拥有自己的配置存储。此类架构的一个主要优势在于即便丢失个别 ArcGIS Server 实例,ArcGIS Server 仍可继续运行,这意味着在一台计算机故障的情况下,您的服务仍然可用。

高可用性单机架构 ArcGIS Server 站点

但是,您无法使用 ArcGIS Server Cloud Builder on Amazon Web Services 构建单机架构;必须使用 AWS Management Console 或 API 手动对其进行创建。为便于创建高可用性单机 ArcGIS Server 站点,可使用具有 arcgis-siloed-server-VPC.template 的 AWS CloudFormation使用 AWS CloudFormation 中的步骤来定义站点和将 ArcGIS Server 计算机保存在一起的负载均衡器。arcgis-siloed-server-VPC.template 使用自动伸缩,这可确保您始终只需维护站点中最少量的计算机,但仍可根据 ArcGIS Server 的使用情况添加或移除计算机,以便在无法使用某计算机时实现无缝恢复。

与本主题中所述的其他部署方案一样,ArcGIS Server 站点的角色由您在创建站点时提供的许可决定。

*本主题图中的某些图标需在得到 Amazon Web Services 权限后方可使用。

升级部署

示例 CloudFormation 模板可用于升级使用 Esri CloudFormation 模板创建的以下类型的部署:

  • 独立 ArcGIS Server 10.5 或更高版本的站点
  • 特定版本的 ArcGIS Enterprise 部署

按照每个 CloudFormation 模板版本提供的说明完成升级过程。