使用 SNMP 监控主机和 dom0 资源
注意:
SNMP 功能适用于 XenServer Premium 或试用版客户。有关 XenServer 许可的更多信息,请参阅许可。要升级或获取 XenServer 许可证,请访问XenServer 网站。
借助池管理员角色,您可以使用 SNMP 远程监控 XenServer® 主机和 dom0(主机的控制域)所消耗的资源。SNMP 管理器(也称为网络管理系统 (NMS))向在 XenServer 主机上运行的 SNMP 代理发送查询请求。SNMP 代理通过将收集到的各种指标数据发送回 NMS 来响应这些查询请求。可收集的数据由称为管理信息库 (MIB) 的文本文件中的对象标识符 (OID) 定义。OID 表示有关网络设备的特定可测量信息,例如 CPU 或内存使用情况。
您还可以配置陷阱,这些是代理发起的邮件,用于提醒 NMS XenServer 中发生了特定事件。查询请求和陷阱都可用于监控 XenServer 池的状态。这些被定义为度量和陷阱对象,并通过 MIB 文件
XENSERVER-MIB.txt 中的 OID 进行标识,该文件可从XenServer 下载页面下载。下表提供了有关这些度量和陷阱对象的信息。
度量对象
您可以使用下表中列出的度量来请求有关 XenServer 主机的特定信息。SNMP 管理器在向 SNMP 代理发送查询请求时会使用这些度量,因此您可以在 NMS 中查看此数据。
您可以从 NMS 或 xe CLI 查看这些度量对象返回的数据。要从 xe CLI 查询度量对象,请运行
host-data-source-query 或 vm-data-source-query,并将 RRDD 数据源作为 data-source 参数的值提供。例如:
xe host-data-source-query data-source=cpu_avg host=<host UUID>
注意:
默认情况下,NMS 使用端口 161 向 SNMP 代理发送 OID 查询请求。
| 对象标识符 (OID) | RRDD 数据源 | 返回的数据 | 类型 |
|---|---|---|---|
| 1.3.6.1.4.1.60953.1.1.1.1 | memory |
Dom0 总内存(MB) | 无符号32位 |
| 1.3.6.1.4.1.60953.1.1.1.2 | memory_internal_free |
Dom0 可用内存(MB) | 无符号32位 |
| 1.3.6.1.4.1.60953.1.1.1.3 | cpu_usage |
Dom0 CPU 使用率(百分比) | 浮点数 |
| 1.3.6.1.4.1.60953.1.1.1.4 | memory_total_kib |
主机总内存(MB) | 无符号32位 |
| 1.3.6.1.4.1.60953.1.1.1.5 | memory_free_kib |
主机空闲内存(MB) | 无符号32位整数 |
| 1.3.6.1.4.1.60953.1.1.1.6 | cpu_avg |
主机 CPU 使用率(百分比) | 浮点数 |
| 1.3.6.1.4.1.60953.1.1.1.7 | (参见注释 1) | pCPU 数量 | 无符号32位整数 |
| 1.3.6.1.4.1.60953.1.1.1.8 | running_vcpus |
正在运行的 vCPU 数量 | 无符号32位整数 |
| 1.3.6.1.4.1.60953.1.1.1.9 | running_domains |
正在运行的虚拟机数量 | 无符号32位整数 |
注意:
-
pCPU 的名称格式为
cpu后跟一个数字。要从 xe CLI 查询 pCPU 的数量,请运行以下命令:xe host-data-source-list host=<host UUID> | grep -E 'cpu[0-9]+$'这将返回与正则表达式cpu[0-9]+匹配的 CPU 指标列表。
陷阱
陷阱是 SNMP 代理发送的警报,用于在特定事件发生时通知 SNMP 管理器,从而使您能够监控 XenServer 主机并及早发现问题。您可以配置 SNMP 设置,以便在达到限制时(例如,如果主机 CPU 使用率过高)生成陷阱。生成陷阱后,它会发送到您的 NMS,并且以下字段将作为陷阱对象的一部分返回。
注意:
默认情况下,池协调器主机上的 SNMP 代理使用 UDP 端口 162 将陷阱发送到 NMS。
| 对象标识符 (OID) | 字段名称 | 类型 | 描述 |
|---|---|---|---|
| 1.3.6.1.4.1.60953.1.10.1.1 | operation |
字符串 | 可以是以下值之一:add 或 del。如果 XenServer 生成陷阱并发送到您的 NMS(XenCenter 中也会创建警报),则 operation 为 add;如果警报被销毁(例如,如果您关闭警报),则为 del。 |
| 1.3.6.1.4.1.60953.1.10.1.2 | ref |
字符串 | 陷阱对象的引用。 |
| 1.3.6.1.4.1.60953.1.10.1.3 | uuid |
字符串 | 陷阱对象的 UUID。 |
| 1.3.6.1.4.1.60953.1.10.1.4 | name |
字符串 | 陷阱对象的名称。 |
| 1.3.6.1.4.1.60953.1.10.1.5 | priority |
整数 | 陷阱的严重性。可以是以下值之一:1:严重,2:主要,3:警告,4:次要,5:信息,others:未知。 |
| 1.3.6.1.4.1.60953.1.10.1.6 | class |
字符串 | 生成的陷阱类别。可以是以下值之一:VM、Host、SR、Pool、VMPP、VMSS、PVS_proxy、VDI 或 Certificate。 |
| 1.3.6.1.4.1.60953.1.10.1.7 | obj-uuid |
字符串 | 字段 class 的各种类别的 xapi 对象 UUID。 |
| 1.3.6.1.4.1.60953.1.10.1.8 | timestamp |
字符串 | 生成陷阱的时间。 |
| 1.3.6.1.4.1.60953.1.10.1.9 | body |
字符串 | 有关字段 name 的详细信息。 |
先决条件
-
池中的所有主机都必须运行相同版本的 XenServer,并且此版本必须包含 SNMP 插件。注意:如果您在 XenCenter® 中看不到“SNMP”选项卡,则可能是因为主机或池成员未运行支持 SNMP 的 XenServer 版本。请将主机或池更新到最新版本的 XenServer。
-
您使用的 NMS 必须支持 SNMPv2c 或 SNMPv3。
-
您的 NMS 和 XenServer 必须通过网络连接。
限制
-
可以为整个池或不属于任何池的独立主机配置 SNMP 设置。目前,无法为池中的单个主机配置 SNMP 设置。
-
如果将主机添加到已启用并配置 SNMP 的池中,XenCenter 不会自动将池的 SNMP 设置应用于新主机。您必须在新主机添加到池后重新配置池上的 SNMP 设置,或者在将新主机添加到池之前使用相同的 SNMP 设置配置新主机。注意:在添加新主机后重新配置池上的 SNMP 设置时,请确保主机已启动并正在运行,且未处于维护模式。
-
如果从已启用并配置 SNMP 的池中移除主机,XenCenter 不会更改主机或池上的 SNMP 设置。
-
在执行滚动池升级或将更新应用于 XenServer 主机和池之前,如果您之前手动修改过以下配置文件并且需要它们,请务必备份它们:
-
/etc/snmp/snmpd.xs.conf -
/etc/sysconfig/snmp -
/var/lib/net-snmp/snmpd.conf
-
-
当 SNMP 代理脱机时,无法生成陷阱。例如,如果 SNMP 代理重新启动,或者池协调器重新启动或重新指定。
使用 XenCenter 配置 SNMP
您可以使用 XenCenter 或 xe CLI 为独立主机或整个池配置 SNMP。有关如何使用 xe CLI 配置 SNMP 的更多信息,请参阅 使用 xe CLI 配置 SNMP。
-
从 XenServer 下载页面 下载
XENSERVER-MIB.txt文件并将其导入到您首选的 NMS 中。 -
在 XenCenter 的基础结构视图中,选择要为其配置 SNMP 设置的主机/池。
-
在常规选项卡中,单击属性。
-
在“属性”对话框中,选择“SNMP”选项卡。注意:为池配置 SNMP 时,“SNMP”选项卡会显示整个池的默认 SNMP 配置值。如果您在 XenCenter 中看不到“SNMP”选项卡,可能是因为主机或池的成员未运行支持 SNMP 的 XenServer 版本。请将主机或池更新到最新版本的 XenServer。
-
选中“启用 SNMP”复选框以启用 SNMP。
-
(可选)选中“支持 SNMPv3”复选框以使 XenServer 除了 SNMPv2c 之外还可使用 SNMPv3。默认情况下,XenServer 使用 SNMPv2c。
-
(可选)要启用调试日志记录,请选中“将调试消息记录到 syslog”复选框。
-
单击“确定”将配置更改应用于主机或池。
-
请参阅 NMS 文档来配置 NMS。确保指定 XenServer SNMP 代理地址(这是您正在监视的 XenServer 主机或池的 IP 地址)。
-
(可选)要配置陷阱接收器并开始接收 XenServer 中发生特定事件时的警报:
-
在 NMS 中,请参阅 NMS 文档来配置陷阱接收器。
-
在“SNMP”选项卡上,单击“添加陷阱接收器”,然后指定“NMS 地址”、“NMS 端口”以及 NMS 支持的 SNMP 版本的参数。
-
要测试配置,请单击“发送测试陷阱”以向 NMS 发送测试陷阱。
-
要删除陷阱接收器,请单击“删除陷阱接收器”。
-
单击“确定”以应用配置更改。
-
相关文档
XenServer 当前版本
-
通过 SNMP 监控主机和 dom0 资源(/zh-cn/xenserver/9/monitor-performance/monitor-snmp.html)