健康检查操作可指示 GeoAnalytics Server 计算平台内的计算资源和作业的状态,即 GeoAnalytics Server 在多个 GeoAnalytics Server 内核和计算机中分配分析的基础框架。
该操作用于故障排除和监控,可供服务器或门户管理员使用,可通过使用 URL 格式 https://gis_geoanalytics_server.domain.com:6443/arcgis/admin 登录到您的 ArcGIS Server Administrator Directory 来对其进行访问。 要打开健康检查,请从 GeoAnalytics Server 站点开始,然后单击系统 > 平台服务 > 计算平台 > 健康。
可以使用健康检查操作执行以下操作:
- 验证并识别正在用于分析的 GeoAnalytics Server 计算机。
- 运行分析(或运行工具)时,验证已分配的内存和内核是否正在使用中。
- 检查在 GeoAnalytics Server 计算机上可用的内核或内存数量。 如果使用 GeoAnalytics Server 设置,则此操作非常有用。
- 查找 GeoAnalytics Server 作业的 jobID 以查看 REST 端点。
- 故障排除并解决错误消息。
注:
如果收到错误无法初始化分布式计算平台服务,请完成健康检查操作并检查工作节点的状态。 检查完节点的状态后,请完成常见 GeoAnalytics Server 问题和解决方案中列出的步骤。
计算平台健康检查使用基础框架中用于分配分析的术语。 下表概述了本文档中使用的术语和概念:
术语 | 描述 |
---|---|
节点 | 服务器计算机。 |
工作人员 | 用于计算的计算机。 工作计算机可接收来自主计算机的指令并执行这些指令。 一台主计算机可以有一台或多台工作计算机。 |
主节点 | 用于监控工作节点的服务器。 服务器既可以是主节点,也可以是工作节点。 在 Spark 中,这称为主节点。 |
作业 | 作业是指运行 GeoAnalytics Server 工具。 |
健康检查由包含单个值或数组的键组成。 运行并完成 GeoAnalytics Server 作业后,对于站点中的每台 GeoAnalytics Server 计算机,健康检查将具有以下键:
{
"<geoanalytics server machine name>":{
{.. url ..},
{.. workers ..},
{.. aliveworkers ..},
{.. cores ..},
{.. coresused ..},
{.. memory ..},
{.. memoryused ..},
{.. activeapps ..},
{.. completedapps ..},
{.. activedrivers ..},
{.. completeddrivers ..},
{.. status ..}
}
如果站点中有多台计算机,则将存在多个 geoanalytics service machine name keys。 仅主节点计算机将包含资源和作业信息。 工作节点计算机将仅包含 null 和 0 值。 在每个顶层服务器对象中,以下键包含一组值:workers、activeapps、completedapps 和 activedrivers。 顶层键的 url、cores、coresused、memory、memoryused 和 status 具有单个值。
将使用以下示例更加详细地介绍每个键:
- 示例 1:一个单机 GeoAnalytics Server 站点。
- 每台计算机都具有 32 GB (32768 MB) RAM 和 8 个 CPU 内核。
- 系统属性设置为使用最大 90% 的可用 RAM 和内核。
- GeoAnalytics Server 将使用每台计算机 29491 MB 的 RAM。 该结果可通过以下方程计算得出:
floor(32768 x .90) = 29491
- GeoAnalytics Server 将使用 7 个内核。 该结果可通过以下方程计算得出:
floor(8 cores x 1 machines x .90) = 7
- GeoAnalytics Server 将使用每台计算机 29491 MB 的 RAM。 该结果可通过以下方程计算得出:
- 示例 2:一个三机 GeoAnalytics Server 站点。
- 每台计算机都具有 16 GB (16384 MB) RAM 和 4 个 CPU 内核。
- 系统属性默认使用最大 80% 的可用 RAM 和内核。
- GeoAnalytics Server 将使用每台计算机 13107 MB 的 RAM。 该结果可通过以下方程计算得出:
floor(16384 x .80)= 13107
- GeoAnalytics Server 将使用所有计算机的 9 个内核。 该结果可通过以下方程计算得出:
floor(4 cores x 3 machines x .80) = 9
- GeoAnalytics Server 将使用每台计算机 13107 MB 的 RAM。 该结果可通过以下方程计算得出:
站点信息和资源
本节中将介绍 url、cores、coresused、memory、memoryused 和 status 键。 如果 GeoAnalytics Server 站点中有多台计算机,则将存在多个 url 键。 将填充其中一个 url 键的值,如以下示例所示。 所有其他 url 键的值将为 0,并且将不会列出工作计算机。 具有填充值的 URL 为主节点;其他 URL 是表示为工作节点而非主节点的计算机。 activedrivers 键始终为空数组。
示例 1 - 单机站点 | 示例 2 - 三机站点 |
---|---|
|
|
描述
- url - 带有 Spark 前缀和 Spark 端口的 GeoAnalytics Server 计算机的 URL。 每台计算机仅列出一个 URL。
- cores - 站点中所有 GeoAnalytics Server 计算机可用于 GeoAnalytics Server 的内核总数。 这表示可用内核总数乘以 percentageMaxAllowedComputeCores 设置(默认为 80%)。
了解有关设置 percentageMaxAllowedComputeCores 的详细信息。
- coresused - GeoAnalytics Server 站点中所有计算机当前用于 GeoAnalytics Server 分析的内核总数。
- memory - 站点中所有 GeoAnalytics Server 计算机可用于 GeoAnalytics Server 的可用内存总量 (MB)。 这表示每台计算机上的内存量乘以 percentageMaxAllowedComputeMemory 及计算机的数量。
- memoryused - GeoAnalytics Server 站点中所有计算机当前用于 GeoAnalytics Server 分析的内存总量。
- activedrivers - 始终为空数组。
工作人员
workers 键可将计算机和信息标识为 GeoAnalytics Server 站点的一部分。
示例 1 - 单机站点 | 示例 2 - 三机站点 |
---|---|
|
|
描述
- id - 工作计算机的唯一 ID。
- host - 计算机的主机地址。
- port - 用于 GeoAnalytics Server 分析的计算机端口。 已为每台工作计算机分配其自己的端口。 必须打开这些端口才能进行通信。
- cores - 计算机上分配给 GeoAnalytics Server 分析的内核数量。 可使用 GeoAnalytics Server 设置进行设置并表示 percentageMaxAllowedComputeCores 设置。
- coresused - 当前用于 GeoAnalytics Server 分析的内核总数。 如果任何 GeoAnalytics Tools 正在运行,则此值需要大于 0。
- coresfree - 计算机上当前空闲且可立即用于 GeoAnalytics Server 分析的内核数量。 如果此数量等于所有计算机上的 cores,则当前未运行任何 GeoAnalytics Tools。
- memory - 计算机上分配给 GeoAnalytics Server 分析的内存量 (MB)。 可使用 GeoAnalytics Server 设置进行设置并表示 percentageMaxAllowedComputeMemory 设置。
- memoryused - 指定计算机上当前用于 GeoAnalytics Server 分析的内存量 (MB)。
- memoryfree - 计算机上当前空闲且可立即用于 GeoAnalytics Server 分析的内存量 (MB)。 要运行 GeoAnalytics Tools,memoryfree 数量必须大于或等于在每台计算机的服务器设置中设置的数量。
- state - 当前计算机的状态。 ALIVE 已打开,准备好运行或正在运行一个作业。 启动作业后,STANDBY 将切换到 ALIVE。 DEAD 可能有错误,并且应该重新启动 GeoAnalytics Server。 UNKNOWN 可能有错误,并且应该重新启动 GeoAnalytics Server。 如果无法将计算机从 DEAD 或 UNKNOWN 切换到 ALIVE 或 STANDBY,请联系 Esri 支持中心。
- lastheartbeat - 当前计算机上次联系主节点的时间,以新纪元毫秒为单位。 该结果按计算机的所在地时间计算得出。
- lastheartbeatString - 当前计算机上次以字符串格式联系主节点的时间。 该结果按计算机的所在地时间计算得出。
- hostname - 工作计算机的主机名。
完成的应用程序
completedapps 键可标识已完成的 GeoAnalytics Server 工具和信息。 其中包括成功完成的工具和导致失败的工具。 重新启动 GeoAnalytics Server 时,将清除完成的应用程序信息。
示例 1 - 单机站点 | 示例 2 - 三机站点 |
---|---|
|
|
描述
- starttime - GeoAnalytics Tools 作业开始运行的时间,以新纪元毫秒为单位。
- id - 作业的唯一 ID。
- name - 作业的名称。 将始终使用 ArcGIS GeoAnalytics (<jobID>) 格式。 运行作业时, jobID 是用于 REST 端点的相同 jobID。
- cores - 所有计算机上用于分析的内核总数。
- user - 运行作业的用户。 即设置 ArcGIS Server 的用户,并且在您的站点上将始终保持不变。 并非运行该作业的门户成员。
- memoryperslave - 每台计算机上使用的内存量。
- submitdate - GeoAnalytics Tools 作业开始运行的时间,采用可读文本格式。
- state - 当前作业的状态。 FINISHED 表示此作业已完成。 作业可能已成功完成或导致错误。
- duration - 作业的总持续时间,以毫秒为单位。
活动应用程序
activeapps 键可标识当前正在运行的 GeoAnalytics Tools 及其信息。 完成作业后,可将信息移至 completedapps 对象。
示例 1 - 单机站点 | 示例 - 三机站点 |
---|---|
|
|
描述
- starttime - GeoAnalytics Tools 开始运行的时间,以新纪元毫秒为单位。
- id - 作业的唯一 ID。
- name - 作业的名称。 将始终使用 ArcGIS GeoAnalytics (<jobID>) 格式。 运行作业时,jobID 是用于 REST 端点的相同作业 ID。
- cores - 所有计算机上用于分析的内核总数。
- user - 运行作业的用户。 即设置 ArcGIS Server 的用户,并且在您的站点上将始终保持不变。 并非运行该作业的门户成员。
- memoryperslave - 每台计算机上使用的内存量。
- submitdate - GeoAnalytics Tools 开始运行的时间,采用可读文本格式。
- state - 当前作业的状态。 RUNNING 表示作业已开始。 WAITING 表示作业将等待一分钟,以确定是否有足够的资源。 如果一分钟内没有足够的资源,则该作业将取消。 如果有足够的资源,则 RUNNING 将开始启动。
- duration - 作业的当前持续时间,以毫秒为单位。