使用云关系存储的注意事项

系统存储ArcGIS Enterprise 支持在组织内管理功能和其他工作流的基础要求。 这一存储需求包括两个关系存储,用于支持托管的要素数据以及管理方面的功能,例如自定义和配置设置。

管理员可以配置持久卷来支持关系存储,或者选择通过支持的云数据库服务在集群外部配置关系存储。 如果管理员熟悉 PostgreSQL 数据库管理,这种选项可能更合适,因为使用 Amazon Web Services (AWS)Microsoft AzureGoogle Cloud 云服务时,它可提供更高的可靠性、扩展性和性能优势。

与所有服务产品一样,云数据库服务提供商可以更改其产品中的设置和功能,即使在次要版本中也是如此。 提供商所做的更改有可能对从 ArcGIS 到数据库的访问产生负面影响。 要减轻这些负面影响,建议您与云提供商合作,以了解其服务的任何变更,并保持更新 ArcGIS 软件,以便访问应对云服务变更的最新更新。 定期备份 ArcGIS Enterprise 组织,并测试备份恢复进程。

以下使用云关系存储与 ArcGIS Enterprise 集成时的相关注意事项,包括软件使用、支持类型、要求以及持续维护需求。

受支持的云数据库服务

以下云数据库服务类型支持与 ArcGIS Enterprise on Kubernetes 配合使用:

  • Amazon RDS for PostgreSQL
  • Amazon Aurora PostgreSQL
  • Azure Database for PostgreSQL - Flexible Server
  • Google Cloud SQL for PostgreSQL
  • Google Cloud AlloyDB for PostgreSQL

注:

为了最大限度地减少延迟和连接问题,建议所有云数据库服务使用与 ArcGIS Enterprise 相同的云提供商和区域。

数据库要求

配置为与 ArcGIS Enterprise on Kubernetes 集成的云关系存储必须满足以下要求:

  • PostgreSQL 实例版本必须受同版本 ArcGIS Enterprise on Kubernetes 的支持。
    • ArcGIS Enterprise 12.0:PostgreSQL 15.x 或 16.x 版本
    • ArcGIS Enterprise 11.5:PostgreSQL 15.x 或 16.x 版本
    • ArcGIS Enterprise 11.4:PostgreSQL 15.x 版本
  • 数据库必须能够从 Kubernetes 集群网络访问。 默认情况下,某些安全组和防火墙可能阻止直接访问数据库。
  • 管理员账户必须使用数据库用户名和密码进行身份验证。
  • 必须安装 PostGIS 插件并启用 PostGIS 空间类型。 这是 AWSGoogle Cloud 的默认设置,但必须添加到 Azure 中允许的扩展模块。 目前,由于 PostGIS 问题 5978,仅支持 PostGIS 3.5.2 及更低版本。

连接与实例大小调整

为确保数据库实例有足够的资源,必须提前考虑并分配资源,因为许多服务不允许动态调整实例大小。 此外,实例在使用后调整大小可能会导致中断或意外问题。

每个数据库连接都会消耗数据库服务器的内存和 CPU,从而影响硬件需求。

例如:一个为托管要素服务运行的 Pod,在有 100 个并发请求时可能会占用 100 个数据库连接。 通常情况下,为托管要素服务运行的 Pod 有两个,因此至少需要 200 个连接。 为应对其他服务请求,建议额外预留 100 个连接,总计 300 个连接。

托管要素服务 pod 通常使用连接池来重复利用连接。 因此,300 个连接可以支持每秒最多 1000 个请求。 大多数云数据库的默认连接限制少于 300,建议将其提高至 300 或以上。

注:

不支持使用 pgBouncer 作为代理以池化与云关系存储的数据库连接。

数据库通过 RAM 提升频繁访问数据的性能。 托管要素服务的数据量通常最大。 由于服务使用频率差异显著,一些服务可能偶尔使用,而另一些则可能被频繁访问。 如果您确定某些托管要素服务会被持续访问,并且可以估算其数据规模,建议提前规划额外 RAM 以满足需求。

硬件建议

为满足中等负载的性能需求,推荐使用以下规格的数据库实例:

  • 4 个虚拟 CPU
  • 16 GB RAM

对于频繁访问的大型数据集,建议增加 RAM。

存储

组织的存储需求因所使用的数据而异。 建议基础存储配置为 100 GB,适用于少量附件的几百个托管要素服务。 要素附件(尤其是高分辨率影像)可能占用大量存储空间。 如预计会使用大量附件,应与 GIS 部门合作,合理估算存储需求。有些组织的数据需求可能超过 1 TB。

软件使用

配置云关系存储后,数据库需专用于 ArcGIS Enterprise on Kubernetes。 建议该数据库中不包含其他数据库或数据。 此外,软件会在数据库中创建数据库、方案和用户,包括以下内容:

  • 用于存储托管要素服务数据的企业级地理数据库
  • 用于存储内容和项目信息的数据库
  • 用于存储 Webhook 信息的数据库

ArcGIS Enterprise 提供的管理数据库用户将在初始配置以及备份和恢复过程中使用。 为增强安全性,系统会创建权限最小化的用户,用于日常操作。

持续维护

使用云关系存储后,需由 IT 或数据库管理员负责系统的日常维护和管理。 以下为示例:

  • 通过应用修补程序和监控硬件使用情况(尤其是存储)管理数据库系统。
  • 管理系统范围的设置,例如连接数限制。

另一方面,ArcGIS Enterprise 软件会继续进行软件维护工作。 以下为示例:

  • 在例行组织备份和恢复过程中备份和恢复数据库。
  • 管理列、表、索引和用户。

管理员可以创建自己的数据库备份,但在单独恢复数据库备份之前,必须咨询 Esri 技术支持,因为此操作可能会导致与其他基础性需求(例如对象存储)的同步问题。

升级云关系存储

当使用云关系存储时,升级 ArcGIS Enterprise on Kubernetes 将不会自动升级数据库实例的版本。 请参阅云数据库服务的文档,获取升级数据库实例的说明,包括所需先决条件、预计停机时间、备份和测试的推荐做法以及升级失败时的数据恢复选项相关信息。 在升级数据库实例前,请确保新的数据库版本受 ArcGIS Enterprise on Kubernetes 版本的支持。