在我开始之前,我意识到这里已经有一些与 SNMP 相关的问题,但似乎没有多少问题得到解答——这可能意味着我问错了地方,但我现在不知道还能去哪里。
几天来,我一直在尽我所能阅读 SNMP,但我发现很难理解即将发生的事情。我们的想法是最终我们会将 SNMP 集成到我们的 Java 应用程序服务器中,这将允许最终用户将其合并到他们预先存在的网络管理系统 (NMS) 中。
不幸的是,我对即将发生的事情感到完全困惑。根据我从与最终用户的交谈中了解到的情况(不幸的是,在进行任何研究之前),监控允许他们现有的 NMS 以树型显示的形式向他们的管理员提供生命统计数据的视图,向他们提供有关不同部分的反馈系统处于高水平,并允许他们深入研究特定的子系统。
通过阅读,我们将实现一个“代理”,它有几个定义的接口,允许处理和响应 GET 请求等。这是有道理的,但我不知道通信的格式是什么——似乎没有任何具体的例子来说明任何消息的外观、信息的编码方式。
不过,我更多的困惑是关于管理信息库(MIB)。我错误地假设代理的接口将允许请求受监视的属性,然后依次请求这些属性的值。允许在 NMS 端无需任何配置即可启动和检测任何新的 Agent(v3 中的身份验证除外)。如果我理解正确,情况并非如此,代理必须改为定义 MIB,NMS 可以使用这些 MIB 来确定这些属性。当人们开始提到数千个现有的 MIB 并且它们可以被重用时,我的困惑增加了,我不明白。是否可以使用单个 MIB 定义来描述网络设备的特定属性(例如在路由器上连接互联网的简单事物:是/否)对于许多不同的设备?如果是这样,我不相信我们的软件可以监控任何其他设备/系统共有的任何东西,但我们是否应该寻找已经存在的 MIB?目前我真的没有看到这样一个系统有什么好的理由,代理导出这些信息肯定会更容易——所以如果有人能启发我,我将不胜感激!
我认为如果我能够设置一个简单的 SNMP 代理和某种客户端会有所帮助,我可以开始查看该过程并最终检查两者之间的通信,但我发现很难找到任何提供任何信息的地方这样的事情。Nagios 已被推荐给我们作为测试“客户端”/NMS,但他们的“快速入门”部分建议下载 600Mb 虚拟机 - 肯定有更快的入门方法吗?
任何帮助或建议将不胜感激,我已经浏览了 Wiki 页面,但它似乎没有详细介绍 MIB 并且之前不必处理类似引用的 RFC 之类的任何事情,虽然它们可能包含所有他们目前对我来说似乎完全无法理解的信息。或者是否有任何书籍可以推荐用于 v3 的概述和实施?
感谢您的阅读,如果您认为可以提供帮助,则更加感谢!