监测系统性能
要成功构建和运营企业系统,组织必须具有适用于这些系统的企业 IT 监测和响应框架。 主动监测与被动解决问题、有效的遥测捕获关键时间点感知以及识别系统性能趋势同样重要。 应尽可能将 ArcGIS 特定系统遥测集成到现有企业 IT 监测模式中,以确保 IT 人员能够全面了解系统。
使用 ArcGIS 系统的运行状况、可靠性和性能监控策略可能会有所不同,具体取决于您的系统是基于 SaaS 基础,通过 Windows 或 Linux 上的 ArcGIS Enterprise 和/或使用 Kubernetes、ArcGIS Location Platform 部署的。 下面介绍了每种场景中适用于监测的一些建议和选项。
监测 ArcGIS 部署
可用于系统的 ArcGIS 软件组件的监测和遥测级别首先取决于部署架构:
  - ArcGIS Online 是一种 SaaS 产品,它不会公开底层基础架构和软件内部的详细系统性能指标。 但是,它确实提供了诸多方法来观测系统利用率和运行状况。 组织可以在 ArcGIS Online Health Dashboard 上监测更广泛的 ArcGIS Online 服务和关键组件的运行状况和可用性,以及 ArcGIS Living Atlas of the World 实时源状况。 您可以查看和报告 ArcGIS Online 订阅的使用状况,包括组织的配额使用情况、成员状况和活动、内容使用情况、应用程序和群组。 还要考虑监测特定项目的使用情况,包括地图、图层和其他内容。 了解有关 ArcGIS Online 中组织维护最佳做法的详细信息。 ArcGIS Hub 还为每个倡议或站点提供了一个仪表盘,可用于查看站点和内容的活动和使用情况,以及特定于 Hub 的状况页面。 如果组织使用 ArcGIS Online Premium Feature Data Store,则可通过“组织”选项卡监测该组件的计算和存储使用情况。
- 可通过多种方式监测 Windows 和 Linux 上的 ArcGIS Enterprise,包括每个组件的应用程序特定服务器日志和服务器统计数据。 除了监控 ArcGIS Enterprise 软件之外,还必须监控所有支持组件和基础设施,例如 Windows 或 Linux 操作系统、数据库和其他数据存储,以及计算、网络、安全和其他基础设施。
- 可以通过多种方式来观测 ArcGIS Enterprise on Kubernetes,其中包括系统日志和通过 ArcGIS Enterprise Manager 进行运行状况监测。 除了监控 ArcGIS Enterprise 软件之外,还必须监控所有支持组件和基础设施,例如 Kubernetes 环境、数据库和其他数据存储,以及计算、网络、安全和其他基础设施。
- ArcGIS Location Platform 是一种 PaaS 产品,不支持观测其底层基础架构和软件内部结构。 确实如此;但同时提供了诸多方法,以供其开发人员观测系统利用率和运行状况。 这包括通过 ArcGIS Location Platform 仪表盘监测位置服务和图层的使用情况。
无论部署类型为何,都必须定义明确的监测目标、设置相关的性能指标并建立有意义的警报阈值,从而以有效、主动的方式管理和优化 ArcGIS Enterprise 环境。
监测物理资源和利用率
除了监控 ArcGIS 组件之外,还需要了解并持续监控可用于系统的硬件测量值和指标,这些测量值和指标可能因部署模式、系统托管配置和操作系统而异。
所有操作系统都提供了一种监测关键系统指标的方法,例如 CPU 利用率(整体和按进程)、内存使用情况(物理和虚拟)、磁盘利用率(可用存储、磁盘 I/O)或网络使用情况(带宽和总传输量)。 这些统计信息全部可用于为系统建立常规基准,监测与基准的偏差,然后用于将任何系统问题或中断与测量的系统硬件利用率变化相关联。 一些组织可能已经拥有企业监测解决方案或软件组件来收集有关这些指标的信息,并且随着用户规模扩大,建议继续使用该方法,因为培训成本、告警效率和经验复用将显现规模经济效应。
ArcGIS Monitor
ArcGIS Monitor 是一种企业级监测解决方案,通过提供有关系统运行状况、使用情况和性能的信息来与 ArcGIS Enterprise 配合使用。 该解决方案会捕获关键指标和属性以量化系统随时间推移的运行状况,为各种组件(包括 ArcGIS Server、Portal for ArcGIS 和 ArcGIS Data Store)提供实时和历史性能指标。 ArcGIS Monitor 可以帮助识别性能瓶颈和问题,从而支持主动管理和优化本地部署,并在组件停止响应或报告对标准查询的异常响应时通知系统管理员。 此过程有助于快速响应系统问题,还可以进行根本原因分析,以在问题得到解决后确定导致中断或故障的条件。 ArcGIS Monitor 是唯一一个将 ArcGIS 指标(如实例使用情况)与硬件和性能监测指标(如内存压力或网络饱和度)有效结合的监测解决方案,从而全面了解 ArcGIS 特定性能或稳定性问题。
本地硬件和组件
本地部署到虚拟或物理硬件或部署在组织专用网络上的 ArcGIS 系统具有其他监控注意事项和选项,包括:
  - 第三方监测工具 - Nagios、Zabbix、Prometheus 和 Grafana 等解决方案通常用于监测本地基础设施中硬件、服务器和网络资源的性能。 如果组织已在这些工具上投资,Esri 建议基于该投资进行构建,因为很可能存在可以用作构建基础的现有警报模式,而不是定义新模式。 这些工具还可能由专门的团队负责监控,并可以有效地支持 GIS 团队定义适当的指标和警报。
- 数据库监测工具 - 如果关系数据库配置了 ArcGIS Enterprise 部署,则特定于数据库的监控工具(如 Oracle Enterprise Manager 或 Microsoft SQL Server Management Studio)可以帮助监测和优化数据库性能。
Amazon Web Services
部署在 AWS 中的系统可以使用特定于 Amazon 的监测工具,这些工具非常强大,专门用于帮助监测在 AWS 上构建的重要系统。 这些工具包括:
  - CloudWatch - AWS 提供的 Amazon CloudWatch 是一种原生监测和可观测性服务。 您可以使用 CloudWatch 监测 EC2 实例、RDS 数据库和其他 AWS 资源的性能,这些资源是 AWS 云中 ArcGIS Enterprise 部署的一部分。
- 第三方工具 - 您还可以将第三方监测解决方案(如 New Relic、Datadog 或 AppDynamics)与 AWS 托管的 ArcGIS Enterprise 相集成,以获得有关性能的全面见解。
Microsoft Azure
部署在 Azure 中的系统可以利用 Microsoft 直接向 Azure 用户和客户提供的现有监测工具或方法,包括:
  - Azure Monitor - Microsoft Azure 提供的 Azure Monitor 是一种本机监测和诊断服务。 Azure Monitor 可用于从各种 Azure 资源收集和分析性能数据,包括虚拟机、数据库和 Azure Kubernetes 服务 (AKS) 集群(如果在 ArcGIS Enterprise 部署中使用)。
- 第三方集成 - 与 AWS 一样,您可以将 Dynatrace 或 SolarWinds 等第三方监测解决方案与 Azure 托管的 ArcGIS Enterprise 相集成,以增强性能监测。
特定于 GCP 的监测工具和选项包括:
  - Cloud Monitoring(以前称为 Stackdriver)- Google Cloud 提供的 Cloud Monitoring 可用于为 GCP 资源提供监测和可观测性功能。 您可以监测 GCP 上的 ArcGIS Enterprise 部署中使用的虚拟机、数据库和其他组件。
- 第三方解决方案 - GCP 支持与 Prometheus 和 Grafana 等第三方监测工具集成。
在所有云环境中,必须根据您的具体需求和正在使用的资源配置监测和警报。 云原生监测服务通常提供与警报机制的集成,以实时通知您性能问题。