高可用性是一种用于确保系统正常运行时间、最小化或防止计算机故障情况下的数据丢失的技术。 与其他 ArcGIS Enterprise 组件类似,您可以通过第三方网络负载均衡器将 ArcGIS Server 部署于具有高可用性的配置中。
主动 - 被动架构将克隆单机站点,并将其独立的两个或多个实例放置在负载均衡器之后。 负载均衡器后台的所有站点均正在运行并且能够回应服务请求时,负载均衡器仅会将请求转移至其中一个站点(指定为主站点)。 如果负载均衡器检测到主站点不可用,传入请求之后将通过故障转移进程重定向到备用站点。
故障过程将全部在 ArcGIS Server 外部进行处理,通常可以配置为在 ArcGIS Server 计算机完全不可用(网络或硬件故障)时触发,在某些情况下,在特定服务或操作失败的情况下触发。
注:
可针对备用站点从 My Esri 请求许可文件,不产生任何额外成本。
如果在此部署模式中有多个用于托管 ArcGIS Server 的计算机,则该配置在技术上无法描述为多机站点,因为负载均衡器的后台站点彼此独立。 每个站点都由单个 ArcGIS Server 计算机组成,并具有其自己的本地配置存储和服务器目录。
通过主动 - 被动故障配置可构建多余的 ArcGIS Server 层,而不会产生任何额外的许可费。 由于备用服务器不会接收任何请求,因此可在不产生任何额外成本的情况下对其进行许可。 然而,必须单独管理每个独立的服务器站点;站点具有其自己的本地配置存储和服务器目录。 如果站点服务或数据频繁更改,则可能会增加不菲的管理开销。 此外,在发生故障的情况下转移至备用站点时,主站点中的任何活动请求都将丢失。
ArcGIS Server 计算机、服务器目录和配置存储
在此参考单机部署中所述的注意事项。 每台 ArcGIS Server 计算机都有自己的本地服务器目录和配置存储。 这将确保发挥最佳性能并将相关性保持在最低。
数据
如果在 GIS 服务中使用基于文件的数据源,则建议将这些数据源存储在每台本地 ArcGIS Server 计算机上(而并非存储在网络共享上)以实现服务性能的最大化。 在某些情况下,例如在处理大量影像时,在网络上共享文件可能是唯一可行的选择。 如果在网络上使用共享资源中的文件,则选择高可用性配置的存储设备十分重要。
如果使用数据库,则可以为每个站点指定一个数据库:为主站点指定一个数据库,并为备用站点指定一个单独的数据库。 为使数据库保持同步,可利用数据库复制,或根据需要利用地理数据库复制技术。 或者,可利用数据库提供程序中的其他高可用性技术。
反向代理服务器
在此配置中,需要第三方负载均衡器。 必要时,该组件将至少用于处理整个站点的负载和故障。 通常,负载均衡器还承担反向代理服务器的角色。 在某些情况下,您可能已独立于负载均衡器配置了反向代理服务器。
如果您的网络负载均衡器支持健康检查功能,您可以使用 ArcGIS Server 站点 REST API 中的的健康检查端点来确定站点是否可以接收请求。这有助于快速确定站点中是否存在软件或硬件故障。
仅当想要使用 web 层身份验证时才需要使用 ArcGIS Web Adaptor,通常情况下可选择使用。 您可以选择在 ArcGIS Server 所在的计算机上对其进行配置,或在指定计算机上进行配置。 无论在哪种情况下,如果使用 ArcGIS Web Adaptor,则必须为每个站点配置一个单独的 ArcGIS Web Adaptor。
主动 - 被动配置的注意事项
使用具有高可用性的主动 - 被动配置规划 ArcGIS Server 站点时,需要考虑以下注意事项。
同步服务
与真实的多机站点不同,该配置要求负载均衡器的所有后台站点均托管完全相同的内容并遵循相同的安全性模型。 您负责确保所有站点对于负载均衡器都是完全相同的。
有多种技术可帮助您使主站点中的 ArcGIS Server 服务保持同步:
- 脚本 - ArcGIS Server 包括可用于脚本管理任务(例如发布服务和更改安全性设置)的 REST API。 可创建自己的脚本以对部署中包含的所有 ArcGIS Server 计算机进行统一更改。 如果必须进行微调,例如更改服务的安全性或对其进行覆盖,则脚本编写将尤为有用。
注:
不要使用脚本创建初始站点。 在虚拟机镜像上手动创建第一个站点,然后从此基本镜像创建其他站点的脚本。 从同一虚拟机镜像创建所有计算机可确保所有计算机使用相同的加密密钥。
- 虚拟化 - 如果在虚拟环境中进行操作,则可以创建虚拟计算机模板并将其用于启动新站点。 每个模版都将具有 GIS 服务所需数据的副本(除非使用数据库)。 该模版还将发布和配置所有服务。 如果需要进行更改,例如添加或更新现有服务,则可创建一个模板以在稍后启动新的虚拟计算机,该计算机将替换负载均衡器中使用的现有 ArcGIS Server 计算机池。 您还可以使用虚拟机模板来快速恢复过时的 ArcGIS Server 计算机。
要在此部署模式中将更改应用于站点,建议使用以下过程:
- 首先对进入备用模式的站点进行管理更改。 例如,添加新服务并更改站点中没有积极处理请求的其他服务的安全性。
这将确保使用主站点不会对应用程序产生任何影响。
- 手动配置负载均衡器以将所有请求移交至已进行更改的备用站点。
- 对空闲站点应用相同的更改。
- 恢复负载均衡器,这样请求将返回初始的主站点,并使备用站点一直处于备用模式。
您可通过 ArcGIS Server Manager、脚本或虚拟影像手动应用上述过程中的站点更改。
异步地理处理和长时间运行的任务
负载均衡器切换至备用站点时,主站点中的所有活动请求都将丢失。 例如,如果长时间运行的请求(例如地理处理任务)在发生故障时运行,则该任务必须在备用站点中由客户端应用程序重新启动。
使用基于令牌的安全性
如果使用基于令牌的身份验证(也称为服务器层身份验证),则该配置中的所有站点使用完全相同的共享令牌密钥十分重要。 否则,主站点中生成的令牌会在用于备用站点时无效。 要在多个站点之间复制共享令牌密钥,您可以在管理器中编辑令牌设置。
联合
每个站点都有不同的配置存储,因此单机主动 - 被动 ArcGIS Server 部署无法与 Portal for ArcGIS 联合。 要将高可用性服务器站点与您的门户联合,请配置多机站点。