網頁內容載入中,請稍候...
對於觀察伺服器的流量是不可少的,當然在 Linux 上能夠做到的也有很多工具可用來觀察,這邊將使用 Mrtg 來實現。
對於Mrtg就不多說了,在網上很容易就找到其各方面的詳細資料,也可以上http://www.mrtg.org/ 查看官方文檔。

下面我就說說我的安裝過程:

1.環境 CentOS 5.0
2.需要安裝有 net-snmp、net-snmp-utils、 libpng、zlib、freetype、fontconfig、gd、mrtg
以上套件皆都使用 yum 安裝,這裡就不再詳述

首先先設定 snmp ,讓他可以正常運作
修改 snmpd.conf 檔 目錄在 /etc/snmp/snmpd.conf ,修改成如下即可其他的可以全部拿掉
#vi /etc/snmp/snmpd.conf

com2sec local localhost public
com2sec mynetwork 192.168.2.0/24 public
# 註﹕請將 192.168.2.0/24 改為您機器目前所在的 network 範圍。
group MyRWGroup v1 local
group MyROGroup v1 mynetwork
group MyRWGroup v2c local
group MyROGroup v2c mynetwork
view all included .1 80

access MyROGroup "" any noauth prefix all none none
access MyRWGroup "" any noauth prefix all all all
syslocation CentOS 5.0
syscontact snmp <snmp@xspace.idv.tw>
修改好後存檔,並啟動 snmpd
#service snmpd start

測試可否使用
#snmpwalk -c public -v 1 localhost
正常的話會出現許多資料。

如果會出現 timeout 錯誤,請察看 snmpd 是否有正常啟動
#netstat -nal
看看是否有如下這兩行
tcp        0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN
udp        0      0 0.0.0.0:161                 0.0.0.0:*

(snmp 所使用的 prot 為 udp 161 及 sumx  的 port 199  都要有)

沒問題後皆下來設定 mrtg
#cd /etc/mrtg
#cfgmaker --global 'WorkDir: /var/www/mrtg' \
--global 'Options[_]: bits,growright' \
--global 'Language: big5' \
--output /etc/mrtg/mrtg.cfg \
public@192.168.2.254
     <-- (192.168.2.254 需要換成您的這一台伺服器的IP位置 )
正常的話不會有錯誤訊息。

產生Mrtg網頁報表
#/usr/bin/mrtg /etc/mrtg/mrtg.cfg
#/usr/bin/mrtg /etc/mrtg/mrtg.cfg
#/usr/bin/mrtg /etc/mrtg/mrtg.cfg
(如需在命令前加env LANG=C 在執行的時候系統會給出提示,就請改用下面的來產生)
#env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
#env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
#env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
執行三次 (第一次和第二次都會出現錯誤,第三次就不會了,因為第一次建立資料的關係)

產生Mrtg網頁報表索引頁
#indexmaker --columns=1 \
--output=/var/www/mrtg/index.html \
--title='網路流量分析' /etc/mrtg/mrtg.cfg

設定報表瀏覽範圍
這個版本的 mrtg 安裝後 會在 /etc/httpd/conf.d 內增加一個 mrtg.conf 的檔案,內容下:
修改一下可瀏覽的IP範圍
#vi /etc/httpd/conf.d/mrtg.conf
Alias /mrtg /var/www/mrtg
<Location /mrtg>
Order deny,allow
Deny from all
Allow from 127.0.0.1    <-- 修改成  Allow from 192.168.2.0/255.255.255.0
Allow from ::1
# Allow from .example.com
</Location>

修改成存檔,並重新啟動 Apache
#service httpd resatrt

新增排程更新Mrtg報表
為了讓資料自動更新,還需要將 mrtg 產生報表放入 crontab
#crontab -e
在其中加入 */5 * * * * env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
(註:如之前未加env LANG=C的話,則這裡也不用加)

該句表示讓系統在後臺每五分鍾執行一次 env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg  即每5分鍾更新一次流量數據

註:在此版本安裝好的MRTG 不需在手動加入排程執行更新了,安裝好 mrtg 後會在 /etc/cron.d/ 內增加一個 mrtg 檔,此檔案內容如下:
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
功能也是如上所述

瀏覽MRTG所產生的報表
完成以上步驟後,使用瀏覽器瀏覽 http://xxx.xxx.xxx.xxx/mrtg/ 即可察看頻寬使用資料了



MRTG 官方文件:http://oss.oetiker.ch/mrtg/doc/

Linux 系統相關 » 流量統計 | 評論(0) | 引用(0) | 閱讀(5689)
 
發表評論
   
表情
emotemotemotemotemot
開啟HTML
開啟UBB
開啟表情
隱藏
記住我
暱稱   密碼   訪客無需密碼
網址   電郵   [註冊]