首页 > 代码库 > Mrtg网络监控 实现步骤

Mrtg网络监控 实现步骤

<span style="font-size:14px;">				->收取oid的值来画图<-	


一:网络管理概念
	解释:监督、组织和监控网络通信服务和信息处理所必需的各种活动总称
		  利用多种应用程序、工具和设备来监控和维护网络运行的一种技术


二:网络管理组成(主要角色:监控端 和 被监控端->通过snmp协议来管理)
	大概过程是:服务端->链接 "被监控端(安装了snmp协议)"访问161号端口->输入真确的口令(被监控端设置也间共同体名、团体名、令牌)->
				来访问snmp收集好的数据MIB数据库(管理信息库)->能后拿到数据返回用mrtg形成流量图监控
	    1:被管设备
		2:网络管理代理
		3:网络工作站
		4:管理信息库
		5:网络管理协议
		
三:网络管理协议
		定义了管理工作站与被管理间的通信方法
			snmp协议(安装了snmp就成了被监控端)
				snmpv1、snmpv2和 snmpv3(用秘钥登入监控,配置麻烦)    ->越简单越是要,snmpv1最火的版本(snmpv1和snmpv2是一起发展起来的)
				
				轮询(Polling)-->每隔5分钟去访问snmp的MIB数据库所收集的数据来绘图		
				 和
				中断(Interrupe)-->被监控者有事件警告主动打报告叫中断:比如我刚收集完数据 突然被监控服务器磁盘空间急剧增长过了80%马上要报警,发现严重的事情主动打报告
							   -->snmp会主动开162端口去打报告
				基于UDP协议
					-所有报文(除Trap)都使用161号端口
					-Trap报文使用162号端口
				共同体(community):-也就是口令,一般只设置只读
					-只读(只读口令,输对就可以监控,只是监控该服务器不能控制这个服务器,关人家apache啊什么的)
					-读写 
					
		常用的网络管理软件:
			网管软件            公司                       说明
			sitescope           HP惠普         一个兼容、跨平台的网络管理系统,适合大型企业网络管理(移动啊、电信就在用)
			NetView             IBM            既可以作为一个跨平台的系统,也可以作为一个开发平台,适合大型、电信级规模企业的网络管理
			mrgt                开源软件       是一个监控网络连入流量负载的工具软件,通过snmp协议得到设备的流量信息
			cacti               开源软件       cacti是一套基于php,MySQL(写的程序),snmp及rrdtool开发的网络流量监控图形分析工具
			Solarwinds          Solarwinds     一系列网络管理软件的组合,包括网络自动发现,故障发现,性能监控等,适合中小企业的网管软件
			WhatsUp             IPswitch       适合中小企业的网络管理方案。提供对网络服务状态、snmp数据以及windows和syslog事件的监控和警告


		可网管的企业网络(可网管的网络设备)
			路由器
			交换机
			windows服务器
			linux服务器
			打印机
			.......
			*这些我们都可以监控,但是必须得安装snmp
		
		在Windows上安装snmp服务:
			单机(开始)->控制面板
			添加/删除 Windows组件
			管理和监视工具
			详细信息
			简单网络管理协议
			
		
		
四:SNMP常用操作


	配置snmp服务:
		1:安装snmp软件包
			yum -y install net-snmp*
		2:编辑snmp配置文件
			vim/etc/snmp/snmpd.conf    打开该文件后大部分是注释
				1:snmpd.conf  snmpd.conf.bak  改个名字
				2:vi snmpd.conf           能后新建个文件也叫snmp.conf,简单配置杰克,加上
					rocommunity public    (只读的共同体名叫public,意思就是:允许所有的计算机来监控我只要他输入了public这个共同体名,就可可以来监控我MIB数据库来供他绘图)
					disk / 19679908					--不加这个获取不到根分区的值(linux的df命令可以查看到填写的2个值)
					disk /boot 101086               --df查看的2个最大值填写上来
				3:server snmpd restart   重启服务即可
				4:chkconfig snmp on      设置出开机就启动(查看chkconfig --list snmpd)
		
			启动和停止snmp:
				启动:server snmp stat
				停止:server snmp stop
				重启:server snmp restart
		
		3:用snmpconf来生成简单的配置文件snmp.conf	




	常用系统 oid
		linux系统负载
			1分钟系统负载:.1.3.6.1.4.1.2021.10.1.5.1
			5分钟系统负载:.1.3.6.1.4.1.2021.10.1.5.3
		linux cpu使用和空闲:
			cpu使用率:.1.3.6.1..4.1.2021.11.50.0
			cpu空闲率:.1.3.6.1.4.1.2021.11.53.0
		监视内存使用量(free -k  查看内存使用率)
			内存使用量:.1.3.6.1.2.1.25.2.3.1.6.3  --这个查出来的值和free -k查出来对应的值 一样
			swap使用率:.1.3.6.1.2.1.25.2.3.1.6.3
		监视系统进程数
			linux系统当前进程数:.1.3.6.1.2.1.25.6.0
		监视硬盘(df -k)
			根分区oid:.1.3.6.1.4.1.2021.9.1.8.1
			boot分区oid:.1.3.6.1.4.1.2021.9.1.8.2
		tcp链接数(netstat -tun查看几个人连接了这服务器)
			tcp链接数:.1.3.6.1.2.1.6.9.0
			、、、、、、、、、、、、、、、
			
	snmp常用指令:
		*查看系统所有的oid以及oid名称:nmpwalk -vl -cpublic localhost -m all
			查看该oid的描述:snmptranslate -Td .1.3.6.1.4.1.2021.9.1.8.1
			查看单个oid:snmptranslate -T1 .1.3.6.1.4.1.2021.9.1.8.1
			查看整个oid全称: snmptranslate -Of .1.3.6.1.4.1.2021.9.1.8.1
		*查看该oid的oid名称和值:snmpget -vl -cpublic localhost .1.3.6.4.1.2021.9.1.8.1
		snmpget查到的是nmpwalk -vl -cpublic localhost -m all的一部分
	->注意:	
		oid就是代表一个省份->都有自己对应的值,能后通过snmpget可以查看对应的值
		上面的oid是这样查看使用的能后获得值:snmpget -vl -cpublic localhost .1.3.6.4.1.2021.9.1.8.1










五:mrtg系统监控
	查看下系统是否安装了mrtg软件:rpm -qa |grep mrtg*
	安装mrtg:
		yum -y install mrtg*
		查看是否安装成功:rpm -qa |grep mrtg*
	
	mrtg流量图的实现过程:
		1:snmp调试
		2:修改mrtg配置文件
		3:根据配置文件生成图片和部分网页文件
		4:生成首页index.html
		5:cron轮循生成监控图片文件
		
		外面截图配置完后,配置文件配置完后再生成图片
					crontab -l
					cd /etc/cron.d     --这个下面的文件linux会定时自动执行脚本计划
					vi mrgt     -->定时计划内容
					连续执行3次。以为前3次是会报错的
					能后在mrgt下就已经生成了图片 cd /var/www/mrgt
					生成图片后在执行命令生成首页,能后Apache对其配置进行访问改首页即可
					
能后把你的mrgt.cnf的配置文件加上也就是利用收取oid的值来画图
	
		
下一节分享:shell脚本邮件报警
	
</span>