SNMP推送机制

3

最近我遇到了一个SNMP问题。我的客户要求我定期将CPU、硬盘和内存数据推送到网络管理系统。我已经通过snmpwalk命令配置好了我的snmpd.conf文件来拉取数据,但不知道如何定期推送到NMS。还需要知道如何测试数据是否被正确地推送。任何帮助都将是非常有益的。


NMS提供哪些接口给您使用? 这似乎不是通常委派给SNMP代理的任务。 - Jolta
NMS只为我提供SNMP接口。我必须定期检查硬盘或其他硬件的状态,并需要将陷阱发送到NMS系统。 - Souvik Bhattacharya
1个回答

3
如果NMS提供的接口不仅限于SNMP,例如通过FTP传输的3GPP XML文件,我强烈建议使用该接口。
您已经运行了SNMP Agent,并且它将响应get-requests、walk等请求。通常情况下,企业级NMS可以定期轮询SNMP Agent以收集您所描述的数据,这是电信行业定义的性能管理(PM)中的一种常见方法,符合FCAPS标准。对于数量适中、间隔合理的计数器,这种方法通常效果很好。轮询时间过于频繁或者数据量过大时可能会出现轮询问题。
从SNMP Agent中,您还可以选择发送Trap消息,这些是自发异步的消息。通常情况下,trap只用于通知NMS有关受监控设备的重要事件,例如设备故障(Fault Management)。但是,技术上没有什么可以阻止您设计一个定义了定期发送包含性能数据的trap的MIB。可能需要在NMS上进行某种形式的适配,以从SNMP traps接收PM数据,因为这通常不做。如果NMS无法定期轮询计数器,则似乎不太可能具有足够的灵活性来执行此操作。
如果存在大量计数器,则Trap不适用,因为每个消息的大小最好不要超过网络的MTU(以太网为1500字节)。

谢谢您的建议,非常有帮助。但是您能否告诉我如何设计MIB文件呢?您可以给我一些示例来开始吗? - Souvik Bhattacharya
我可以推荐David T. Perkins的《理解SNMP MIBs》一书。如果没有时间/预算购买文献,您可以开始阅读RFC 2578和RFC 3512的第3节。这确实是一个太大的主题,无法在Stackoverflow帖子中讨论。如果您能够阅读和理解标准MIB模块(IF-MIB等),那么您已经完成了一半。 确保您拥有良好的工具。 一些示例位于http://trac.tools.ietf.org/area/ops/trac/wiki/mib-review-tools 我还使用过一款商业产品“Visual MIBuilder”。 - Jolta
太好了,我会仔细阅读RFC。但是有一件事,在进行基本的谷歌搜索时,我发现也可以通过配置snmpd.conf文件来发送陷阱。所以,您能否确认一下。另外,我在net-snmp中将在哪里找到现有的MIB文件。 - Souvik Bhattacharya
我不记得如何配置net-snmp,但我可以通过谷歌或查阅文档来找到答案。虽然如果你这样做会更快... - Jolta
谢谢Jolta。您的建议将帮助我得到答案。 - Souvik Bhattacharya
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接