通过SNMP查看设备CPU利用率配置举例
常用SNMP走查系统运行情况方法

常用SNMP走查系统运行情况方法SNMP(Simple Network Management Protocol)是一种用于监测和管理网络设备的协议。
它允许系统管理员通过查询网络设备和收集相关信息来了解和解决问题。
在本文中,我们将介绍一些常用的SNMP走查系统运行情况的方法。
1.监测设备状态:使用SNMP可以监测设备的状态,包括设备的连接状态、CPU使用率、内存使用情况等。
可以通过查询设备的OID(对象标识符)获取这些信息。
例如,对于CPU使用率,可以查询OID1.3.6.1.4.1.2024.11.52.0来获取设备的CPU使用率。
2.监测网络流量:使用SNMP可以监测设备的网络流量,包括接收和发送的字节数、数据包的数量等。
可以通过查询设备的OID来获取这些信息。
例如,对于接收的字节数,可以查询OID1.3.6.1.2.1.2.2.1.10来获取设备接收的字节数。
3.监测设备连接数:使用SNMP可以监测设备的连接数,包括TCP连接数、UDP连接数等。
可以通过查询设备的OID来获取这些信息。
例如,对于TCP连接数,可以查询OID1.3.6.1.4.1.2024.10.1.3.2来获取设备的TCP连接数。
4.监测设备的存储状况:使用SNMP可以监测设备的存储状况,包括硬盘的使用情况、文件系统的使用情况等。
可以通过查询设备的OID来获取这些信息。
例如,对于硬盘的使用情况,可以查询OID1.3.6.1.2.1.25.2.3.1.6来获取设备硬盘的使用情况。
5.监测设备的日志信息:使用SNMP可以监测设备的日志信息,包括设备的错误日志、警告日志等。
可以通过查询设备的OID来获取这些信息。
例如,对于错误日志,可以查询OID1.3.6.1.4.1.9.9.91.2.1.1.6来获取设备的错误日志。
6.监测设备的性能指标:使用SNMP可以监测设备的性能指标,包括设备的响应时间、吞吐量等。
可以通过查询设备的OID来获取这些信息。
使用snmp+mrtg监控CPU、流量、磁盘空间、内存

使用snmp+mrtg监控CPU、流量、磁盘空间、内存1、安装snmpyum install net-snmp* -y2、修改/etc/snmpd.conf(可直接清空内容)①增加rocommunity public②找到disk修改(df –k查看)可以有多个,看情况disk / $sizedisk /boot $size1[disk /home $size2…]3、启动/etc/init.d/snmpd restart4、安装mrtgyum install mrtg* -y5将以下内容写到/etc/mrtg/mrtg.cfg,直接覆盖(黄色背景需更改) ############################################################ # Multi Router Traffic Grapher -- Example Configuration File ############################################################ ##Minimal mrtg.cfgHtmlDir: /var/www/mrtgImageDir: /var/www/mrtgLogDir: /var/lib/mrtgThreshDir: /var/lib/mrtg######################################################moniting LAN interface#####################################################Target[eth1_lan]: /10.0.0.99:public@localhost:Options[eth1_lan]: growrightDirectory[eth1_lan]: eth1MaxBytes[eth1_lan]: 100000000Kmg[eth1_lan]: K,M,GYLegend[eth1_lan]: Bytes per SecondShortLegend[eth1_lan]: B/sLegend1[eth1_lan]: 每秒流入量 (单位 Bytes)Legend2[eth1_lan]: 每秒流出量 (单位 Bytes)LegendI[eth1_lan]: 流入:LegendO[eth1_lan]: 流出:Title[eth1_lan]: eth1网络流量[流入+流出]PageTop[eth1_lan]: <h1>eth1网络流量[流入+流出]</h1>####################################################Moniting CPU Load[use+free]###################################################Target[cpuload]: .1.3.6.1.4.1.2021.11.50.0&.1.3.6.1.4.1.2021.11.53.0: public@localhost:Options[cpuload]: nopercent,growrightDirectory[cpuload]: cpuMaxBytes[cpuload]: 100Unscaled[cpuload]: dwymYLegend[cpuload]: CPU UtilizationShortLegend[cpuload]: %Legend1[cpuload]: CPU使用负载(%)Legend2[cpuload]: CPU闲置(%)LegendI[cpuload]: 使用:LegendO[cpuload]: 闲置:Title[cpuload]: CPU负载[使用+闲置]PageTop[cpuload]: <h1>CPU负载[使用+闲置]</h1>####################################################Moniting Used memory and Swap [Mem+Swap] free -k###################################################Target[memory]: .1.3.6.1.2.1.25.2.3.1.6.1&.1.3.6.1.2.1.25.2.3.1.6.3:p ublic@localhost:Options[memory]: gauge,growrightDirectory[memory]: memMaxBytes1[memory]: 327252MaxBytes2[memory]: 1023992#MaxBytesX[memory]: 1023992可多个,看情况Kmg[memory]: K,M,GKilo[memory]: 1024Unscaled[memory]: dwymYLegend[memory]: Mem BytesShortLegend[memory]: BLegend1[memory]: 已用Mem(Bytes)Legend2[memory]: 已用Swap(Bytes)LegendI[memory]: 已用Mem :LegendO[memory]: 已用Swap:Title[memory]: 内存使用量[Mem+Swap]PageTop[memory]: <h1>内存使用量[Mem+Swap]</h1>####################################################Moniting disk size [/+/boot] df -k###################################################Target[disk]: .1.3.6.1.4.1.2021.9.1.8.1&.1.3.6.1.4.1.2021.9.1.8.2:pub lic@localhost:Options[disk]: gauge,growrightDirectory[disk]: diskMaxBytes1[disk]: 11087104MaxBytes2[disk]: 495844Kmg[disk]: K,M,GKilo[disk]: 1024Unscaled[disk]: dwymYLegend[disk]: Disk BytesShortLegend[disk]: BLegend1[disk]: 根分区已用空间Legend2[disk]: boot分区已用空间LegendI[disk]: 根分区已用:LegendO[disk]: boot分区已用:Title[disk]: 硬盘空间[根分区+boot分区]PageTop[disk]: <h1>硬盘空间[根分区+boot分区]</h1>6、 cp /etc/cron.d/mrtg /etc/mrtg/7、vi /etc/mrtg/mrtg,改为以下内容:#!/bin/bashLANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file/var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok8、执行3次/etc/mrtg/mrtg/etc/mrtg/mrtg/etc/mrtg/mrtg9、执行Indexmaker --output /var/www/mrtg/index.html –title=”System state Monitor” /etc/mrtg/mrtg.cfg10、修改apache配置文件httpd.confAlias /mrtg "/var/www/mrtg"<Directory "/var/www/mrtg">Options indexesAllowOverride NoneOrder deny,allowDeny from allAllow from all</Directory>11、重启httpd12、访问http://localhost/mrtg/13、如出现乱码,则改变编码。
snmpwalk使用方法

snmpwalk使用方法SNMP(Simple Network Management Protocol)是一种用于管理和监控网络设备的协议。
snmpwalk是SNMP协议中的一个命令行工具,用于获取指定网络设备的信息。
本文将介绍snmpwalk的使用方法,帮助读者快速了解和使用这个强大的工具。
一、准备工作在使用snmpwalk之前,需要确保已经安装了SNMP软件包,并且目标设备已经开启了SNMP服务。
可以通过以下命令来检查SNMP是否已经安装:```snmpd -v```如果显示了SNMP软件包的版本信息,则表示已经安装成功。
二、命令格式snmpwalk的命令格式如下:```snmpwalk [选项] 目标主体```其中,选项包括:- -v 版本:指定SNMP版本,可以是1、2c或3,默认为2c。
- -c 社区名:指定访问目标设备的社区名,默认为public。
- -m MIB文件:指定MIB文件的路径,可以是单个文件或目录。
- -O 输出选项:指定输出格式,可以是n、N、s、x或X,默认为n。
- -t 超时:指定超时时间,单位为秒,默认为5秒。
- -r 重试:指定重试次数,默认为5次。
三、常用示例以下是一些常用的snmpwalk示例:1. 获取设备基本信息```snmpwalk -v2c -c public 192.168.0.1 sysDescr.0```这个命令用于获取设备的描述信息,其中192.168.0.1为目标设备的IP地址。
2. 获取设备接口信息```snmpwalk -v2c -c public 192.168.0.1 ifDescr```这个命令用于获取设备的接口描述信息,包括接口名称、类型等。
3. 获取设备CPU利用率```snmpwalk -v2c -c public 192.168.0.1 hrProcessorLoad```这个命令用于获取设备的CPU利用率信息。
4. 获取设备内存利用率```snmpwalk -v2c -c public 192.168.0.1 hrStorageUsed```这个命令用于获取设备的内存利用率信息。
snmpget用法

snmpget用法SNMP (Simple Network Management Protocol)是一种管理网络设备的协议。
SNMP的命令行工具snmpget可以用来获取一些网络设备上的特定信息。
在本文中,我将详细介绍snmpget的使用方法,并提供一些实际的示例。
``````其中,AGENT是SNMP代理的IP地址或主机名,OID是要获取的信息的标识符。
以下是snmpget常用的选项:-`-vVERSION`:SNMP协议的版本。
支持的版本包括1、2c、3,默认为2c。
-`-cCOMMUNITY`:团体名或共享密码。
SNMP代理使用它来验证请求。
- `-Oqv`:使用这些选项,snmpget将仅输出将要获取的值,而不显示其它信息。
以下是一些具体的示例,用于演示snmpget的使用方法:1.获取系统信息:``````在这个示例中,“1.3.6.1.2.1.1.1.0”是系统描述符的OID。
`-v 2c`表示使用SNMP版本2c,`-c public`表示使用共享密码“public”,`192.168.0.1`是要查询的代理的IP地址。
2.获取接口状态:``````在这个示例中,"1.3.6.1.2.1.2.2.1.7.1"是第一个接口的状态。
OID"1.3.6.1.2.1.2.2.1.7"是接口状态的基本OID。
3.获取路由表信息:``````在这个示例中,"1.3.6.1.2.1.4.21.1.7.192.168.0.2"是目标IP地址为192.168.0.2的路由的状态。
4.获取CPU利用率:``````在这个示例中,"1.3.6.1.4.1.2024.11.9.0"是CPU利用率的OID。
5.获取硬盘空间:``````在这个示例中,"1.3.6.1.4.1.2024.9.1.6.1"是第一个硬盘的可用空间的OID。
window通过snmp获取系统数据说明

Window通过SNMP获取系统数据的说明初步接触SNMP(Simple Network Management Protocol)简单网络管理协议之后,对windows系统的监测有了兴趣,通过一段时间的查找资料与实际测试,将系统的一些简单数据通过SNMP协议测试了出来,和大家一起分享。
要想使用SNMP协议监测系统,这里仅说windows操作系统,当然SNMP协议对网络设备基本适用,首先需要做的就是开通并配置好SNMP的服务,具体配置,大家可以上百度搜索或者关注我之后发表的博文(一直较忙,可能上传较晚,望见谅!)。
这里给大家推荐几款关于SNMP的调试工具:ManageEngineMibBrowser(适用与有现成的.mib库文件)Paessler SNMP Tester(测试OID)FreeSnmp(使用Walk探测OID)对于系统的主要数据,基本在”hostmib.mib”这个库中,至于“lmminb2.mib”库和“mib_ii.mib”库不做太多的说明,我就从这里面提取了部分数据,“mib_ii.mib”库基本上是数据流量的统计。
一、hostmib.mib库系统运行时间:返回数值以秒为单位OID:.1.3.6.1.2.1.25.1.1.0系统当前时间:OID:.1.3.6.1.2.1.25.1.2.0主机会话数OID:.1.3.6.1.2.1.25.1.5.0系统进程数OID:.1.3.6.1.2.1.25.1.6.0系统物理内存OID:.1.3.6.1.2.1.25.2.2.0 (4088864)标识:OID:.1.3.6.1.2.1.25.2.3.1.3.1 C:\ Label: Serial Number 665445ee OID:.1.3.6.1.2.1.25.2.3.1.3.2 D:\ Label: Serial Number d852e62c OID:.1.3.6.1.2.1.25.2.3.1.3.3 E:\ Label: Serial Number 57c15850 OID:.1.3.6.1.2.1.25.2.3.1.3.4 F:\ Label: Serial Number b17429e7OID:.1.3.6.1.2.1.25.2.3.1.3.5 Virtual MemoryOID:.1.3.6.1.2.1.25.2.3.1.3.6 Physical Memory每个箸/块的大小OID:.1.3.6.1.2.1.25.2.3.1.4.1 (4096)OID:.1.3.6.1.2.1.25.2.3.1.4.2 (4096)OID:.1.3.6.1.2.1.25.2.3.1.4.3 (4096)OID:.1.3.6.1.2.1.25.2.3.1.4.4 (4096)OID:.1.3.6.1.2.1.25.2.3.1.4.5 (65536)OID:.1.3.6.1.2.1.25.2.3.1.4.6 (65536)一个磁盘分为多少块/箸, 总大小OID:.1.3.6.1.2.1.25.2.3.1.5.1 (20972849)OID:.1.3.6.1.2.1.25.2.3.1.5.2 (47186913)OID:.1.3.6.1.2.1.25.2.3.1.5.3 (27001240)OID:.1.3.6.1.2.1.25.2.3.1.5.4 (26934972)OID:.1.3.6.1.2.1.25.2.3.1.5.5 (127748)OID:.1.3.6.1.2.1.25.2.3.1.5.6 (63888)磁盘空间大小=簇*簇数已经使用的块/箸OID:.1.3.6.1.2.1.25.2.3.1.6.1 (7389539)OID:.1.3.6.1.2.1.25.2.3.1.6.2 (2737261)OID:.1.3.6.1.2.1.25.2.3.1.6.3 (31264)OID:.1.3.6.1.2.1.25.2.3.1.6.4 (1678515)OID:.1.3.6.1.2.1.25.2.3.1.6.5 (59945)OID:.1.3.6.1.2.1.25.2.3.1.6.6 (45513)备注:在我这台主机的数据中可以看到的盘符是C: D: E: F:;同时可以得到虚拟内存信息,物理内存的信息C: 盘大小为4096×20972849=85904789504bytes or 80GBC: 盘以用空间4096×7389539=7566887936bytes or 7.04GBC:盘使用率为7.04/80*100% = 8%使用类似的方法可以计算出其它盘符的使用率和空间数据物理内存占用率:(65536*45513/1024)/4088864*100%=71.24%Cpu占用率(以上一分钟统计,不同的电脑的处理器不一样,需要使用walk来查看大概有几线程,其表头为.1.3.6.1.2.1.25.3.3.1.2,我这为4线程)OID:.1.3.6.1.2.1.25.3.3.1.2.2 (3)OID:.1.3.6.1.2.1.25.3.3.1.2.3(2)OID:.1.3.6.1.2.1.25.3.3.1.2.4(1)OID:.1.3.6.1.2.1.25.3.3.1.2.5(2)系统进程的表头为.1.3.6.1.2.1.25.4.2.1.2,这里就截取几个给大家看看其中的value为返回的进程名称进程所在的路径表头为.1.3.6.1.2.1.25.4.2.1.4进程的类型表头.1.3.6.1.2.1.25.4.2.1.6数值的含义:unknown ( 1 ) , operatingSystem ( 2 ) , deviceDriver ( 3 ) , application ( 4 ) 进程占CPU的大小表头.1.3.6.1.2.1.25.4.2.1.1进程占内存的大小表头. 1.3.6.1.2.1.25.5.1.1.2二、lmminb2.mib库网络服务数目OID:.1.3.6.1.4.1.77.1.2.2.0 (65)服务器上开放的文件数目OID:.1.3.6.1.4.1.77.1.2.4.0 (2803)通讯设备打开的总数OID:.1.3.6.1.4.1.77.1.2.5.0 (0)后台打印作业数量OID:.1.3.6.1.4.1.77.1.2.6.0 (0)服务器上已启动的会话总数OID:.1.3.6.1.4.1.77.1.2.7.0 (1)又有错误断开的会话总数OID:.1.3.6.1.4.1.77.1.2.8.0 (0)password violations encountered的总数OID:.1.3.6.1.4.1.77.1.2.9.0 (42)访问权限遭遇侵害的数量(access permission violations encountered)OID:.1.3.6.1.4.1.77.1.2.10.0 (0)系统报错的总数OID:.1.3.6.1.4.1.77.1.2.11.0 (0)服务器发送的字节数OID:.1.3.6.1.4.1.77.1.2.12.0 (87603026)服务器接收的字节数OID:.1.3.6.1.4.1.77.1.2.13.0 (61826588)服务器能支持的并发数OID:.1.3.6.1.4.1.77.1.2.16.0 (16777216)由于超时而断开的会话数OID:.1.3.6.1.4.1.77.1.2.21.0 (0)断开空闲会话等待时间OID:.1.3.6.1.4.1.77.1.2.22.0 (15)服务器用户账户总数OID:.1.3.6.1.4.1.77.1.2.24.0 (3)用户帐号表头.1.3.6.1.4.1.77.1.2.25.1.1Variable = nmgr-2.server.svUserTable.svUserEntry.svUserName.5.71.117.101.115.116Value = GuestVariable = nmgr-2.server.svUserTable.svUserEntry.svUserName.13.65.100.109.105.110.105.115.116.114.97.116.1 11.114Value = AdministratorVariable = nmgr-2.server.svUserTable.svUserEntry.svUserName.17.95.95.83.85.78.76.79.71.73.78.95.85.83.69.82.95.95Value = __SUNLOGIN_USER__打印队列数量OID:.1.3.6.1.4.1.77.1.2.28.0 (0)工作站启动的会话数OID:.1.3.6.1.4.1.77.1.3.1.0 (0)工作站经历的失败会话数量OID:.1.3.6.1.4.1.77.1.3.2.0 (0)工作站已启动的连接数OID:.1.3.6.1.4.1.77.1.3.3.0 (17)自动恢复断开会话连接的数量OID:.1.3.6.1.4.1.77.1.3.5.0 (0)主域的名称OID:.1.3.6.1.4.1.77.1.4.1.0 (WORKGROUP)三、mib_ii.mib库这个表基本涉及的数据就是流量的统计,如icmp、tcp、udp等,这里就不写出来了,数据点比较多,本人的英文也不是很好,大家补充补充啦!由于本人水平有限,欢迎大家指正!。
snmp如何获取主机CPU的频率和使用率

snmp如何获取主机CPU的频率和使用率根据MRTG绘图原理,一般只要提供给MRTG两组数字再透过mrtg.cfg的设定后,执行/usr/bin/mrtg /etc/mrtg/mrtg.cfg.xxx 即可绘出一个图形出来,因此,我们可以利用这样的原理来绘出一皆我们所想要的监控图形出来,本章节所提的主机CPU负载量统计即是利用这样的原理所产生而来的。
1. 首先,我们必须利用script来产生两个数值出来,一般针对CPU而言必须对日常CPU 负载作监控的方式,在网路上有很多方法,一般较常见的方式便是采用sar 这个指令来作,因为sar 这个指令会产生Average(平均值)例如:,因此,我们便直接抓欲监测的数值两个即可绘出我们所想要看到的图形出来了。
2. Script,一般而言sar 所产生的数据,我们仅仅要的只是其中的两个而已,因此必须透过Script来完成抓值的工作,至於要抓哪些值呢?以sar所产生的数据来说我们得先抓到Average: all 0.00 0.00 0.00 100.00这行,然后%user、%nice、%system、%idle这四个数值我们仅仅只需要两个就够了,以下所举的例子是以%user使用量平均值及%system系统使用量平均值:/usr/bin/sar -u 1 3 | grep Average | awk '{print $3}'/usr/bin/sar -u 1 3 | grep Average | awk '{print $5}'以上两个数据,我们还必须加上”开机时间”及”主机名称”,所以我们必须写一个Script来完成这四个数据的产生。
以下两个范例一个是采用一般的shell script所写出来的,另一个则是用perl与法所写的:#!/bin/bash# 1. 开始使用sar 来监测CPU 的user 及System 负载率cpuusr=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $3}'`cpusys=`/usr/bin/sar -u 1 3 | grep Average | awk '{print $5}'`UPtime=`/usr/bin/uptime | awk '{print $3 " " $4 " " $5}'`# 2. 列出四个数据(前两个为数字)echo $cpuusrecho $cpusysecho $UPtimeecho XXX伺服器#本shell出处[url]/linux_security/old/04mrtg.php[/url]#!/usr/bin/perl@line = `/usr/bin/sar | /usr/bin/tail -n 2 | /usr/bin/head -n 1 | /bin/sed 's/\ \ */ /g'`;@data = split(/ /, @line[0]);if (@data[2] eq "") {printf "0\n";} else {printf ("%3.0f\n", @data[2] + 0.5);}printf ("%3.0f\n", (@data[3])+(@data[2])+(@data[4]+0.5));$uptime = `/usr/bin/uptime | sed 's/\ \ */ /g'`;@uptime = split(/,/, $uptime);@uptime = split(/up/, @uptime[0]);$server = `/bin/uname -n`;printf "@uptime[1]\n";printf $server;#嘻嘻~我忘记这个script的出处了!!3. 有了这Scrip后,我们将它命名为mrtg.cpu,然后我们必须再写一个mrtg.cfg.cpu 其内容如下:WorkDir: /var/www/html/mrtgOptions[cpu]: gauge, nopercent, growrightLanguage: big5Refresh: 300Target[cpu]: `/etc/mrtg/mrtg.cpu`MaxBytes[cpu]: 100YLegend[cpu]: CPU loading (%)ShortLegend[cpu]: %LegendO[cpu]: CPU 使用者负载;LegendI[cpu]: CPU 纯系统负载;Title[cpu]: Mosquito伺服器CPU 负载率PageTop[cpu]: <H1>Mosquito伺服器CPU 负载率</H1>Legend1[cpu]: CPU 纯系统负载Legend2[cpu]: CPU 使用者负载4. 最后别忘了要将/usr/bin/mrtg /etc/mrtg/mrtg.cfg.cpu 执行三次后放置到crontab 内每隔五分钟定时执行(注),以产生监测数据出来。
snmp如何获取主机CPU的频率和使用率

snmp如何获取主机CPU的频率和使用率根据MRTG绘图原理,一般只要提供给MRTG两组数字再透过mrtg.cfg的设定后,执行/usr/bin/mrtg /etc/mrtg/mrtg.cfg.xxx 即可绘出一个图形出来,因此,我们可以利用这样的原理来绘出一皆我们所想要的监控图形出来,本章节所提的主机CPU负载量统计即是利用这样的原理所产生而来的。
1. 首先,我们必须利用script来产生两个数值出来,一般针对CPU而言必须对日常CPU 负载作监控的方式,在网路上有很多方法,一般较常见的方式便是采用sar 这个指令来作,因为sar 这个指令会产生Average(平均值)例如:,因此,我们便直接抓欲监测的数值两个即可绘出我们所想要看到的图形出来了。
2. Script,一般而言sar 所产生的数据,我们仅仅要的只是其中的两个而已,因此必须透过Script来完成抓值的工作,至於要抓哪些值呢?以sar所产生的数据来说我们得先抓到Average: all 0.00 0.00 0.00 100.00这行,然后%user、%nice、%system、%idle这四个数值我们仅仅只需要两个就够了,以下所举的例子是以%user使用量平均值及%system系统使用量平均值:/usr/bin/sar -u 1 3 | grep Average | awk '{print $3}'/usr/bin/sar -u 1 3 | grep Average | awk '{print $5}'以上两个数据,我们还必须加上”开机时间”及”主机名称”,所以我们必须写一个Script来完成这四个数据的产生。
以下两个范例一个是采用一般的shell script所写出来的,另一个则是用perl与法所写的:#!/bin/bashprintf ("%3.0f\n", @data[2] + 0.5);}printf ("%3.0f\n", (@data[3])+(@data[2])+(@data[4]+0.5));$uptime = `/usr/bin/uptime | sed 's/\ \ */ /g'`;@uptime = split(/,/, $uptime);@uptime = split(/up/, @uptime[0]);$server = `/bin/uname -n`;printf "@uptime[1]\n";printf $server;#嘻嘻~我忘记这个script的出处了!!3. 有了这Scrip后,我们将它命名为mrtg.cpu,然后我们必须再写一个mrtg.cfg.cpu 其内容如下:WorkDir: /var/www/html/mrtgOptions[cpu]: gauge, nopercent, growrightLanguage: big5Refresh: 300Target[cpu]: `/etc/mrtg/mrtg.cpu`MaxBytes[cpu]: 100YLegend[cpu]: CPU loading (%)ShortLegend[cpu]: %LegendO[cpu]: CPU 使用者负载;LegendI[cpu]: CPU 纯系统负载;Title[cpu]: Mosquito伺服器CPU 负载率PageTop[cpu]: <H1>Mosquito伺服器CPU 负载率</H1>Legend1[cpu]: CPU 纯系统负载Legend2[cpu]: CPU 使用者负载4. 最后别忘了要将/usr/bin/mrtg /etc/mrtg/mrtg.cfg.cpu 执行三次后放置到crontab 内每隔五分钟定时执行(注),以产生监测数据出来。
基于SNMP的网络管理软件的配置与使用

基于SNMP的网络管理软件的配置与使用网络管理软件是一种用于监控、配置和管理网络设备的工具。
SNMP (Simple Network Management Protocol,简单网络管理协议)是一种广泛应用于网络管理的协议。
本文将介绍基于SNMP的网络管理软件的配置和使用。
一、SNMP的基本原理SNMP是一种基于代理-管理者架构的协议,主要包括三个组件:管理者(Manager)、代理(Agent)和MIB(Management Information Base)。
管理者负责发送请求和接收响应,代理负责接收请求并返回响应,MIB则是存储了设备的管理信息。
SNMP采用了分布式的网络管理模型,管理者通过发送SNMP请求消息到代理来获取设备信息。
代理可以响应不同类型的请求,如获取、设置、触发等。
管理者和代理之间通过SNMP消息进行通信,消息的格式使用ASN.1(Abstract Syntax Notation One)来描述。
二、基于SNMP的网络管理软件1.SNMP协议工具SNMP协议工具是一种轻量级的网络管理软件,常用的工具有SNMPGET、SNMPSET和SNMPWALK等。
这些工具通过命令行的方式使用,可以通过SNMP协议来获取和设置设备的管理信息。
例如,使用SNMPGET可以获取设备的系统信息,使用SNMPSET可以设置设备的配置参数。
2.SNMP管理软件SNMP管理软件是一种图形化的网络管理工具,提供了可视化的界面和丰富的功能。
常见的SNMP管理软件有Zabbix、Cacti和SNMPc等。
这些软件可以通过SNMP协议来监控网络设备的状态、性能和配置信息,同时也可以进行告警、日志和报表等功能。
3.SNMP代理软件SNMP代理软件是一种用于模拟设备的网络管理工具,可以模拟出SNMP代理的功能。
常见的SNMP代理软件有Net-SNMP、SNMP Agent Simulator和SNMP Simulator等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通过SNMP查看设备CPU利用率配置举例关键词:SNMP、NMS、Agent、MIB、CPU利用率摘要:NET-SNMP是SNMP协议的一套开源实现工具,可作为NMS或Agent。
本文主要介绍NET-SNMP作为NMS通过SNMP协议查看H3C设备(作为Agent)CPU利用率的配置应用。
缩略语:SNMP、NMS、MIB缩略语英文全名中文解释SNMP Simple Network Management Protocol 简单网络管理协议NMS Network Management System 网络管理系统Information Base 管理信息库MIB Management目录1 简介 (3)2 Net-SNMP使用简介 (3)3 相关MIB节点 (4)4 使用SNMP v1、v2c查看设备CPU利用率配置举例 (5)4.1 组网需求 (5)4.2 配置思路 (6)4.3 配置步骤 (6)4.3.1 配置Agent (6)4.3.2 配置NMS (7)5 使用SNMP v3查看设备CPU利用率配置举例 (8)5.1 组网需求 (8)5.2 配置思路 (9)5.3 配置步骤 (9)5.3.1 配置Agent (9)5.3.2 配置NMS (10)1 简介SNMP是网络中管理设备(NMS)和被管理设备(Agent)之间的通信规则。
NMS通过Get和Set等操作获取、设置Agent上变量的值,从而实现对Agent的远程管理、监控。
Agent的CPU 利用率就是NMS经常监控的重要变量。
CPU利用率反映了一段时间内设备CPU资源的使用情况。
如果CPU利用率一直居高不下,说明设备负载较重,需要对设备当前状况进行分析,找到引起设备负载过重的原因,从而预防、诊断网络故障。
目前市场上有多种NMS产品,其中Net-SNMP作为一种开源实现的NMS在业界被广泛使用。
它提供了一套完整的应用程序,实现了SNMPv1/v2c/v3功能。
本文将描述如何使用Net-SNMP工具通过访问MIB对象获取设备CPU利用率。
2 Net-SNMP使用简介本文主要用到Net-SNMP的snmpget功能和snmpwalk功能。
z snmpget功能:即执行一次SNMP Get操作,用来获取Agent上指定MIB对象的值。
命令行格式为snmpget [OPTIONS] AGENT OID [OID]。
z snmpwalk功能:即执行一次SNMP Walk操作,用来获取Agent上多个MIB对象的值。
命令行格式为snmpwalk [OPTIONS] AGENT [OID]。
以上两条命令行中各参数的含义如下:参数说明snmpget 命令关键字,表示执行Get操作snmpwalk 命令关键字,表示执行Walk操作OPTIONS 命令行选项(常用选项请参见表1)AGENT Agent的IP地址OID Agent上MIB对象的OID(如果是执行Get操作,OID必须是叶子节点或者是表节点实体的OID;如果是执行Walk操作,可以是所有类型对象的OID)表1Net-SNMP命令行工具常用选项选项说明举例-h 显示命令帮助信息-h-v 设置使用的SNMP版本,取值为1、2c或3 -v 1-c 设置团体名-c public-a 设置认证协议类型,取值为MD5或SHA -a MD5-A 设置认证密码-A 12345678选项说明举例-e 设置安全引擎ID -e 800063A203000056000000 -u 设置用户名-u v3user-x 设置加密协议类型,取值为DES -x DES-X 设置加密密码-X 12345678-m 加载MIB列表,取值为MIB文件名(取值为ALL时表示加载所有文件)-m ALL或-m d:/net-snmp/xxx.mib-M 指定MIB文件所在目录列表-M d:/nets-snmp本文使用的Net-SNMP工具来自于/,关于这个工具的详细介绍,请访问该网站。
3 相关MIB节点本文通过访问H3C私有MIB来查看CPU利用率。
如果想要通过对象的名称访问该节点,在访问前需要在NMS上先下载并编译hh3c-entity-ext.mib或h3c-entity-ext.mib,MIB文件可以通过H3C公司网站进行下载。
如果不编译该MIB文件,则只能通过对象OID进行访问。
hh3c-entity-ext.mib是H3C new风格的MIB文件,h3c-entity-ext.mib是H3C compatible风格的MIB文件。
使用哪个MIB文件由设备当前的MIB风格决定。
在Agent上使用display mib-snmp 命令查看设备的MIB风格,如果“Current MIB style”显示为:z new,则需要使用hh3c-entity-ext.mib文件中的hh3cEntityExtCpuUsage节点,该节点的详细描述请参见表2。
z compatible,则需要使用h3c-entity-ext.mib文件中的h3cEntityExtCpuUsage节点,该节点的详细描述请参见表3。
表2hh3cEntityExtCpuUsage对象描述表对象名称hh3cEntityExtCpuUsage对象OID 1.3.6.1.4.1.25506.2.6.1.1.1.1.6对象描述 CPU实体在最后1分钟内的利用率对象类型列对象备注z该对象下面包含多个实体(即叶子节点),实体的OID为1.3.6.1.4.1.25506.2.6.1.1.1.1.6.n。
实体不同,n(以下称为实体编号)的取值不同z CPU实体的编号可以通过ENTITY-MIB文件中的entPhysicalDescr(OID为1.3.6.1.2.1.47.1.1.1.1.2)、entPhysicalClass(OID为 1.3.6.1.2.1.47.1.1.1.1.5)和entPhysicalName(OID为1.3.6.1.2.1.47.1.1.1.1.7)对象来确定z如果某实体对象取值永远为零,那么该实体不是CPU实体表3h3cEntityExtCpuUsage对象描述表对象名称h3cEntityExtCpuUsage对象OID 1.3.6.1.4.1.2011.10.2.6.1.1.1.1.6对象描述 CPU实体在最后1分钟内的利用率对象类型列对象备注z该对象下面包含多个实体(即叶子节点),实体的OID为1.3.6.1.4.1.2011.10.2.6.1.1.1.1.6.n。
实体不同,n(以下称为实体编号)的取值不同z CPU实体的编号可以通过ENTITY-MIB文件中的entPhysicalDescr(OID为1.3.6.1.2.1.47.1.1.1.1.2)、entPhysicalClass(OID为 1.3.6.1.2.1.47.1.1.1.1.5)和entPhysicalName(OID为1.3.6.1.2.1.47.1.1.1.1.7)对象来确定z如果某实体对象取值永远为零,那么该实体不是CPU实体4 使用SNMP v1、v2c查看设备CPU利用率配置举例使用SNMP v1或者v2c版本配置基本相同,本文以SNMP v1为例。
如果网络上运行的SNMP是v2c版本的,则只需将本举例中snmpget工具命令中的-v参数的值改为2c即可。
4.1 组网需求z网管工作站(NMS)与设备(Agent)通过以太网相连。
z NMS上运行Net-SNMP软件,要求在NMS上通过SNMP v1、团体名public能够查看Agent最后一分钟内的CPU利用率。
图1使用SNMP v1、v2c查看设备CPU利用率组网图4.2 配置思路z在Agent上配置接口参数:指定接口的IP地址,保证Agent和NMS路由的可达。
z Agent上需要完成SNMP功能基本配置(包括SNMP的版本、SNMP团体名),使得NMS 和Agent之间可以互访。
z查看Agent支持的MIB风格,确定需要使用的MIB对象。
z将Net-SNMP软件中的snmpget.exe和snmpwalk.exe文件放到NMS的C:\usr\bin路径下,通过MIB对象查询Agent最后1分钟内CPU利用率。
4.3 配置步骤4.3.1 配置Agent# 配置Agent的IP地址为192.168.1.56/24,并确保Agent与NMS之间路由可达。
z如果Ethernet1/1是三层接口,请进行以下配置:<Sysname> system-view[Sysname] interface ethernet 1/1[Sysname-Ethernet1/1] ip address 192.168.1.56 24[Sysname-Ethernet1/1] quitz如果Ethernet1/1是二层接口,请进行以下配置:<Sysname> system-view[Sysname] vlan 2[Sysname-vlan2] port Ethernet 1/1[Sysname-vlan2] quit[Sysname] interface vlan-interface 2[Sysname-Vlan-interface2] ip address 192.168.1.56 24[Sysname-Vlan-interface2] quit# 配置SNMP版本。
为了防止Agent和NMS因为版本问题导致不能建立SNMP连接,建议将版本参数配置为all,表示支持v1、v2c、v3三个版本。
[Sysname] snmp-agent sys-info version all# 配置可读属性团体名。
[Sysname] snmp-agent community read public# 查看设备当前支持的MIB文件风格,以便决定使用哪个MIB对象。
[Sysname] display mib-styleCurrent MIB style: newNext reboot MIB style: new以上显示信息表明,设备当前支持的MIB文件风格为new,所以使用hh3cEntityExtCpuUsage对象,OID为1.3.6.1.4.1.25506.2.6.1.1.1.1.6。
(如果Current MIB style显示为compatible,则下面的配置步骤中需要将1.3.6.1.4.1.25506.2.6.1.1.1.1.6替换为1.3.6.1.4.1.2011.10.2.6.1.1.1.1.6)4.3.2 配置NMS(1) 查看CPU的实体编号使用ENTITY-MIB中的entPhysicalDescr、entPhysicalClass和entPhysicalName对象确定CPU实体的编号。