本文档介绍了 SHA 监控器的基本概念,这是 NSX 4.2 系统运行状况代理 (SHA) 框架中引入的一个组件。

SHA 是 NSX 中的分布式系统运行状况代理。此框架监控各种 NSX 组件的统计信息(衡量指标),例如,ESXi 主机、裸机服务器、NSX Edge 和 NSX Manager设备等。SHA 监控组件统计信息并进行分析,针对异常情况生成警报,并在满足特定条件时触发修复操作。

NSX 4.2 之前,要控制组件统计信息(衡量指标)的收集,NSX 用户需要执行两个步骤。首先需要确定统计信息与 SHA 插件之间的映射。换言之,他们应确定哪个 SHA 插件对应控制哪些统计信息,然后使用 SHA 插件配置文件来控制统计信息的收集。SHA 插件配置文件主要面向有权访问代码的开发人员,并可以确定应针对哪些统计信息调整相应的 SHA 插件配置文件。

通过在 SHA 框架中引入监控器组件,该过程现已得到简化。

监控器

监控器是 SHA 框架的一个组件,可监控有关系统运行状况的各种统计信息(衡量指标)并执行相应的操作。例如,它可将统计信息导出至目标以便用户查看系统运行状况,触发警报以通知用户,并将统计信息转储到文件供脱机分析。监控器取代了早期 NSX 版本中引入的 SHA 插件。监控器提供统计信息的详细描述,以便用户了解每条统计信息的用途,以及如何在需要时控制监控器。

例如,esx-obsrv-stats-monitor 包含从 ESXi 主机传输节点收集的所有可观察性统计信息的描述。

目前,监控器支持将统计信息导出到单个目标,即 NSX Manager

监控器配置文件

监控器配置文件可帮助您通过配置一组属性来控制监控器。

例如,监控器配置文件中的某些配置属性包括:

  • enable
  • check_interval
  • applied_to_group_paths

此处仅列出一些配置属性。要了解监控器配置文件中的所有配置属性,请参见 NSX API 指南中的 SHA 监控器配置文件架构,网址为:

GET https://<nsx-mgr>/policy/api/v1/infra/sha/monitors/<monitor-id>/profiles/<profile-id>

您只能使用 NSX API 访问监控器和监控器配置文件。目前,这些组件不会在 NSX Manager UI 中公开。

要获取所有监控器 ID 的列表,请使用以下 API:

GET https://<nsx-mgr>/policy/api/v1/infra/sha/monitors

要获取特定监控器的所有配置文件的列表,请使用以下 API:

GET https://<nsx-mgr>/policy/api/v1/infra/sha/monitors/<monitor-id>/profiles
注: 在多租户 NSX 部署中,项目用户和 NSX VPC 用户无法使用监控器和监控器配置文件 API。这些 API 当前仅可供默认空间中的用户使用。

每个监控器都有一个系统创建的默认配置文件。例如,esx-obsrv-stats-monitor 的默认配置文件适用于运行该监控器的系统中所有主机传输节点。更新默认配置文件的配置时,其更改将影响所有节点。默认配置文件无法删除。

您可以创建用户定义的(自定义)配置文件以覆盖特定主机传输节点组的默认配置文件。如果将多个配置文件应用于主机传输节点上的监控器,上次应用的配置文件将覆盖其他配置文件。默认配置文件的优先级最低。

无论是配置监控器的默认配置文件还是自定义配置文件,配置文件中的某些属性都无法编辑。

例如:
  • esx-obsrv-stats-monitor 的默认配置文件将应用于系统创建的默认组,其中包含系统中的所有主机传输节点。您无法编辑默认配置文件的 applied_to_group_paths 属性。
  • 您无法通过将配置文件中的 enable 属性设置为 false 来停用 esx-obsrv-alarms-monitor。此监控器可报告系统中的警报,并且始终处于激活状态。

监控器类型

SHA 框架主要包含两种监控器。

衡量指标导出程序监控器

这类监控器用于将衡量指标(统计信息)导出到目标,例如 NSX Manager。例如,esx-obsrv-stats-monitor

对于衡量指标导出程序监控器,系统仅支持一个用户定义的(自定义)配置文件。

标准监控器

这类监控器用于执行除导出衡量指标以外的其他任务,例如向 NSX Manager 报告警报,以及将统计信息转储到文件等。例如,esx-obsrv-alarms-monitor, esx-obsrv-segment-stats-file-dump-monitor

对于标准监控器,您可以创建的用户定义(自定义)配置文件的数量没有限制。

监控器定义了其控制的统计信息(衡量指标)的高级类别。监控器中的统计信息按多个子类别进行组织。子监控器定义为控制各个子类别。默认情况下,为父监控器定义的配置将应用于父监控器中的所有子监控器。如果需要,您可以编辑子监控器的配置。

例如:

esx-obsrv-stats-monitor 是衡量指标导出程序类型的监控器。它包含两个衡量指标导出程序类型的子监控器,分别称为 esx-obsrv-datapath-traffic-stats-monitoresx-obsrv-datapath-infra-stats-monitor

在带有多个子监控器的监控器中对统计信息进行分类的优势在于,您可以控制所有子监控器以及父监控器。您无需为各子监控器运行单独的 API 调用以配置其属性。