XenServer

使用 NRPE 监控主机和 dom0 资源

具有池管理员角色的用户可以使用任何支持 Nagios 远程插件执行器 (NRPE) 的第三方监控工具来监控您的 XenServer® 主机和 dom0(即主机的控制域)所消耗的资源。

您可以使用以下检查插件来监控主机和 dom0 资源:

指标 NRPE 检查名称 描述 默认警告阈值 默认严重阈值 返回的性能数据
主机 CPU 负载 check_host_load 获取并检查主机每个物理 CPU 的当前负载,其中负载是指处于运行或可运行状态的 vCPU 数量。 3 4 主机 CPU 的当前系统负载(通过计算主机物理 CPU 的平均负载得出)。
主机 CPU 使用率 (%) check_host_cpu 获取并检查主机的当前平均整体 CPU 使用率。 80% 90% 当前空闲的主机 CPU 百分比和正在使用的主机 CPU 百分比。
主机内存使用率 (%) check_host_memory 获取并检查主机的当前内存使用率。 80% 90% 当前空闲的主机内存百分比和正在使用的主机内存百分比。
主机 vGPU 使用率 (%) check_vgpu 获取并检查主机上所有当前正在运行的 Nvidia vGPU 使用率。 80% 90% 正在运行的 vGPU 中当前空闲的百分比和正在使用的百分比。
主机 vGPU 内存使用率 (%) check_vgpu_memory 获取并检查主机上所有当前正在运行的 Nvidia vGPU 内存使用情况(包括共享内存和图形内存)。 80% 90% 正在运行的 vGPU 内存(包括共享内存和图形内存)中当前空闲的百分比和正在使用的百分比。
Dom0 CPU 负载 check_load 获取并检查 dom0 中每个 CPU 的当前系统平均负载,其中负载是指处于运行或可运行状态的进程数。 2.7,2.6,2.5 3.2,3.1,3 通过计算过去 1、5 和 15 分钟的平均值来获得的主机 CPU 负载数据。
Dom0 CPU 使用率 (%) check_cpu 获取并检查 dom0 当前的平均总 CPU 使用率。 80% 90% dom0 的平均总 CPU 使用率(以百分比表示)。
Dom0 内存使用率 (%) check_memory 获取并检查 dom0 当前的内存使用率。 80% 90% dom0 当前空闲内存的百分比以及正在使用的百分比。
Dom0 空闲交换空间 (%) check_swap 获取并检查 dom0 当前的交换空间使用率。 20% 10% dom0 上当前可用 MB 的百分比。
Dom0 根分区可用空间 (%) check_disk_root 获取并检查 dom0 当前根分区的使用情况。 20% 10% dom0 根分区上当前可用 MB 的百分比。
Dom0 日志分区可用空间 (%) check_disk_log 获取并检查 dom0 当前日志分区的使用情况。 20% 10% dom0 日志分区上当前可用 MB 的百分比。
工具栈状态 check_xapi 获取并检查 XenServer 管理工具栈(也称为 XAPI)的状态。     XAPI 已运行时间(秒)。
多路径状态 check_multipath 获取并检查存储路径的状态。     存储路径的状态。OK 表示所有路径都处于活动状态,WARNING 表示某些路径已失败但仍有一个以上路径处于活动状态,CRITICAL 表示只有一个路径处于活动状态或所有路径都已失败,UNKNOWN 表示主机多路径已禁用且无法获取路径状态。

NRPE 是一种本地服务,它在 dom0 中运行,并在 TCP 端口(默认)5666 上侦听来自监控工具的检查执行请求。请求到达后,NRPE 会对其进行解析,从配置文件中查找相应的检查命令(包括参数详细信息),然后运行它。检查结果将发送到监控工具,该工具会存储过去的检查结果并提供显示历史性能数据的图表。

先决条件

要使用 NRPE 监控主机和 dom0 资源,您使用的监控工具必须满足以下先决条件:

  • 监控工具必须与 NRPE 4.1.0 版兼容。
  • 为了允许 NRPE 与监控工具之间进行通信,监控工具必须支持带有密码 ECDHE-RSA-AES256-GCM-SHA384ECDHE-RSA-AES128-GCM-SHA256 的 TLS 1.2,并且 EC 曲线为 secp384r1

限制

  • 您可以为整个资源池或不属于资源池的独立主机配置 NRPE 设置。目前,您无法为资源池中的单个主机配置 NRPE 设置。
  • 如果您将主机添加到已启用并配置 NRPE 的池中,XenCenter® 不会自动将池的 NRPE 设置应用于新主机。您必须在新主机添加到池后重新配置池上的 NRPE 设置,或者在将新主机添加到池之前使用相同的 NRPE 设置配置新主机。

    注意:

    在添加新主机后重新配置池上的 NRPE 设置时,请确保主机已启动并正在运行。

  • 如果从已启用并配置 NRPE 的池中移除主机,XenCenter 不会更改主机或池上的 NRPE 设置。

使用 xe CLI 配置 NRPE

您可以使用 xe CLI 或 XenCenter 配置 NRPE。有关如何使用 XenCenter 配置 NRPE 的更多信息,请参阅使用 NRPE 监控主机和 dom0 资源

对 NRPE 进行配置更改后,请使用以下命令重启 NRPE 服务:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=restart
<!--NeedCopy-->

启用 NRPE

NRPE 在 XenServer 中默认禁用。要在主机的控制域 (dom0) 上启用 NRPE,请在 xe CLI 中运行以下命令:

  1. 获取要监控的主机的 UUID:

    xe host-list

  2. 在主机上启用 NRPE:

    xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=enable

    如果操作成功运行,此命令将输出 Success。当 XenServer 重启时,NRPE 会自动启动。

要停止、启动、重启或禁用 NRPE:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=<operation>
<!--NeedCopy-->

其中 operationstopstartrestartdisable

监控服务器

这是一个逗号分隔的 IP 地址或主机名列表,这些地址或主机名被允许与 NRPE 守护程序通信。支持带位掩码的网络地址(例如 192.168.1.0/24)。

查看当前监控服务器列表:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:allowed_hosts
<!--NeedCopy-->

允许监控工具执行检查:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:allowed_hosts=<IP address or hostname>
<!--NeedCopy-->

查询所有 NRPE 设置:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config
<!--NeedCopy-->

配置多个 NRPE 设置:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:allowed_hosts=<IP address or hostname> args:ssl_logging=<SSL log level> args:debug=<debug log level>
<!--NeedCopy-->

日志

调试日志记录

默认情况下,调试日志记录处于禁用状态。

要检查调试日志记录是否已启用,请运行以下命令:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:debug
<!--NeedCopy-->

如果返回 debug: 0,则表示调试日志记录已禁用。

要启用调试日志记录:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:debug=1
<!--NeedCopy-->

SSL 日志记录

默认情况下,SSL 日志记录处于禁用状态:

ssl_logging=0x00
<!--NeedCopy-->

要检查是否启用了 SSL 日志记录,请运行以下命令:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-config args:ssl_logging
<!--NeedCopy-->

要启用 SSL 日志记录:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-config args:ssl_logging=0x2f
<!--NeedCopy-->

警告和严重阈值

对于其中一些检查插件,您可以设置警告和严重阈值,以便如果检查插件返回的值超过阈值,则会生成警报。警告阈值表示潜在问题,而严重阈值表示需要立即关注的更严重问题。尽管已为警告和严重阈值设置了默认值,但您可以调整这些阈值。

要查询所有检查的默认警告和严重阈值,请运行以下 xe CLI 命令,该命令将返回所有检查及其关联的警告和严重阈值列表:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-threshold
<!--NeedCopy-->

您还可以查询特定检查的阈值。例如,要获取 check_memory 检查插件的警告和严重阈值,请运行以下 xe CLI 命令:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=get-threshold args:check_memory
<!--NeedCopy-->

您还可以更改阈值的默认值。例如,要更改 check_memory 检查插件的默认阈值,请运行以下 xe CLI 命令:

xe host-call-plugin host-uuid=<host uuid> plugin=nrpe fn=set-threshold args:check_memory args:w=75 args:c=85
<!--NeedCopy-->
使用 NRPE 监控主机和 dom0 资源