在Redhat中如何使用SNMP来获取我们需要的信息?

在Redhat中如何使用SNMP来获取我们需要的信息?

我是 SNMP 的新手,如果我们可以在 SNMP 中添加数据节点,我找不到任何明确的文章。 SNMP又是如何收集数据的呢?

我想监控以下资源,这些资源可以从SAR报告中获取。所以,请告诉我如何在 SNMP 下添加它,或者至少 SNMP 如何收集数据,以便我尝试弄清楚是否可以添加这些:

  • 使用的 RAM 和 SWAP(无缓冲区/高速缓存)和总计
  • 负载(1分钟、5分钟、15分钟)
  • 爱荷华州
  • CPU空闲
  • 页面输入/输出
  • 换入/换出
  • 每秒 I/O 读取块/字节/扇区
  • 每秒 I/O 写入块/字节/扇区
  • 每秒 I/O 请求数
  • 网络接口速度

我可以在 SNMP 树中找到一些,但不是全部。我可以在 SNMP 下添加任何数据节点吗?

我们需要它作为监控 cacti 中数百个服务器的一部分。

答案1

RedHat 附带的 Net-SNMP 软件包实际上是一个非常灵活的监控代理,它将获取您默认列出的所有开箱即用的指标的值。然而,它已经很老了:SNMP 协议本身已经存在了二十多年,并且在这段时间里做出了重大改进。它的学习曲线也相当陡峭。这与协议基础上26年以上的发展有直接关系。 Net-SNMP 项目几乎满足了所有这些要求(首先是卡内基梅隆大学的实现,然后是加州大学戴维斯分校的“ucd-snmp”,这导致了当前的“Net-SNMP”代码分支) ,所以有相当多的信息需要掌握,但他们有很好的文档。

http://net-snmp.sourceforge.net/docs/man/

是发行版的基本手册页。 Wiki 有很好的“快速设置”指南,可以在以下位置找到:

http://net-snmp.sourceforge.net/wiki/

所以我会从这里开始快速启动并运行。但请继续阅读...

/procNet-SNMP 使用各种来源(文件系统和lm-sensors软件包等)从 Linux 内核收集数据。它还可以扩展到报告您想要的任何内容,但这需要大量的时间和知识投入才能做到这一点。

为了了解幕后发生的事情,您需要了解的第一个概念是 SNMP MIB(管理信息库)的结构和可用性,它控制您可以查询哪些信息。我不会花很多时间在这上面,但是了解您的系统上有哪些 MIB 以及一些最常见的 MIB 对象(如 TABLE、STRING、INT 和 INFORM)的结构将允许您选择合适的对象进行监控需要。

您需要的第二部分是了解 Net-SNMP 配置文件:snmpd.conf。这是一个复杂的配置,因此请仔细阅读手册页以了解为什么要按默认方式进行设置。

此外,从默认实现中,您将需要选择您将支持/查询的协议版本。请不要使用版本 1。实际上,您的选择是在版本 2c 和 3 之间,以支持基本安全性和 64 位计数器支持。

祝你好运!你的冒险等待着!

相关内容