监测Linux上面的流量MRTG-监测CPU 负载量:
本文讲述的是监测Linux上面的流量MRTG:前言、安装MRTG准备工作、安装MRTG
监测网路卡流量、mrtg.cfg参数的含义、监测CPU负载量
监测CPU 负载量时,需要使用到额外的外挂程式,就是 sysstat 这个程式,我只使用在 RedHat 6.1 上面过,是可以使用的!
下载并安装 sysstat-4.0.2-1.i386.rpm:
不要说还不会使用 rpm 安装套件喔。
rpm -ivh sysstat-4.0.2-1.i386.rpm
编写外挂程式:
以安装完 sysstat 套件后,产生的 /usr/bin/sar 程式进行外挂程式的编写,我写了一个监测 CPU 的小程式,使用 bash 写的,可以参考看看: [root @tsai cpu]# vi mrtg.cpu
---- 档案开始 ----
- #!/bin/bash
- # 这个程式是用来侦测 CPU 的小外挂程式!
- # 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 $cpuusr
- echo $cpusys
- echo $UPtime
- echo vbird.adsldns.org (这裡写你的主机名称)
---- 档案结束 ----
- [root @tsai cpu]# chmod 755 mrtg.cpu (设定成可执行)
- [root @tsai cpu]# ./mrtg.cpu (测试看可执行否)
开始设定 mrtg 参数档:
我的参数档有点像这样:
- [root @tsai cpu]# vi mrtg.cfg.cpu
---- 档案开始 ----
- ### Global Config Options
- ### To get bits instead of bytes and graphs growing to the right
- WorkDir: /usr/local/apache/htdocs/mrtg/cpu/
- Language: big5
- Target[localhost]: `/usr/local/apache/htdocs/mrtg/cpu/mrtg.cpu`
- MaxBytes[localhost]: 100
- Options[localhost]: gauge, nopercent, growright
- YLegend[localhost]: CPU loading (%)
- ShortLegend[localhost]: %
- LegendO[localhost]: CPU 使用者负载;
- LegendI[localhost]: CPU 纯系统负载;
- Title[localhost]: CPU ?t???v
- PageTop[localhost]:
- VBird 主机 CPU 负载率
- System:RedHat 6.1 in Linux Kernel 2.2.19
---- 档案结束 ----
开始执行参数档:(一样,要执行叁次以上)
- /usr/local/mrtg-2/bin/mrtg /usr/local/apache/htdocs/mrtg/cpu/mrtg.cfg.cpu
写入 /etc/crontab 当中:
- */2 * * * * root /usr/local/mrtg-2/bin/mrtg /usr/local/apache/htdocs/mrtg/cpu/mrtg.cfg.cpu > /dev/null 2>&1
这样就OK了,直接将 Web 指向 http://your.host.domain/mrtg/cpu/localhost.html
重点说完了!再来说说 sar 吧!基本上, sar 可以用来侦测很多的咚咚,例如:
sar -u 1 5 :每一秒鐘测一次 cpu ,共计五次后算平均;
sar -r 3 3:每叁秒看一次实体与虚拟记忆体用量,叁次后算平均!
其他的功能有待你的发掘啰!
【编辑推荐】