当前位置:Linux教程 - Linux资讯 - 在fedora中使用MRTG进行系统监控(2004-02-13更新)

在fedora中使用MRTG进行系统监控(2004-02-13更新)

  在fedora中使用MRTG进行系统监控(2004-02-13更新) VictorYan指北系列之MRTG入门篇 主要内容: *MRTG是什么 *MRTG特点 *MRTG安装与配置 *如何使用MRTG进行简易监控 *MRTG监控网络配置文件实例 *MRTG监控网络配置文件实例详解 *如何配置SNMP来配合MRTG进行监控CPU,内存等系统状况 *如何使用SNMP的translate工具 参考文章: 网络流量监控器mrtg全攻略 http://www.fengnet.com/showart.ASP?...5&cat_id=10 参考图例: 见附件 一. MRTG是什么 MRTG = Multi Router Traffic Grapher 是一个监控网络链路流量负载的工具软件, 它通过snmp协议从设备得到设备的流量信息,并将流量负载以包含PNG格式的图形的 Html文档方式显示给用户,以非常直观的形式显示流量负载. mrtg 的输出结果示例: http://www.stat.ee.ethz.ch/mrtg/ 另外,MRTG也可以监控Linux主机的运行状态,用于系统管理.例如:监控服务器的CPU使用效率,SQUID代理服务器的流量统计等 官方网站: http://people.ee.ethz.ch/~oetiker/weBTools/mrtg http://www.mrtg.org 二. MRTG特点 *可移植性 目前可以运行在大多数Unix系统和Windows NT之上。 *源码开放 Mrtg是用perl编写的,源代码完全开放。 *高可移植性的SNMP支持 Mrtg采用了Simon Leinen编写的具有高可移植性的SNMP实现模块,从而不依赖于操作系统的SNMP模块支持。 *支持SNMPv2c MRTG可以读取SNMPv2c的64位的记数器,从而大大减少了记数器回转次数。 *可靠的接口标识 被监控的设备的接口可以以IP地址、设备描述、SNMP对接口的编号及Mac地址来标识。 *常量大小的日志文件 *MRTG的日志不会变大,因为这里使用了独特的数据合并算法。 *自动配置功能 *MRTG自身有配置工具套件,使得配置过程非常简单。 *性能 *时间敏感的部分使用C代码编写,因此具有很好的性能。 *PNG格式图形 *图形采用GD库直接产生PNG格式。 *输出可定制性 *MRTG产生的web页面是完全可以定制的。 *兼容性 mrtg软件可以运行在大部分的操作系统上: *可监控的网络设备 只要支持SNMP协议的设备就都可以使用MRTG来监控 三. MRTG安装与配置 *MRTG安装 基本环境: Fedora 1 MRTG软件: Fedora自带mrtg-2.10.5-1 #rpm -ivh mrtg-2.10.5-1* *配置SNMP服务 //检查软件 $ rpm -qa grep net-snmp net-snmp-5.1-2.1 net-snmp-utils-5.1-2.1 net-snmp-devel-5.1-2.1 net-snmp-perl-5.1-2.1 //修改配置文件/etc/snmp/snmpd.conf,允许mrtg读取网络接口的流量数据。 将 view systemview included .1.3.6.1.2.1.1
[1] [2] [3] [4] 下一页 

view systemview included .1.3.6.1.2.1.25.1.1 修改为: view systemview included .1.3.6.1.2.1.1 view systemview included .1.3.6.1.2.1.2 view systemview included .1.3.6.1.2.1.25.1.1 注: .1.3.6.1.2.1.1 = SNMPv2-MIB::system .1.3.6.1.2.1.2 = IF-MIB::interfaces //打开SNMPD服务 # chkconfig snmpd on # service snmpd start 四. 如何使用MRTG进行简易监控 //生成mrtg配置文件/etc/mrtg/mrtg.cfg #cfgmaker --global "WorkDir:/var/www/mrtg" --output /etc/mrtg/mrtg.cfg public@localhost //初始运行MRTG,在工作目录下创建初始的流量图和web页面 #mrtg /etc/mrtg/mrtg.cfg #mrtg /etc/mrtg/mrtg.cfg #mrtg /etc/mrtg/mrtg.cfg 注:初次运行需要连续运行三次,每次会产生一些警告信息,这是以后再运行就正常了 //每隔5分钟自动运行mrtg来生成统计信息 编辑/etc/cron.d/mrtg文件: 0-59/5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg --logging /var/log/mrtg.log //产生网页索引文件 #indexmaker /etc/mrtg/mrtg.cfg --output /var/www/mrtg/index.html //编辑/etc/httpd/conf.d/mrtg.conf,允许主机通过网络监控网络流量信息;默认只允许本台主机,且主机名=localhost查看 Alias /mrtg /var/www/mrtg <Location /mrtg> Order deny,allow # Deny from all Allow from localhost # Allow from .example.com </Location> 注:修改后重启httpd服务#service httpd restart //通过浏览器监控网络流量信息 http://localhost/mrtg //配置文件/etc/mrtg/mrtg.cfg举例(注:取消了注释部分) EnableIPv6: no WorkDir:/var/www/mrtg Target[localhost_2]: 2ublic@localhost: SetEnv[localhost_2]: MRTG_INT_IP="" MRTG_INT_DESCR="eth0" MaxBytes[localhost_2]: 12500000 Title[localhost_2]: Traffic Analysis for 2 -- abc.com.cn PageTop[localhost_2]: <H1>Traffic Analysis for 2 -- abc.com.cn</H1> <TABLE> <TR><TD>System:</TD> <TD>abc.com.cn in Unknown (edit /etc/snmp/snmpd.conf)</TD></TR> <TR><TD>Maintainer:</TD> <TD>Root <root@localhost> (configure /etc/snmp/snmp.local.conf)</TD></TR> <TR><TD>Description:</TD><TD>eth0 </TD></TR> <TR><TD>ifType:</TD> <TD>ethernetCsmacd (6)</TD></TR> <TR><TD>ifName:</TD> <TD></TD></TR> <TR><TD>Max Speed:</TD> <TD>12.5 MBytes/s</TD></TR> </TABLE> 五. MRTG监控网络配置文件实例 //为了使网络监控更加易懂实用,手工修改配置文件/etc/mrtg/mrtg.cfg WorkDir: /var/www/mrtg Language: gb2312 #监控网络流量[LAN接口eth0] Target[eth0]: 2ublic@localhost: Options[_]: growright Directory[eth0]: eth0 MaxBytes[eth0]: 12500000 Kmg[eth0]: ,k,M,G,T,P YLegend[eth0]: Bytes per Second ShortLegend[eth0]: B/s
上一页 [1] [2] [3] [4] 下一页 

Legend1[eth0]: 每秒流入量 (单位 Bytes) Legend2[eth0]: 每秒流出量 (单位 Bytes) LegendI[eth0]: 流入: LegendO[eth0]: 流出: Title[eth0]: 网络流量[LAN接口eth0] PageTop[eth0]: <H1>网络流量[LAN接口eth0]</H1> <TABLE> <TR><TD>系统 :</TD> <TD>host.abc.com</TD></TR> <TR><TD>描述 :</TD> <TD>内部网络接口eth0的网络流量(Bytes/s)</TD></TR> <TR><TD>位置 :</TD> <TD>Shanghai</TD></TR> <TR><TD>最大值:</TD> <TD>12.5 MBytes/s</TD></TR> <TR><TD>管理员:</TD> <TD>[email protected]</TD></TR> <TR><TD>说明 :</TD> <TD> </TD></TR> </TABLE> 六. MRTG监控网络配置文件实例详解 WorkDir设置工作目录,存放mrtg采集的数据和生成的统计文件 Language设置WEB页面显示的语言=中文gb2312 growright指示流量图随时间的变化向右增长 Target指示监控的设备; 设备的表示方式=port:community@router; commnunity表示snmp通讯密码 Directory指示该监控设备的相关文件保存的位置=/var/www/mrtg/eth0/; 默认保存在WorkDir工作目录下 MaxBytes指示被采集的数据的最大值. 如果采集的数据大于该值,MRTG将忽略,并保持上次采集的数据值 Kmg指示乘数单位(默认每千位跳一个单位) YLegend指示Y轴的单位标记(不能用中文) ShortLegend指示数据的单位标记 Legend1,2,3,4分别指示四条不同颜色的统计线的文字说明 Legend1: 每5分钟数据平均流入量的文字说明 Legend2: 每5分钟数据平均流出量的文字说明 Legend3: 每5分钟数据最大流入量的文字说明 Legend4: 每5分钟数据最大流出量的文字说明 LegendI,O分别说明数据的流出和流出的文字说明 WithPeak指示如何显示流量图 共有四条不同颜色的统计线,绿色表示平均流入,蓝色表示平均流出,墨绿色表示最大流入,紫色表示最大流出 n代表不设置w代表每周图表,代表每月图表,y代表每年图表 不设置WithPeak,只有绿色流入和蓝色流出 PageTop指示增加到Web页头部的HTML代码,用于定制网页 以空格开始的<TABLE></TABLE>部分都是PageTop的内容,都直接作为HTML代码 七. 如何配置SNMP来配合MRTG进行监控CPU,内存等系统状况 *SNMP简介 SNMP(Simple Network Management Protocol)是一种专门用于网络管理的通讯协议. SNMP一共发展有3个主版本,分别为SNMPv1 ,SNMPv2和SNMPv3。 其中SNMPv2又分为若干个子版本,其中SNMPv2c应用最为广泛 SNMP协议是运行在UDP协议之上,它利用的是UDP协议的161/162端口。 设备的所有的需要被管理的信息称作管理信息库(Management Information Base,MIB) MIB 是一个按照层次结构组织的树状结构(定义方式类似于域名系统),管理对象为定义为树中的相应叶子节点。 SNMP基本的标准MIB库是MIBII *配置SNMP,监控系统内存的使用情况 已用内存的MIB变量=.iso.org.dod.internet.mgmt.mib-2.host.hrStorage.hrStorageTable.hrStorageEntry.hrStorageUsed.2 已用内存的OID值=.1.3.6.1.2.1.25.2.3.1.6.2 已用内存的MIB文件=/usr/share/snmp/mibs/HOST-RESOURCES-MIB.txt //打开snmpd中的已用内存监控,在/etc/snmp/snmpd.conf中加入 view systemview included .1.3.6.1.2.1.25.2.3.1.6.2 注1: 在snmpd.conf文件中查找 “view systemview included”行,加在后面 注2: 修改后重启snmpd服务生效# service snmpd start //检查当前的已用内存 #snmpwalk -v 1 -c public localhost .1.3.6.1.2.1.25.2.3.1.6.2 注: -v 1表示使用SNMPv1协议, -c public localhost表示使用public作为共同体名向主机localhost查询 八. 如何使用SNMP的translate工具 //查询: MIB名-->OID值 $snmptranslate -On SNMPv2-MIB::sysUpTime.0
上一页 [1] [2] [3] [4] 下一页 

.1.3.6.1.2.1.1.3.0 //查询: MIB部分名-->OID值 $snmptranslate -On -IR sysUpTime.0 .1.3.6.1.2.1.1.3.0 $snmptranslate -Ib 'sys.*ime' SNMPv2-MIB::sysORUpTime $snmptranslate -TB 'sys.*ime' SNMPv2-MIB::sysORUpTime SNMPv2-MIB::sysUpTime HOST-RESOURCES-MIB::hrSystemUptime //查询: OID值-->MIB名 $snmptranslate .1.3.6.1.2.1.1.3.0 SNMPv2-MIB::sysUpTime.0 //查询: MIB全名 $snmptranslate -Of .1.3.6.1.2.1.1.3.0 .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime.0 //查询: MIB信息 $snmptranslate -Td .1.3.6.1.2.1.1.3.0 SNMPv2-MIB::sysUpTime.0 sysUpTime OBJECT-TYPE -- FROM SNMPv2-MIB, RFC1213-MIB SYNTAX TimeTicks MAX-Access read-only STATUS current DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized." ::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) sysUpTime(3) 0 } //查询: MIB信息树 $snmptranslate -Tp -IR system +--system(1) +-- -R-- String sysDescr(1) Textual Convention: DisplayString Size: 0..255 +-- -R-- ObjID sysObjectID(2) +-- -R-- TimeTicks sysUpTime(3) +-- -RW- String sysContact(4) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysName(5) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysLocation(6) Textual Convention: DisplayString Size: 0..255 +-- -R-- INTEGER sysServices(7) Range: 0..127 +-- -R-- TimeTicks sysORLastChange(8) Textual Convention: TimeStamp +--sysORTable(9) +--sysOREntry(1) Index: sysORIndex +-- ---- INTEGER sysORIndex(1) Range: 1..2147483647 +-- -R-- ObjID sysORID(2) +-- -R-- String sysORDescr(3) Textual Convention: DisplayString Size: 0..255 +-- -R-- TimeTicks sysORUpTime(4) Textual Convention: TimeStamp [myimg]upload/mrtg1.png[/myimg]

(出处:http://www.sheup.com)


上一页 [1] [2] [3] [4] 

+-- -RW- String sysContact(4) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysName(5) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysLocation(6) Textual Convention: DisplayString Size: 0..255 +-- -R-- INTEGER sysServices(7) Range: 0..127 +-- -R-- TimeTicks sysORLastChange(8) Textual Convention: TimeStamp +--sysORTable(9) +--sysOREntry(1) Index: sysORIndex +-- ---- INTEGER sysORIndex(1) Range: 1..2147483647 +-- -R-- ObjID sysORID(2) +-- -R-- String sysORDescr(3) Textual Convention: DisplayString Size: 0..255 +-- -R-- TimeTicks sysORUpTime(4) Textual Convention: TimeStamp [myimg]upload/mrtg1.png[/myimg]

(出处:http://www.sheup.com)


上一页 [1] [2] [3] [4] [5] 

+-- -RW- String sysContact(4) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysName(5) Textual Convention: DisplayString Size: 0..255 +-- -RW- String sysLocation(6) Textual Convention: DisplayString Size: 0..255 +-- -R-- INTEGER sysServices(7) Range: 0..127 +-- -R-- TimeTicks sysORLastChange(8) Textual Convention: TimeStamp +--sysORTable(9) +--sysOREntry(1) Index: sysORIndex +-- ---- INTEGER sysORIndex(1) Range: 1..2147483647 +-- -R-- ObjID sysORID(2) +-- -R-- String sysORDescr(3) Textual Convention: DisplayString Size: 0..255 +-- -R-- TimeTicks sysORUpTime(4) Textual Convention: TimeStamp [myimg]upload/mrtg1.png[/myimg]

(出处:http://www.sheup.com/)


上一页 [1] [2] [3] [4] [5] [6]