溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

RHEL4U5如何搭建網(wǎng)絡(luò)檢測服務(wù)SNMP

發(fā)布時(shí)間:2021-11-17 14:59:07 來源:億速云 閱讀:135 作者:小新 欄目:云計(jì)算

這篇文章給大家分享的是有關(guān)RHEL4U5如何搭建網(wǎng)絡(luò)檢測服務(wù)SNMP的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

使用的系統(tǒng)為RHEL4U5,本機(jī)IP地址為192.168.1.100  

1.請確保你的系統(tǒng)安裝了以下軟件包  

[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
 

注意系統(tǒng)有可能會提示你裝
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服務(wù)  

#service snmpd start
#chkconfig --levle 2345 snmpd on
 

   

4.查看端口的開啟狀況  

# netstat -tunlp |grep snmp
tcp           0 0.0.0.0:199            0.0.0.0:*              LISTEN     4973/snmpd         
udp           0 0.0.0.0:161            0.0.0.0:*              4973/snmpd   
 

   

二、MRTG生成供瀏覽圖像需要httpd服務(wù)的支持,同時(shí)也需要gd、libpng和zlib三個(gè)軟件包的支持,而gd的正常運(yùn)行也需要其它的幾個(gè)軟件,下面一并安裝它們。  

# 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
 

我的已經(jīng)安裝過了,如果沒有請根據(jù)自己的情況查漏補(bǔ)缺  

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

三、安裝配置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默認(rèn)的主目錄)

 

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

 

添加如下行,實(shí)現(xiàn)網(wǎng)頁中的中文字符顯示
Language:gb2312

 

生成MRTG網(wǎng)頁主頁面文件
#/usr/local/mrtg/bin/indexmaker /etc/mrtg/mrtg.cfg --output=/usr/local/apache/htdocs/mrtg/index.html --title="My MRTG"

 

4.啟動(dòng)MRTG

#env LANG=C /usr/local/mrtg/bin/mrtg /etc/mrtg/mrtg.cfg
這個(gè)命令會輸出一些錯(cuò)誤信息,一般可以安全忽略,連續(xù)執(zhí)行三次此命令即可。

 

5.MRTG生成的web頁面是靜態(tài)的,為了能讓其不斷的刷新,需要將以上命令添加進(jìn)crontab
#crontab -e
添加如下一行
*/3 * * * * env LANG=C /usr/local/mrtg/bin/mrtg /etc/mrtg/mrtg.cfg

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

 

6.安裝完畢,可以去查看結(jié)果了,在瀏覽器輸入形如以下地址
    http://192.168.1.100/mrtg       (IP地址為你的機(jī)器IP)

四、一個(gè)示例:內(nèi)存使用監(jiān)視

 

1.新建一個(gè)存放腳本的文件夾
#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

讓其具有運(yùn)行權(quán)限
#chmod 755 /usr/local/apache/htdocs/mrtgsh/mrtg.memory

 

3.編輯/etc/mrtg/mrtg.cfg
添加如下內(nèi)容
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]:   Memory Usage :
Legend1[memory]:   Total Memory :
Legend2[memory]:   Used Memory :
LegendI[memory]:   Total Memory :
LegendO[memory]:   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.可根據(jù)情況重新啟動(dòng)MRTG,然后就可以查看效果了。

RHEL4U5如何搭建網(wǎng)絡(luò)檢測服務(wù)SNMP    

偵測CPU負(fù)載量    

建立腳本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      這里寫上你主機(jī)名稱。    

     

#vi /etc/mrtg/mrtg.cfg    

添加如下內(nèi)容    

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

     

     

同樣我們也可以即時(shí)偵測上線人數(shù)    

建立腳本mrtg.person.sh    

#!/bin/bash
# 這個(gè)程式主要在計(jì)算有多少人以 WWW 的方式連進(jìn)我們的主機(jī)!
# 1. 計(jì)算連線數(shù)目
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. 計(jì)算連線人數(shù):
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.輸出時(shí)間
 UPtime=`/usr/bin/uptime | awk '{print $3 " " $4 " " $5}'`
 echo $UPtime
 echo your.host.name
   

     

#vi /etc/mrtg/mrtg.cfg    

添加如下內(nèi)容    

### 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; 連線數(shù)目 :
LegendO[tsai.adsldns.org_person]: &nbsp; 上線人數(shù) :
Title[tsai.adsldns.org_person]: WWW 上線人數(shù)統(tǒng)計(jì)表
PageTop[tsai.adsldns.org_person]: <H1> WWW 主機(jī)上線人數(shù) </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如何搭建網(wǎng)絡(luò)檢測服務(wù)SNMP    

以下是一個(gè)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連接數(shù)      
     
  ShortLegend[apache_conn]: 個(gè)      
     
  LegendI[apache_conn]: apache總連接數(shù):      
     
  LegendO[apache_conn]: apache當(dāng)前連接數(shù)      
     
  Title[apache_conn]: apache連接數(shù)      
     
  PageTop[apache_conn]: <h2>apache連接數(shù)</h2>      
     
  Target指的是mrtg從那里取畫曲線的值,此處可以從snmp和腳本取值,如從腳本取值需注意,需要前后用`來指定腳本路徑而不是' .      
     
  []指這個(gè)配置段的名稱,這里為apache_conn,屆時(shí)會在mrtg的workdir里建立同名的目錄      
     
  Maxbytes指mrtg取值后能表現(xiàn)的最大值      
     
  YLegend指再圖標(biāo)中縱向的名稱      
     
  ShortLegend指在圖標(biāo)中數(shù)值后面所跟的單位      
     
  LegendI 傳遞過去的第一個(gè)值      
     
  LegendO 傳遞過去的第二個(gè)值      
     
  Title 網(wǎng)頁title      
     
  Pagetop 網(wǎng)頁顯示名稱      
     
  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查看,所以我用里一個(gè)簡單的shell命令組合來獲取apache的總連接數(shù)和當(dāng)前建立連接的連接數(shù).      
     
  需要注意以下幾點(diǎn)      
     
  1) 使用命令傳遞值給mrtg時(shí),mrtg只能接受4個(gè)參數(shù),真正用于畫圖的只有2個(gè)      
     
  2) 4個(gè)參數(shù)必須依次為 值1,值2,運(yùn)行時(shí)間,主機(jī)名      
     
  3) 4個(gè)參數(shù)后不得有\(zhòng)n等換行符      
     
  由于mrtg.cfg的改變,所以必須依次使用以下命令      
     
  /usr/local/mrtg/bin/indexmaker --output=/var/www/mrtg/index.html /etc/mrtg.cfg      
     
  使用mrtg的indexmaker重生成index.html文件,否則你無法看到新加入的apache連接的監(jiān)控.      
     
  /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg      
     
  使用mrtg命令傳入數(shù)值,同樣會報(bào)3次錯(cuò),忽略即可      
     
  再打開瀏覽器,輸入地址,應(yīng)該可以看到首頁除了網(wǎng)卡的流量外再下方會加入apache連接的圖      
     
  確認(rèn)無誤后,可再/etc/mrtg.cfg里加入      
     
  RunAsDaemon: Yes      
     
  在使用一次      
     
  /usr/local/mrtg/bin/mrtg /etc/mrtg.cfg      
     
  mrtg就會使用daemon方式運(yùn)行      
     
  你以后要做的只是每次使用瀏覽器看看圖就可以了,是不是很輕松

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

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI