環境:Ubuntu 9.10 Server
#請先切換到 root 身份。
首先,要先裝好 Apache 與 PHP:
apt-get install apache2
apt-get install php5 libapache2-mod-php5
接著安裝 SNMP:
apt-get install snmpd
修改 SNMP 設定檔:
vim /etc/snmp/snmpd.conf
把 snmpd.conf 的 sec.name source community 部份修改如下:
# com2sec paranoid default public
com2sec readonly default public
#com2sec readwrite default private
重新啟動 SNMP 服務:
/etc/init.d/snmpd restart
安裝 MRTG:
apt-get install mrtg
建立 MRTG 的網頁資料夾:
mkdir /var/www/mrtg
編輯 MRTG 設置檔:
vim /etc/mrtg.cfg
在檔案內 Global Settings 那段,修改成如下設定:
RunAsDaemon: yes
EnableIPv6: no
WorkDir: /var/www/mrtg
Options[_]: bits, growright
WriteExpires: Yes
Title[^]: Traffic Analysis For
查看 /etc/cron.d/mrtg 檔案,編輯 MRTG 的自動排程。
內容類似:
*/5 * * * * root if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg >> /var/log/mrtg/mrtg.log 2>&1; fi
或:
*/5 * * * * root if [ ! -d /var/lock/mrtg ]; then mkdir /var/lock/mrtg; fi; if [ -x /usr/bin/mrtg ] && [ -r /etc/mrtg.cfg ]; then env LANG=C /usr/bin/mrtg /etc/mrtg.cfg 2>&1 | tee -a /var/log/mrtg/mrtg.log ; fi
執行下列指令,產生本機監控設置:
cfgmaker public@localhost > /etc/mrtg.cfg
cfgmaker public@192.168.0.1 >> /etc/mrtg.cfg
使用 indexmaker 產生 MRTG 頁面:
indexmaker /etc/mrtg.cfg > /var/www/mrtg/index.html
執行以下指令三次,直到沒有錯誤訊息:
env LANG=C /usr/bin/mrtg /etc/mrtg.cfg
使用瀏覽器連線到本機的 MRTG 頁面資料夾觀察流量頁面:
http://localhost/mrtg/
*
搭配 sysstat 工具監控 CPU 負載量
安裝 sysstat 工具:
apt-get install sysstat
sysstat 指令簡單說明:
sar -u 1 3 # 每一秒鐘測一次 CPU,三次後計算平均。
sar -r 3 3 # 每三秒測一次實體與虛擬記憶體用量,三次後計算平均。
執行以下指令測試一下:
/usr/bin/sar -u 1 3
在 MRTG 網頁目錄下新增一個 CPU 目錄:
mkdir /var/www/mrtg/cpu
cd /var/www/mrtg/cpu
編寫 CPU 監控的 bash script:
vim cpu.sh
cpu.sh 內容如下:
#!/bin/bash # 開始使用 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}'` # 列出四個數據(前兩個為數字) echo $cpuusr echo $cpusys echo $UPtime echo localhost
修改執行權限:
chmod 755 cpu.sh
編寫監控 CPU 的 MRTG 設置檔:
vim cpu.cfg
cpu.cfg 內容如下:
### Global Config Options ### To get bits instead of bytes and graphs growing to the right WorkDir: /var/www/mrtg/cpu/ Language: utf8 Target[localhost]: `/var/www/mrtg/cpu/cpu.sh` MaxBytes[localhost]: 100 Options[localhost]: gauge, nopercent, growright YLegend[localhost]: CPU loading (%) ShortLegend[localhost]: % LegendO[localhost]: CPU sys; LegendI[localhost]: CPU usr; Title[localhost]: CPU Utilization PageTop[localhost]: <h1>localhost CPU usage</h1>
執行以下指令三次,直到沒有錯誤訊息:
env LANG=C /usr/bin/mrtg /var/www/mrtg/cpu/cpu.cfg
編輯系統排程檔:
vim /etc/crontab
寫入以下內容:
*/5 * * * * root /usr/bin/mrtg /var/www/mrtg/cpu/cpu.cfg > /dev/null 2>&1
使用瀏覽器觀察 CPU 負載頁面:
http://localhost/mrtg/cpu/localhost.html
Reference:
01. http://www.debianhelp.co.uk/mrtg.htm
02. http://www.linuxhomenetworking.com/wiki/
03. http://noc.navi.net/mrtg-conf.html
04. http://linux.vbird.org/linux_security/old/04mrtg.php
沒有留言:
張貼留言