Skip to content

通过SNMP Get监控Windows、Linux的CPU、内存、硬盘使用情况

本文通过使用报警灯SNMP监视,使用SNMP Get来监控Windows或Linux CPU、内存、硬盘状态。

重要说明

首先请开启系统的SNMP服务,并配置好SNMP账户

开启SNMP服务的过程不属于本文范畴,请使用搜索引擎搜索“Windows 开启SNMP服务”或“Linux 开启SNMP服务”或自行寻找合适的文档。

本案例只介绍监控CPU和硬盘,若要监控其它状态同理。

根据相关资料可以得到下列OID(n为不确定值

1.3.6.1.2.1.25.3.3.1.2.n:CPU使用率
1.3.6.1.2.1.25.2.3.1.3.n:存储器描述
1.3.6.1.2.1.25.2.3.1.5.n:存储器总容量(分配单元)
1.3.6.1.2.1.25.2.3.1.6.n:存储器已使用容量(分配单元)
1.3.6.1.2.1.25.2.3.1.4.n:存储器分配单元大小,即1单元多少字节

监控 CPU

  1. 使用 snmpwalk 工具,执行命令snmpwalk -v 2c -c Public 192.168.0.210 1.3.6.1.2.1.25.3.3.1.2

  2. 得到了cpu各个内核的使用率。本例中cpu有两个内核,所以出现了两行数据。从数据可以得到对应的n分别为9和10。

    即监控该机器cpu的oid为:1.3.6.1.2.1.25.3.3.1.2.9 和 1.3.6.1.2.1.25.3.3.1.2.10,接下来配置报警灯。

    假设当CPU使用率出超过80%时告警,也就是说当使用率在0~80时为正常值,根据正常值格式,应填入80 ,则配置图如下:

    点击测试按钮,返回结果见下图:

  3. 如果能正常获取到值,说明配置成功,点击确定保存即可。

监控硬盘

  1. 使用 snmpwalk 工具,执行命令snmpwalk -v 2c -c Public 192.168.0.210 1.3.6.1.2.1.25.2.3.1.3

  2. 得到n与盘符的对应关系,结果如下表所示。

    存储器
    1C盘
    2D盘
    3虚拟内存
    4物理内存
  3. 使用 snmpwalk 工具,执行命令snmpwalk -v 2c -c Public 192.168.0.210 1.3.6.1.2.1.25.2.3.1.5

  4. 假设希望C盘使用率超过80%时告警,通过之前的操作可以得知c盘对应的值为1,通过上图可以得知c盘的总容量为29155327个单元。
    超过80%告警,则使用的单元超过29155327*80%=23324261.6,即超过23324261的单元时,需要告警。当使用率在0~23324261为正常,则报警灯配置图如下:

    注意

    报警灯中获取值时使用的oid为1.3.6.1.2.1.25.2.3.1.6.n(存储器已使用容量)

    点击测试按钮,返回结果见下图:

  5. 如果能正常获取到值,说明配置成功,点击确定保存即可。