歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux服務器

Linux上的MRTG流量監控中心

隨著互聯網應用的發展,企業的互聯網應用已經不僅僅是建設一個網站這麼簡單了。企業對互聯網應用的規模不斷加大,功能也更豐富和強大。面對更大規模的互聯網應用,許多企業在電信IDC機房中不得不擁有數台甚至數十台服務器。

  在對這些服務器的管理過程中,每台服務器的流量情況成為管理工作的一個重點。管理員通過對網絡中各種流量的監控,可以從網絡的異常流量中及時察覺到潛在的安全或性能問題;上層領導也可以從統計的網絡流量報告中獲得有 用的經營分析信息,從而對業務做出相關的調整或升級決策。

  在諸多網絡流量監測軟件中,MRTG無疑是著名而具有代表性的。MRTG是一個基於SNMP協議的典型網絡流量監測、統計、分析工具。SNMP(簡單網絡管理協議)是一個專門設計用來監視和控制網絡中各種網絡設備,如交換機、路由器、服務器等的協議。

  由於市場上絕大多數的網絡產品都支持SNMP協議,所以MRTG的適用范圍很廣。本文將關注如何利用MRTG軟件監控服務器的流量。

  為什麼需要MRTG監控中心

  服務器的操作系統多種多樣,使用較多的一般是Unix類或Windows類操作系統,它們都支持SNMP協議。例如,對於Windows系統而言,只要增加“管理和監控工具”中的Windows組件,就有了對SNMP協議的支持。

  在服務器啟動SNMP後,就會開放161/162端口。管理員如果要監控這台機器,就要在自己的機器上安裝MRTG,然後通過MRTG向服務器的161/162端口發出查詢等請求,取得數據後會生成圖形及HTML文檔的流量報告。這就是MRTG簡單的監控過程。

  在實際應用中,企業可能有多台服務器,通常需要管理員24小時不間斷地對服務器的流量進行監控。如果這時還是簡單地在管理員的機器上使用MRTG就不太適用了。最好的方法是建立一個MRTG監控中心。

  MRTG 監控中心可以是一台專用的服務器,也可以由其它服務器兼作MRTG監控中心。用於監控中心的機器和其它服務器都位於防火牆背後,由於SNMP也很容易成為攻擊的目標,所以在防火牆的規則中,要禁止外界對服務器161/162端口的訪問。這樣便保證了MRTG監控中心擔負起監控其它所有服務器的責任。

  MRTG監控中心將不斷產生流量報告,以Web頁面的形式發送給管理員。當然,該Web頁面是帶有身份認證功能的,以確保只有擁有賬號的管理員才能察看相應的流量報告。

  使用這樣的MRTG監控中心,可以帶來以下好處:

  ◆ 24小時不間斷地工作,能保證產生詳細、全面的流量報告;

  ◆ 提供帶身份認證的Web浏覽界面,管理員憑賬號可以隨時隨地通過互聯網察看流量報告;

  ◆ 免去管理員安裝MRTG的煩惱,只需通過浏覽器來察看流量報告;

  ◆ 只允許MRTG監控中心機器訪問服務器161/162端口,安全性更高。

  構建MRTG監控中心

  下面介紹如何在Linux上構建一個MRTG監控中心。

Linux上的MRTG流量監控中心

點擊查看大圖

  MRTG需要先安裝Apache

  一、MRTG需要以SNMP服務為基礎,所以請確保你的系統已經啟用了此服務

  1.請確保你的系統安裝了以下軟件包

  net-snmp-libs

  net-snmp

  net-snmp-utils

  2.修改/etc/snmp/snmpd.conf

  去掉如下一行的注釋

  view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc

  在大約55行處添加如下一行

  view    systemview    included   .1.3.6.1.2.1.2

  把如下行

  access  notConfigGroup ""      any       noauth    exact  systemview none none

  改作:

  access  notConfigGroup ""      any       noauth    exact  mib2 none none

  3.啟用snmpd服務

  #service snmpd start

  #chkconfig --levle 2345 snmpd on

  4.查看端口的開啟狀況

  # netstat -tunlp |grep snmp

  tcp        0      0 0.0.0.0:199             0.0.0.0:*               LISTEN      4973/snmpd

  udp        0      0 0.0.0.0:161             0.0.0.0:*  

                         4973/snmpd

  二、MRTG生成供浏覽圖像需要httpd服務的支持,同時也需要gd、libpng和zlib三個軟件包的支持,而gd的正常運行也需要其

  它的幾個軟件.

  三:安裝MRTG

  下載地址:http://oss.oetiker.ch/mrtg/pub/

  # tar zxvf mrtg-2.16.2.tar.tar

  # cd mrtg-2.16.2

  # ./configure --prefix=/usr/local/mrtg

  # make

  # make install

  四:配置MRTG

  生成配置文件:

  # mkdir /etc/mrtg

  # /usr/local/mrtg/bin/cfgmaker public@localhost > /etc/mrtg/mrtg.cfg

  編輯/etc/mrtg/mrtg.cfg

  將

  #WorkDir:/home/http/mrtg

  去掉注釋並改為

  WorkDir: /usr/local/www/htdocs/mrtg

  (此處是你的httpd默認的主目錄)   注意前面不要有空格

  去掉如下行的注釋

  # Options[_]: growright, bits

  添加如下行,實現網頁中的中文字符顯示

  Language:gb2312

  生成MRTG網頁主頁面文件

  # /usr/local/mrtg/bin/indexmaker /etc/mrtg/mrtg.cfg --output=/usr/local/www/htdocs/mrtg/index.html  --

  title="My MRTG"

  4.啟動MRTG

  # env LANG=C /usr/local/mrtg/bin/mrtg /etc/mrtg/mrtg.cfg

  這個命令會輸出一些錯誤信息,一般可以安全忽略,連續執行三次此命令即可。

  5.MRTG生成的web頁面是靜態的,為了能讓其不斷的刷新,需要將以上命令添加進crontab

  #crontab -e

  添加如下一行

  */3 * * * * env LANG=C /usr/local/mrtg/bin/mrtg /etc/mrtg/mrtg.cfg

  注:此行表示每三分鐘刷新一次,你可以根據自己的需要修改刷新時間間隔。

  6.安裝完畢,可以去查看結果了,在浏覽器輸入形如以下地址

  http://192.168.1.1/mrtg   (IP地址為你的機器IP)

Copyright © Linux教程網 All Rights Reserved