Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

在 NFX150、NFX250 下一代和 NFX350 设备上配置 SNMP

SNMP 从中央位置监控网络设备。NFX 系列(NFX150、NFX250 NextGen 和 NFX350)设备支持使用 SNMPv2c 和 SNMPv3 查询 MIB 数据。单独的 SNMP 代理(称为 SNMP 进程或 snmpd)驻留在 vjunos0 和主机操作系统上。vjunos0 充当主机操作系统的代理。与系统和机箱相关的 MIB 数据可在 vjunos0 中找到。

从 Junos OS 21.4R1 版开始,NFX 系列设备支持 LM-SENSORS-MIB、ENTITY-SENSORS-MIB 和 libvirt MIB。LM-SENSORS-MIB 和 ENTITY-SENSORS-MIB 数据在 vjunos0 上可用,而 libvirt MIB 数据在主机操作系统上可用。您可以使用 libvirt MIB 来监控虚拟机。本主题讨论 libvirt MIB 的 SNMP 实现。

如何配置 SNMPv2c 以访问 libvirt MIB 数据

SNMPv2c 使用公共组字符串,在确定 SNMP 客户端以及客户端如何访问 SNMP 代理中的数据时,这些字符串充当密码。社区字符串未在 NFX 系列设备上预配置。要使用 SNMPv2c 访问 MIB 数据,必须为主机操作系统配置社区字符串和 SNMP 代理。社区字符串将添加到主机操作系统。

图 1 显示了 NFX 系列设备上 SNMPv2c 的通信流。

图 1:NFX 系列设备上 SNMPv2c 的通信流 Communication Flow for SNMPv2c on NFX Series Devices

当用户使用来自网络管理服务器的社区字符串发出 SNMP 命令(如 snmpwalksnmpget 时:

  • 请求将转到 vjunos0 中的 SNMP 守护程序。SNMPD 读取 SNMP 请求中的社区字符串,并使用内部路由实例 nfx-host 将请求重定向到主机操作系统。
  • 主机操作系统中的 SNMPD 处理请求并将响应发送到 vjunos0,然后 vjunos0 将其发送到网络管理服务器。

要配置 SNMPv2c,请执行以下操作:

  1. 在主机操作系统中配置 SNMPv2c 社区字符串:
    注意:

    确保设备上尚不存在同名社区。

  2. 在 vjunos0 中配置代理:

    要启用陷阱,请参阅 如何启用 libvirt SNMPv2c 陷阱支持

如何配置 SNMPv3 以访问 libvirt MIB 数据

SNMPv3 支持身份验证和加密,因此提供了一种访问 MIB 数据的安全方式。SNMPv3 使用基于用户的安全模型 (USM) 实现消息安全,使用基于视图的访问控制模型 (VACM) 进行访问控制。USM 指定身份验证和加密,VACM 指定访问控制规则。 图 2 显示了 NFX 系列设备上 SNMPv3 的通信流。对于 SNMPv3,您必须创建:

  • 主机操作系统中 vmhost 层次结构下的 SNMPv3 用户,具有身份验证类型和隐私
  • 具有用户名和上下文的 SNMPv3 代理
图 2:NFX 系列设备上 Communication Flow for SNMPv3 on NFX Series Devices SNMPv3 的通信流

当用户使用来自网络管理服务器的用户名和身份验证凭据发出 SNMP 命令(如 、snmpwalksnmpget) 时:

  • 请求将转到 vjunos0 中的 SNMP 守护程序。SNMPD 读取 SNMP 请求中主机操作系统的上下文,并使用内部路由实例 nfx-host 将请求重定向到主机操作系统。
  • 主机操作系统中的 SNMPD 处理请求并将响应发送到 vjunos0,然后 vjunos0 将其发送到网络管理服务器。

要配置 SNMPv3:

  1. 配置 USM 的本地引擎信息:
  2. 配置远程引擎和远程用户。您必须将远程引擎 ID 配置为 80001f8804686f7374。远程引擎 ID 用于计算安全摘要,以便对发送给远程主机上用户的数据包进行身份验证和加密。发送通知消息时,代理将使用在远程引擎(通知目标)上配置的用户凭据。
  3. 配置 VACM:
  4. 在主机操作系统上配置 SNMPv3:
  5. 配置 SNMP v3 代理:

    要启用陷阱,请参阅 如何启用 libvirt SNMPv3 陷阱支持

如何查询 Libvirt MIB 数据

可以使用 snmpgetsnmpgetnextsnmpwalk 命令读取 MIB 信息。请注意,您不能用于 snmpset 配置 libvirt MIB。

libvirt MIB 提供以下信息:

  • 活动虚拟客户机的名称(域名)
  • 活动访客的当前状态(域状态)
  • 虚拟客户机使用的虚拟 CPU 数(为域定义的 CPU 计数)
  • 虚拟客户机使用的当前内存量(以 MiB 为单位)(当前分配的内存)
  • 域的内存限制(虚拟来宾可以使用的最大内存量(以 MiB 为单位)
  • 虚拟客户机使用的 CPU 时间,以纳秒为单位(CPU 时间)
  • 虚拟来宾的状态(行状态)

以下是在 NMS 上执行命令时的示例 snmpwalk 输出:

  • SNMPv2c:
  • SNMPv3:

以下是在 NFX 系列设备上执行命令时的示例 snmpwalk 输出:

支持的机箱 MIB 和陷阱

NFX 系列设备支持以下机箱 MIB:

  • jnxFruContentIndex
  • jnxFruL1Index
  • jnxFruL2Index
  • jnxFruL3Index
  • jnxFruName
  • jnxFruType
  • jnxFruSlot
  • jnxFruTemp
  • jnxFruOfflineReason
  • jnxFruLastPowerOff
  • jnxFruLastPowerOn
  • jnxFruPower正常运行时间
  • jnxFruChassisId
  • jnxFruChassisDescr
  • jnxFruPsdAssignment

NFX 系列设备支持以下陷阱:

  • jnxFanFailure
  • jnxFanOK
  • jnx电源故障
  • jnxPowerSupplyOK
  • JNX超温
  • jnx温度正常
  • 已删除 jnx电源(仅适用于 NFX350)

支持的 libvirt MIB 陷阱

libvirt MIB 监视虚拟机并将异步陷阱发送到网络管理服务器。例如,如果域 (VNF) 意外崩溃,则会向网络管理服务器发送通知。陷阱在主机操作系统中生成,并发送到 vjunos0 上的 snmptrapd 守护程序。snmptrapd 守护程序将陷阱转发到网络管理服务器。

libvirt 陷阱具有以下定义结构:

下面是 snmp libvirt 陷阱的示例输出:

活动来宾的当前状态可以是以下状态之一:

  • 跑步(1)
  • 已屏蔽(2)
  • 已暂停(3)
  • 关机(4)
  • 关断(5)
  • 崩溃(6)

如何启用 libvirt SNMPv2c 陷阱支持

要启用 SNMPv2c 陷阱支持,请执行以下操作:

  1. 配置陷阱的社区名称:

  2. 配置客户端地址,即陷阱源自的源地址。如果未配置源地址,则虚拟机管理程序地址 (192.168.1.1) 将用作客户端地址。

  3. 配置端口转发。您可以配置多个 IP 地址。

如何启用 libvirt SNMPv3 陷阱支持

要启用 SNMPv3 陷阱支持,请执行以下操作:

  1. 配置陷阱的用户名:

  2. 配置客户端地址,即陷阱源自的源地址。如果未配置源地址,则虚拟机管理程序地址 (192.168.1.1) 将用作客户端地址。

  3. 为用户配置 AES 和 SHA 密码:

  4. 为 libVirtMIB 陷阱支持配置端口转发。您可以配置多个 IP 地址。