久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

RHEL4U5如何搭建網絡檢測服務SNMP

178次閱讀
沒有評論

共計 7263 個字符,預計需要花費 19 分鐘才能閱讀完成。

這篇文章給大家分享的是有關 RHEL4U5 如何搭建網絡檢測服務 SNMP 的內容。丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,一起跟隨丸趣 TV 小編過來看看吧。

使用的系統為 RHEL4U5, 本機 IP 地址為 192.168.1.100
 

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

[root@zone src]# rpm -qa |grep snmp
net-snmp-5.1.2-11.EL4.10
net-snmp-utils-5.1.2-11.EL4.10
net-snmp-devel-5.1.2-11.EL4.10
net-snmp-libs-5.1.2-11.EL4.10
 

注意系統有可能會提示你裝
beecrypt-devel-3.1.0-6.i386.rpm
elfutils-devel-0.97.1-4.i386.rpm
elfutils-libelf-devel-0.97.1-4.i386.rpm
這些文件分別在第二張和第四張盤中。
 

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 的正常運行也需要其它的幾個軟件,下面一并安裝它們。
 

# rpm -qa | grep libpng
libpng-1.2.7-1
libpng10-1.0.16-1
libpng10-devel-1.0.16-1
libpng-devel-1.2.7-1
 

# rpm -qa | grep ^libxml
libxml2-python-2.6.16-6
libxml2-devel-2.6.16-6
libxml2-2.6.16-6
 

# rpm -qa | grep ^gd-
gd-2.0.28-4
gd-devel-2.0.28-4
 

# rpm -qa | grep jpeg
libjpeg-6b-33
libjpeg-devel-6b-33
 

# rpm -qa | grep zlib
zlib-1.2.1.2-1.2
zlib-devel-1.2.1.2-1.2
 

# rpm -qa | grep freetype
freetype-2.1.9-1
freetype-devel-2.1.9-1
 

我的已經安裝過了,如果沒有請根據自己的情況查漏補缺
 

請確保你的軟件包的版本號等于或高于以上顯示的版本
 

三、安裝配置 MRTG
 

 
 

1. 下載 mrtg, 目前最新版本為 mrtg-2.15.2.tar.gz
 

#tar zxvf mrtg-2.15.2.tar.gz
# cd mrtg-2.15.2
 

# ./configure –prefix=/usr/local/mrtg –sysconfdir=/etc/mrtg –with-gd=/usr/local/gd2/include –with-gd-lib=/usr/local/gd2/lib –with-gd-inc=/usr/local/gd2/include –with-png=/usr/local/include –with-png-lib=/usr/local/lib –with-png-inc=/usr/local/include –with-zlib=/usr/local/zlib/include –with-zlib-lib=/usr/local/zlib/include –with-zlib-inc=/usr/local/zlib/include
 

# make
# make install
 

3. 基本配置

 

生成主配置文件
#/usr/local/mrtg/cfgmaker
    public@localhost
    /etc/mrtg/mrtg.cfg

 

編輯 /etc/mrtg/mrtg.cfg

#WorkDir:/home/http/mrtg
去掉注釋并改為
WorkDir: /usr/local/apache/htdocs/mrtg (此處是你的 httpd 默認的主目錄)

 

去掉如下行的注釋
# Options[_]: growright, bits

 

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

 

生成 MRTG 網頁主頁面文件
#/usr/local/mrtg/bin/indexmaker /etc/mrtg/mrtg.cfg –output=/usr/local/apache/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.100/mrtg
     (IP 地址為你的機器 IP)

四、一個示例:內存使用監視

 

1. 新建一個存放腳本的文件夾
#mkdir -pv /usr/local/apache/htdocs/mrtgsh

 

2. 建立腳本文件
#vi /usr/local/apache/htdocs/mrtgsh/mrtg.memory
添加如下腳本:
#!/bin/bash
# run this script to check the mem usage.
totalmem=`/usr/bin/free |grep Mem |awk {print $2} `
usedmem=`/usr/bin/free |grep Mem |awk {print $3} `
UPtime=`/usr/bin/uptime | awk {print $3 $4 $5} `
echo $totalmem
echo $usedmem
echo $UPtime

讓其具有運行權限
#chmod 755 /usr/local/apache/htdocs/mrtgsh/mrtg.memory

 

3. 編輯 /etc/mrtg/mrtg.cfg
添加如下內容
Target[memory]: `/usr/local/apache/htdocs/mrtgsh/mrtg.memory`
MaxBytes[memory]: 4096000
Title[memory]:Memory Usages
ShortLegend[memory]:
kmg[memory]:kB,MB
kilo[memory]:1024
YLegend[memory]: nbsp; Memory Usage :
Legend1[memory]: nbsp; Total Memory :
Legend2[memory]: nbsp; Used Memory :
LegendI[memory]: nbsp; Total Memory :
LegendO[memory]: nbsp; Used Memory :
Options[memory]: growright,gauge,nopercent
PageTop[memory]: H1 Memory Usages /H1

 

4. 重新生成主頁面文件
#/usr/local/mrtg/bin/indexmaker /etc/mrtg/mrtg.cfg –output=/usr/local/apache/htdocs/mrtg/index.html –title= My MRTG

 

5. 可根據情況重新啟動 MRTG,然后就可以查看效果了。

RHEL4U5 如何搭建網絡檢測服務 SNMP
   

偵測 CPU 負載量
   

建立腳本 mrtg.cpu
   

#!/bin/bash
 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
     www.zhang.org
      這里寫上你主機名稱。
   

 
   

#vi /etc/mrtg/mrtg.cfg
   

添加如下內容
   

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]: nbsp; CPU 使用者負載;
LegendI[localhost]: nbsp; CPU 純系統負載;
Title[localhost]: CPU ?t???v
PageTop[localhost]: H1 VBird 主機 CPU 負載率 /H1
  TABLE
  TR TD System: /TD   TD RedHat 6.1 in Linux Kernel 2.2.19 /TD /TR
  /TABLE
   

 
   

 
   

同樣我們也可以即時偵測上線人數
   

建立腳本 mrtg.person.sh
   

#!/bin/bash
# 這個程式主要在計算有多少人以 WWW 的方式連進我們的主機!
# 1. 計算連線數目
echo `netstat -a | grep www|awk {print $5} |sort | wc -l|awk {print$1 – 1} `
# netstat -a | grep www|awk {print $5} |sort| uniq 
# 2. 計算連線人數:
echo `netstat -a | grep www|awk {print $5} |cut -d : -f1|sort| uniq |wc -l | awk {print $1 – 1} `
# netstat -a | grep www|awk {print $5} |cut -d : -f1|sort| uniq 
# 3. 輸出時間
 UPtime=`/usr/bin/uptime | awk {print $3 $4 $5} `
 echo $UPtime
 echo your.host.name
   

 
   

#vi /etc/mrtg/mrtg.cfg
   

添加如下內容
   

### CPU Loading detecting …
Target[tsai.adsldns.org_person]: `/usr/local/mrtg-2/bin/mrtg.person.sh` == 檔案放置的路徑與名稱
MaxBytes[tsai.adsldns.org_person]: 500
Options[tsai.adsldns.org_person]: gauge, nopercent, growright
YLegend[tsai.adsldns.org_person]: Online Users
ShortLegend[tsai.adsldns.org_person]: %
LegendI[tsai.adsldns.org_person]: nbsp; 連線數目 :
LegendO[tsai.adsldns.org_person]: nbsp; 上線人數 :
Title[tsai.adsldns.org_person]: WWW 上線人數統計表
PageTop[tsai.adsldns.org_person]: H1 WWW 主機上線人數 /H1
  TABLE
  TR TD System: /TD   TD Aerosol Lab. in Redhat 6.1 Kernel 2.2.18 /TD /TR
  TR TD Maintainer: /TD TD VBird /TD /TR
  /TABLE
   

注意要重新生成頁面文件,重啟 mrtg……
   

如圖顯示:
   

RHEL4U5 如何搭建網絡檢測服務 SNMP
   

以下是一個 apache 連接的例子
     

     
首先再 mrtg.cfg 里加入 apache 連接的配置段
     

     
Target[apache_conn]: `/bin/mrtg.apa.pl`
     

     
Options[apache_conn]: gauge,nopercent,growright
     

     
Directory[apache_conn]:apache_conn
     

     
MaxBytes[apache_conn]: 4000
     

     
YLegend[apache_conn]: apache 連接數
     

     
ShortLegend[apache_conn]: 個
     

     
LegendI[apache_conn]: apache 總連接數:
     

     
LegendO[apache_conn]: apache 當前連接數
     

     
Title[apache_conn]: apache 連接數
     

     
PageTop[apache_conn]: h2 apache 連接數 /h2
     

     
Target 指的是 mrtg 從那里取畫曲線的值, 此處可以從 snmp 和腳本取值, 如從腳本取值需注意, 需要前后用 ` 來指定腳本路徑而不是 .
     

     
[] 指這個配置段的名稱, 這里為 apache_conn, 屆時會在 mrtg 的 workdir 里建立同名的目錄
     

     
Maxbytes 指 mrtg 取值后能表現的最大值
     

     
YLegend 指再圖標中縱向的名稱
     

     
ShortLegend 指在圖標中數值后面所跟的單位
     

     
LegendI 傳遞過去的第一個值
     

     
LegendO 傳遞過去的第二個值
     

     
Title 網頁 title
     

     
Pagetop 網頁顯示名稱
     

     
mrtg.apa.pl
     

     
#!/usr/bin/perl
     

     
$hostname=`hostname`;
     

     
$hostname=~s/\s+$//;
     

     
$apache_all_conn=`netstat -an|grep 192.168.0.1:80|wc -l`;
     

     
$apache_conn=`netstat -an|grep 192.168.0.1:80|grep ESTABLISHED|wc -l`;
     

     
$apache_all_conn=~s/\n$//;
     

     
$apache_conn=~s/\n$//;
     

     
$apache_all_conn=~s/^\s+|\s+$//;
     

     
$apache_conn=~s/^\s+|\s+$//;
     

     
$gettime=`uptime|awk {print \$1 \$3 \$4}
     

     
$gettime=~s/\,|\n$//g;
     

     
print($apache_all_conn\n
     

     
print($apache_conn\n
     

     
print($gettime\n
     

     
print($hostname\n
     

     
以上腳本為 perl 編寫, 由于 apache 的連接可以使用 netstat 查看, 所以我用里一個簡單的 shell 命令組合來獲取 apache 的總連接數和當前建立連接的連接數.
     

     
需要注意以下幾點
     

     
1) 使用命令傳遞值給 mrtg 時,mrtg 只能接受 4 個參數, 真正用于畫圖的只有 2 個
     

     
2) 4 個參數必須依次為 值 1, 值 2, 運行時間, 主機名
     

     
3) 4 個參數后不得有 \n 等換行符
     

     
由于 mrtg.cfg 的改變, 所以必須依次使用以下命令
     

     
/usr/local/mrtg/bin/indexmaker –output=/var/www/mrtg/index.html /etc/mrtg.cfg
     

     
使用 mrtg 的 indexmaker 重生成 index.html 文件, 否則你無法看到新加入的 apache 連接的監控.
     

     
/usr/local/mrtg/bin/mrtg /etc/mrtg.cfg
     

     
使用 mrtg 命令傳入數值, 同樣會報 3 次錯, 忽略即可
     

     
再打開瀏覽器, 輸入地址, 應該可以看到首頁除了網卡的流量外再下方會加入 apache 連接的圖
     

     
確認無誤后, 可再 /etc/mrtg.cfg 里加入
     

     
RunAsDaemon: Yes
     

     
在使用一次
     

     
/usr/local/mrtg/bin/mrtg /etc/mrtg.cfg
     

     
mrtg 就會使用 daemon 方式運行
     

     
你以后要做的只是每次使用瀏覽器看看圖就可以了, 是不是很輕松

感謝各位的閱讀!關于“RHEL4U5 如何搭建網絡檢測服務 SNMP”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-25發表,共計7263字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 溆浦县| 遂溪县| 县级市| 抚远县| 高阳县| 环江| 准格尔旗| 明水县| 巴马| 西昌市| 淅川县| 大理市| 济宁市| 锡林浩特市| 新沂市| 千阳县| 广饶县| 华宁县| 渝中区| 潼南县| 琼中| 南澳县| 阳城县| 康乐县| 依兰县| 松潘县| 罗甸县| 天水市| 高清| 辉南县| 淮北市| 瑞安市| 射阳县| 夏邑县| 康平县| 宽城| 德庆县| 五常市| 伊宁市| 尉犁县| 会东县|