会员数量

会员数量

为了监控目的,我尝试从交换机堆栈中获取以下信息。以下是通过 ssh 登录直接在交换机堆栈上执行的命令及其输出:

root@stack> show virtual-chassis                 

Preprovisioned Virtual Chassis
Virtual Chassis ID: cf44.0df5.1234
Virtual Chassis Mode: Enabled
                                           Mstr           Mixed Neighbor List
Member ID  Status   Serial No    Model     prio  Role      Mode ID  Interface
0 (FPC 0)  Prsnt    GAxxxxxxx8 ex3300-48t 129  Master*     NA  2  vcp-255/1/2
                                                                 3  vcp-255/1/3
                                                                 1  vcp-255/1/1
1 (FPC 1)  Prsnt    GAxxxxxxx2 ex3300-48t   0  Linecard    NA  0  vcp-255/1/2
                                                                 5  vcp-255/1/3
                                                                 2  vcp-255/1/1
2 (FPC 2)  Prsnt    GAxxxxxxx3 ex3300-48t   0  Linecard    NA  1  vcp-255/1/2
                                                                 3  vcp-255/1/3
                                                                 0  vcp-255/1/1
3 (FPC 3)  Prsnt    GAxxxxxxx1 ex3300-48t   0  Linecard    NA  4  vcp-255/1/2
                                                                 2  vcp-255/1/3
                                                                 0  vcp-255/1/1
4 (FPC 4)  Prsnt    GAxxxxxxx7 ex3300-48t 129  Backup      NA  5  vcp-255/1/2
                                                                 6  vcp-255/1/3
                                                                 3  vcp-255/1/1
5 (FPC 5)  Prsnt    GAxxxxxxx5 ex3300-48t   0  Linecard    NA  4  vcp-255/1/2
                                                                 6  vcp-255/1/3
                                                                 1  vcp-255/1/1
6 (FPC 6)  Prsnt    GAxxxxxxx3 ex3300-48t   0  Linecard    NA  4  vcp-255/1/0
                                                                 5  vcp-255/1/1

最后,我想检查成员数量和/或状态(Prsnt/NotPrsnt),以及角色是否发生了变化(例如备份-->主)。

使用 snmpwalk 我得到了一个很长的条目列表,但是没有任何条目与上面的任何值匹配。

那么这是否意味着没有可能将该信息从堆栈中获取出来?

答案1

嗯,这是一个有分量的问题……分解一下

会员数量

鉴于 VC 在 SNMP 上的描述方式,您很可能不会得到该信息。OID 树中没有当前“成员计数”值。您最好的选择是步行.1.3.6.1.4.1.2636.3.40.1.4.1.1.1.2并计算返回的序列号(或使用成员 ID、MAC 或其他任何值)。看起来您正在使用 Icinga,因此您可能想要使用脚本来获取该 OID 并计算结果,因为 Icinga 不会为您执行此操作。我在 Nagios 中对其他几十种情况做了类似的事情。(我根据其中一些情况编写了一个快速脚本;使用它,或将其用作示例来执行您想要的操作:https://gist.github.com/peelman/ef7b682de3af579c2896585385e18e7c)。

会员地位

我看不出有什么(简单)方法可以获取存在/不存在状态。你可能只能放弃这个方法,或者逐个监控 VCP 接口本身。

角色变化

这是一个很好的使用陷阱的方法;但如果你打算使用轮询,并且你正在静态设置优先级,这样你就知道你的主/备份将是什么最多的时间,那么您可以查看下的值.1.3.6.1.4.1.2636.3.40.1.4.1.1.1.3;节点 .0 将是成员 0,节点 .1 将是成员 1,依此类推。

值 1 表示主用,2 表示备用,3 表示线路卡(可在管理信息库本身)。问题是,如果您将所有这些都留给默认虚拟机架设置的动态,而不设置主控优先级、静态成员 ID(基于序列号)等,这些值可能会发生变化。

npeelman@nagios:~$ snmpwalk -v2c -c community ex3300-test.domain.tld .1.3.6.1.4.1.2636.3.40.1.4.1.1.1.3
JUNIPER-VIRTUALCHASSIS-MIB::jnxVirtualChassisMemberRole.0 = INTEGER: master(1)
JUNIPER-VIRTUALCHASSIS-MIB::jnxVirtualChassisMemberRole.1 = INTEGER: backup(2)

参考

  • 您可以找到描述的整个虚拟机箱 MIB 树这里
  • Juniper 的 MIB 可用这里

相关内容