Cacti使用OID读取cpu、内存、磁盘信息

SNMP指的是简单网路管理协议(Simple Network Management Protocol),它主要包含三个部分:被管理的设备、代理、网络管理站。一个被管理设备是具有SNMP代理的一个网络节点,可以是路由器、交换机、主机、打印机等设备,通常代理是设备内部的一个进程,网络管理站通过此进程和设备通信。

MIB指的是管理信息库(Management Information Base),就是代理进程所包含的的能被管理站查询和设置的信息的集合,具体内容在RFC1213中定义。

OID是一个对象标示符,通过OID可以唯一的标示一个MIB层次结构中的被管理对象,在SNMP中我们使用OID来获取所需要的信息,例如我们使用如下名利可以获取计算机名称:

snmpwalk -v 2c -c public 127.0.0.1 .1.3.6.1.2.1.1.5

如果想要通过snmp获取计算机的cpu、内存、硬盘等信息,就要首先在机器上安装snmp服务,然后通过snmp客户端获取需要的信息。以下是获取cpu、内存、硬盘信息时所需要的OID:

一、CPU

负载
1 minute Load: .1.3.6.1.4.1.2021.10.1.3.1
5 minute Load: .1.3.6.1.4.1.2021.10.1.3.2
15 minute Load: .1.3.6.1.4.1.2021.10.1.3.3

CPU使用
percentage of user CPU time: .1.3.6.1.4.1.2021.11.9.0
raw user cpu time: .1.3.6.1.4.1.2021.11.50.0
percentages of system CPU time: .1.3.6.1.4.1.2021.11.10.0
raw system cpu time: .1.3.6.1.4.1.2021.11.52.0
percentages of idle CPU time: .1.3.6.1.4.1.2021.11.11.0
raw idle cpu time: .1.3.6.1.4.1.2021.11.53.0
raw nice cpu time: .1.3.6.1.4.1.2021.11.51.0

二、内存信息

Total Swap Size: .1.3.6.1.4.1.2021.4.3.0
Available Swap Space: .1.3.6.1.4.1.2021.4.4.0
Total RAM in machine: .1.3.6.1.4.1.2021.4.5.0
Total RAM used: .1.3.6.1.4.1.2021.4.6.0
Total RAM Free: .1.3.6.1.4.1.2021.4.11.0
Total RAM Shared: .1.3.6.1.4.1.2021.4.13.0
Total RAM Buffered: .1.3.6.1.4.1.2021.4.14.0
Total Cached Memory: .1.3.6.1.4.1.2021.4.15.0

三、硬盘信息
要获取硬盘信息,需要在snmpd.conf中加入以下信息(假设硬盘只有一个根分区(/)):Disk / 100000

Path where the disk is mounted: .1.3.6.1.4.1.2021.9.1.2.1
Path of the device for the partition: .1.3.6.1.4.1.2021.9.1.3.1
Total size of the disk/partion (kBytes): .1.3.6.1.4.1.2021.9.1.6.1
Available space on the disk: .1.3.6.1.4.1.2021.9.1.7.1
Used space on the disk: .1.3.6.1.4.1.2021.9.1.8.1
Percentage of space used on disk: .1.3.6.1.4.1.2021.9.1.9.1
Percentage of inodes used on disk: .1.3.6.1.4.1.2021.9.1.10.1
System Uptime: .1.3.6.1.2.1.1.3.0

原文地址:http://blog.51cto.com/muyusen/2328582

时间: 2025-01-03 00:05:49

Cacti使用OID读取cpu、内存、磁盘信息的相关文章

java获取cpu,内存,磁盘等信息

原文:java获取cpu,内存,磁盘等信息 源代码下载地址:http://www.zuidaima.com/share/1550463331306496.htm package com.zuidaima.util; import java.io.File; import java.io.InputStreamReader; import java.io.LineNumberReader; import java.util.ArrayList; import java.util.List; imp

linux系统CPU,内存,磁盘,网络流量监控脚本

前序 1,#cat /proc/stat/ 信息包含了所有CPU活动的信息,该文件中的所有值都是从系统启动开始累积到当前时刻 2,#vmstat –s 或者#vmstat 虚拟内存统计 3, #cat /proc/loadavg 从系统启动开始到当前累积时刻 4, #uptime 系统运行多长时间 5, #mpstat CPU的一些统计信息 6, # 一,linux系统CPU,内存,磁盘,网络流量监控脚本 [作者:佚名来源:不详时间:2010-7-6 [我来说两句大中小] cme.sh网络流量监

Linux c读取系统内存使用信息

系统的内存使用信息能够在虚拟文件系统/proc/meminfo中找到,如图 所以只要打开/proc/meminfo文件,然后从中读取信息就好了 #include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <fcntl.h>#define MEM_PART "/proc/meminfo" //用于存储内存信息的结构体str

Shell采集系统cpu 内存 磁盘 网络信息

cpu信息采集 cpu使用率 采集算法 通过/proc/stat文件采集并计算CPU总使用率或者单个核使用率.以cpu0为例,算法如下: 1. cat /proc/stat | grep ‘cpu0’得到cpu0的信息 2. cpuTotal1=user+nice+system+idle+iowait+irq+softirq 3. cpuUsed1=user+nice+system+irq+softirq 4. sleep 30秒 5. 再次cat /proc/stat | grep 'cpu0

CPU,内存,磁盘,指令以及它们之间的关系

众所周知计算机的组成是由控制器.运算器.存储器.输入.输出设备五部分构成,而其中CPU就是由控制器.运算器.寄存器和时钟四部分构成,磁盘和内存就属于存储设备. CPU指令主要有以下四个: 1.加载:把一个字节或一个字从内存中赋值到寄存器,覆盖原来寄存器的内容 2.存储:把一个字节或一个字从寄存器复制到内存中的某个位置,覆盖原来内存上这个位置的内容 3.操作:将两个寄存器的内容赋值到ALU,ALU对这两个字进行算术操作,将结果存储在某个寄存器中,以覆盖寄存器中原来的值 4.跳转:从指令本身抽取一个

linux系统CPU内存磁盘监控发送邮件脚本之二

#!/bin/bash export PATH export LANG=zh_CN.UTF-8 # # #top之后输入数字1,可以查看每颗CPU的情况. # # #先配置好mailx邮箱账号密码: #cat>/etc/mail.rc<<"EOF" #set sendcharsets=iso-8859-1,utf-8 #set [email protected] #set smtp=smtp.163.com #set [email protected] #set sm

监控cpu内存磁盘,并实现邮件报警

1 #!/bin/bash 2 #获取当前时间 3 now=`date -u -d"+8 hour" +'%Y-%m-%d %H:%M:%S'` 4 #cpu使用阈值 5 cpu_warn='5' 6 #mem空闲阈值 7 mem_warn='1' 8 #disk使用阈值 9 disk_warn='5' 10 #获取主机IP,下条命令也可以获取 11 hostip=$(ip addr | awk '/^[0-9]+: / {}; /inet.*global/ {print gensub

linux下查看CPU内存等信息

Linux查看物理CPU个数.核数.逻辑CPU个数 # 总核数 = 物理CPU个数 X 每颗物理CPU的核数  # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 [[email protected] ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l 2 # 查看每个物理CPU中core的个数(即核数) [[email protected] ~]# cat /pr

性能优化之基础资源cpu&amp;内存(JVM)

本章主要介绍计算机的一些基础资源以及操作系统处理后的一些基础资源. 主要包括 cpu 内存 磁盘 网络 线程 本章会介绍这些资源的一些原理,介绍如何查看资源的数量,使用情况,对性能和整体计算机执行的一些影响.本章很多内容都基于linux,不是特殊说明,就是针对linux的情况.可能在其它操作系统不一定适用. 另外还会对jvm之上的一些内容做特殊说明,因为大家很大的一些积累都在jvm之上,内部的系统基本也建立在jvm上. jvm 指令 jvm 内存使用 cpu cpu是计算机里最重要的资源,没有之