在几个node的cluster环境中发现主node的snmpd进程CPU占用率规律性地定时冲高,top命令中经常能够达到99%,且持续数秒。其他node上snmpd的CPU利用率正常,但是一旦发生failover, slave node变为主node,新的主node上snmpd的利用率又会变高。
这个问题其实影响不大,虽然CPU瞬时冲高,但是LA数据比较正常,4核的机器LA5也只有2点多,LA15只有1点多。
最开始以为是snmpd.conf配置中某些监控行为可能会导致snmpd使用大量计算资源导致CPU过高,但是将配置全部删除,仅使用默认配置,问题依旧。
后来分析应该与主node上跑的某些服务有关,关掉相关服务,CPU利用率并没有立即下降,但是过5~10分钟,数据恢复正常,通过反复尝试,锁定snmpd和OpenNMS相关。问题出现时,OpenNMS定时采集9000多台设备的性能数据,时间间隔是5分钟,通过命令行能够发现在网口上有大量的网络流量,因此怀疑与此相关。
想关命令: