我们有一台 Cisco 2960S 系列交换机,它是一台堆叠交换机,其中多个物理交换机作为一个单元进行管理。整个堆叠交换机分配有一个管理 IP。
因此,如果交换机堆栈中的一个成员发生故障,IP 地址仍然可以 ping 通。所以我们需要检查堆栈中是否有任何单个交换机发生故障。
有人能说明一下如何使用 SNMP 检查单个交换机故障吗?
答案1
您可以尝试以下 nagios 检查:http://exchange.nagios.org/directory/Plugins/Hardware/Network-Gear/Cisco/Check-cisco-3750-stack-status/details
与往常一样,最好通过在可能的情况下导致失败来测试检查是否按预期执行。此检查基于以下 oid(取自脚本本身):
my $cisco_stack_table = "1.3.6.1.4.1.9.9.500.1.2.1.1.1";
my $cisco_stack_state = "1.3.6.1.4.1.9.9.500.1.2.1.1.6";
my $cisco_stack_ring = "1.3.6.1.4.1.9.9.500.1.1.3.0";
具体来说,cisco_stack_state(根据 mib 的 cswSwitchState 是表的一部分,因此每个交换机一个)的描述是:
交换机的当前状态:
等待 - 等待堆栈中其他交换机上线的有限时间。
正在进行 – 主选举或不匹配检查正在进行中。
添加-交换机已添加到堆栈。
就绪 — 交换机可以运行。
sdmMismatch — 新成员不支持主服务器上配置的 SDM 模板。
verMismatch — 主服务器上运行的操作系统版本与该成员服务器上运行的操作系统版本不同。
featureMismatch – 主服务器上配置的某些功能不受该成员支持。
newMasterInit-等待新主机在主机切换(Master Re-Init)后完成初始化。
provisioned—交换机不是堆栈中的活动成员。
无效 – 交换机的状态机处于无效状态。
已移除 — 交换机已从堆栈中移除。