【发布时间】:2013-04-24 23:19:31
【问题描述】:
我正在运行一个应用程序,它每 5 分钟从 2000 多个交换机收集 snmp 数据、upoctets、downoctects、端口状态,并在图表中显示它们,并根据端口状态在网页上以绿色或红色显示它们,这是第一次当我添加设备时,我会通过它获取端口索引将其保存到 db,每五分钟我从 db 获取端口索引针对 oid 运行它执行 snmpget 逐个端口获取数据并将它们保存到 mysql。
几乎有 8 个 oid 和 2000 多个设备,串行需要更长的时间才能执行下一个 oid,直到最后一个完成。我听说过 snmpbulkget 或 snmptable 但不了解它们,
我想要一种替代方法,我可以减少网络流量并批量获取表的数据,而不是我为每个 oid 一个一个地执行查询 snmpget,这通常会执行五分钟的差异。
我向交换机发送一个表请求,它会返回所有端口状态的值表。
这将减少等待下一个呼叫并加快进程,也将减少网络流量。
有可能吗?
您能否对我的场景进行改进,因为很多接口计数器每 5 分钟查询数千台设备。
谢谢
【问题讨论】: