Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx

上传人:b****5 文档编号:3565214 上传时间:2022-11-23 格式:DOCX 页数:12 大小:184.84KB
下载 相关 举报
Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx_第1页
第1页 / 共12页
Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx_第2页
第2页 / 共12页
Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx_第3页
第3页 / 共12页
Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx_第4页
第4页 / 共12页
Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx

《Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx》由会员分享,可在线阅读,更多相关《Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx(12页珍藏版)》请在冰豆网上搜索。

Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控.docx

Linux下MRTG搭建实现对远程计算机的流量内存CPU端口连接数的监控

Linux下MRTG搭建实现对远程计算机的流量、内存、CPU、端口连接数的监控

网上利用MRTG监控本机网卡流量的文章非常多,但对于监控远程计算机的文章相对就少很多了,能根据文章成功搭建的就更加少了。

搭建成功翻阅了大量资料文档,也遇到过各种复杂的问题,接下来我会把遇到的问题极其对策列出来,希望给大家带来帮助。

首先介绍下我的系统环境:

RHEL6.0. 语言中文坏境。

另外也用CentOS5.5做过测试,但用RHEL6.0遇到的问题就比较多了,下面是以RHEL为例来讲解的。

MRTG服务器和被监控的都是这个系统。

MRTG服务器:

183.63.48.52

被监控的服务器:

183.63.48.52(本机)、183.63.48.55、183.63.48.36、183.63.48.35

为了解决依赖包关系,我用网易163做网络YUM源,下面是详细的操作步骤:

1.RHEL6使用CentOS6的yum源

1.1RHEL6中卸载自身yum

#rpm-aq|grepyum|xargsrpm-e–nodeps

这一步我真没用过,我拿到的服务器中文系统RHEL6.0和测试的纯英文CentOS5.5、纯英文RHEL6.0都是未搭建YUM的。

我是直接从第二步开始。

1.2下载centos6相关包

1.#wget  

2.#wget  

3.#wget  

4.#wget  

1.3安装

1.# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm 

2.# rpm -ivh yum-metadata-parser-1.1.2-14.1.el6.x86_64.rpm 

3.# rpm -ivh yum-3.2.27-14.el6.centos.noarch.rpm  yum-plugin-fastestmirror-1.1.26-11.el6.noarch.rpm 

1.4、复制centos6中的repo到RHEL6

新建文件/etc/yum.repos.d/CentOS-Base.repo

REHL6#Vim/etc/yum.repos.d/CentOS-Base.repo

下面是网易163的源:

#CentOS-Base.repo

#

#ThisfileusesanewmirrorlistsystemdevelopedbyLanceDavisforCentOS.

#ThemirrorsystemusestheconnectingIPaddressoftheclientandthe

#updatestatusofeachmirrortopickmirrorsthatareupdatedtoand

#geographicallyclosetotheclient.  YoushouldusethisforCentOSupdates

#unlessyouaremanuallypickingothermirrors.

#

#Ifthemirrorlist=doesnotworkforyou,asafallbackyoucantrythe

#remarkedoutbaseurl=lineinstead.

#

#

 

[base]

name=CentOS-$releasever-Base

baseurl=

gpgcheck=1

gpgkey=

 

#releasedupdates

[updates]

name=CentOS-$releasever-Updates

baseurl=

gpgcheck=1

gpgkey=

 

#packagesused/producedinthebuildbutnotreleased

#[addons]

#name=CentOS-$releasever-Addons

#baseurl=

#gpgcheck=1

#gpgkey=

#additionalpackagesthatmaybeuseful

[extras]

name=CentOS-$releasever-Extras

baseurl=

gpgcheck=1

gpgkey=

#additionalpackagesthatextendfunctionalityofexistingpackages

[centosplus]

name=CentOS-$releasever-Plus

baseurl=

gpgcheck=1

enabled=0

gpgkey=

把他们全部写进CentOS-Base.repo文件里就好了。

然后用下面的命令测试是否成功,反正我是Ok了

Rhel6#yumcleanall

Rhel6#yumlist

2.Linux下MRTG环境的搭建

MRTG服务器(183.63.48.52)下:

2.1)安装snmp,apache,mrtg

rpm-ivhnet-snmp*

rpm–ivhhttpd

rpm-ivhmrtg

2.1)编辑snmpd.conf,以配合mrtg

把下面的#号去掉

#viewmib2included.iso.org.dod.internet.mgmt.mib-2fc

把下面的语句

accessnotConfigGroup""anynoauthexactsystemviewnonenone

改成:

accessnotConfigGroup""anynoauthexactallnonenone

把下面的#号去掉80也删了

#viewallincluded.180

改成

viewallincluded.1

ok,接着重启下SNMPD服务:

servicesnmpdrestart

测试下snmpd

Snmpwalk–v2c–cpublic127.0.0.1system看有木有数值出现还是报错。

这一步貌似不会出错的。

没问题的话就直接把弄远程的网卡流量弄出来好了,然后慢慢添加进去对CPU、内存、TCP连接数的监控,远程的都弄好了,本机的你也该能举一反三弄出来了把。

当然实际操作的话,当然还是从本机开始弄。

MRTG服务器为183.63.48.52被监控的机器为183.63.48.35,我会在命令行的将他们区别开来分别用48.52#和48.35#

3.)48.35安装snmpd打开UDP161端口并且关闭Selinux,这里我直接将防火墙关了好了

48.35#yum–ivhnet-snmp*

48.35#serviceiptablesstop

48.35#setenforce0

然后在服务器上检测下是否有数据传递过来

48.52#snmpwalk–v2c–cpublic183.63.48.35system

按我的步骤应该会有数据产生的

4)有数据的话MRTG服务器新建/var/www/mrtg/net目录,并在其目录下生成.cfg,指定监控的IP为183.63.48.35

mkdir/var/www/mrtg/net/

cfgmaker--output=/var/www/mrtg/net/48.52.cfgpublic@183.63.48.35

5.)编辑48.35.cfg文件,更改WorkDir为/var/www/mrtg/net

WorkDir:

/var/www/mrtg/net

加入中文支持

Language:

Chinese

6)Apache把待会要生成的MRTG网站挂上去编辑/etc/httpd/conf/httpd.conf配置文档

Alias/mrtg"/var/www/mrtg/net/"

OptionsIndexesFollowSymLinksMultiViews

AllowOverrideNone

Orderallow,deny

Allowfromall

找到这行:

AddDefaultCharsetISO-8859-1

更改为:

AddDefaultCharsetGB2312

或者加一个虚拟主机:

加入

80>

#ServerAdminwebmaster@

AddDefaultCharsetGB2312

DocumentRoot/var/www/mrtg/net/

ServerName

ErrorLoglogs/-error_log

#CustomLoglogs/-access_logcommon

7)重启httpd

servicehttpdrestart

8)执行envLANG=Cmrtg/var/www/mrtg/net/48.52cfg,执行三遍到不再报警

9)用indexmaker制作48.35.html页面,存放路径为/var/www/mrtg/net/,title为183.63.48.35

indexmaker--output=/var/www/mrtg/net/48.52html--title=183.63.48.35/var/www/mrtg/net/48.35.cfg

接着用IP或者域名去访问下是否有图显示出来

http:

//183.63.48.52/48.35.html

10)在crontab中加入在网卡流量的监控,每5分钟执行一次

Crontab–eby:

83917378@

*/5****envLANG=Cmrtg/var/www/mrtg/net/48.35.cfg

183.63.48.35的网卡流量就会出来了,

11)接下来是加入对183.63.48.35的CPU的监控

11.1)48.35上编写cpu监控的脚本我把这脚本放在家目录了

48.35#Vim/root/cpu.sh

#!

/bin/sh

sar-u13|grep"Average"|awk'{print$3}'

sar-u13|grep"Average"|awk'{print$5}'

分别输出的是用户和系统占用的CPU百分比我装的是中文系统输出的是中文平均时间而不是Average,所以要改变下语言环境:

48.35#exportLANG=en_US.UTF-8

检测脚本输出正常没问题后还要编写48.35的snmpd.conf配置文件

加入:

exec.1.3.6.1.4.1.2021.53cpu/bin/sh/root/cpu.sh

网上95%给出的是这条语句,这条语句很奇怪,在RHEL6.0下即使在本机下也不会输出任何值而我的CentOS5.5却可以。

RP?

不过测试确实是这样。

怎么办?

Q83917378这时你就不得不赞叹本人的英明神武。

用另外一条语句来代替

Extend.1.3.6.1.4.1.2021.53cpu/bin/sh/root/cpu.sh

保存重启snmpd

48.35#servicesnmpdrestart

然后分别在35和52俩台机器上进行测试:

48.35#snmpwalk–v2c–cpublic183.63.48.35.1.3.6.1.4.1.2021.53

成功的话只要你有打开端口关闭selinux基本上MRTG服务器就能取到值了

48.52#snmpwalk–v2c–cpublic183.63.48.35.1.3.6.1.4.1.2021.53

这个截图少许有些不一样,发现没有我的脚本其实是

Extend.1.3.6.1.4.1.2021.53cpu/bin/cat/home/admin/a

因为我用Extend.1.3.6.1.4.1.2021.53cpu/bin/sh/root/cpu.sh

无论是本机还是MRTG服务器有取到空值的情况即

11.1)在中加入对cpu的监控设定,加入:

Target[cpu],即mrtg执行时从snmpwalk-v2c-cpublic183.62.48.35.1.3.6.1.4.1.2021.51|grep51.4.|awk-F\"'{print$2}'的返回值中取值“3.25”“1.84”是“”“”这个状态没有数值在里面

我找不到愿意只好把脚本cpu.sh改成

#!

/bin/sh

sar-u13|grep"Average"|awk'{print$3}'>/home/admin/a

sar-u13|grep"Average"|awk'{print$5}'>>/home/admin/a

然后用计划任务每5分钟执行一次/bin/sh/root/cpu.sh

将值输出到/home/admin/a文件中

48.35的snmpd.conf用

Extend.1.3.6.1.4.1.2021.53cpu/bin/cat/home/admin/a

在48.52上

将生成的48.35.cfg打开

11.2)加入:

MaxBytes[···],即图表纵向数值的最大上限为100

11.3)加入:

Options[···]:

gauge,nopercent,growright,即图表向右延展

11.4)加入:

YLegend[···],即图表纵向显示的标题为CPUloading(%)

11.5)加入:

ShortLegend[···],即在图标中数值后面所跟的单位

11.6)加入:

LegendI[···]和LegendO[cpu],即从脚本读取的第一个值和第二个值,第一个值统计CPUSYSTEM,第二个值统计CPUUSER

11.7)加入:

Title[···]:

即网页的标题,设定为CPUstateof183.63.48.35Server

11.8)加入:

PageTop[···]:

即网页显示的名称,设定为CPUloading

具体为

########################################################################

Target[183.62.48.35_3]:

`snmpwalk-v2c-cpublic183.62.48.35.1.3.6.1.4.1.2021.53|grep53.4.|awk-F\"'{print$2}'`

#Targey[127.0.0.1_2]:

memTotalReal.0&memAvailReal.0:

holdata@holdata.3322.org

Xsize[183.62.48.35_3]:

300

Ysize[183.62.48.35_3]:

100

Ytics[183.62.48.35_3]:

7

MaxBytes[183.62.48.35_3]:

100

Title[183.62.48.35_3]:

CPUStateof183.62.48.35Server

PageTop[183.62.48.35_3]:

CPUStateof183.62.48.35Server

ShortLegend[183.62.48.35_3]:

kmg[183.62.48.35_3]:

%

#kilo[127.0.0.1_2]:

1024

YLegend[183.62.48.35_3]:

CPUloading(%)

LegendI[183.62.48.35_3]:

CPUUSER:

LegendO[183.62.48.35_3]:

CPUSYSTEM:

Options[183.62.48.35_3]:

growright,gauge,nopercent

其中方括号内的183.62.48.35_3最后的3不要和网卡的不一样就可以了

然后保存,接着就是老几样了

48.35#envLANG=Cmrtg/vat/www/mrtg/net/48.35.cfg

48.35#Indexmake--output=/var/www/mrtg/net/48.52html--title=183.63.48.35/var/www/mrtg/net/48.35.cfg

然后刷新下网页就可以看到了

内存和Tcp/ip连接数的代码附上

内存:

#!

/bin/sh

a=`free-m|grepMem|awk'{print$3}'`

b=`free-m|grepMem|awk'{print$2}'`

echo$a

echo$b

80口连接数和httpd进程数

#!

/bin/sh

netstat-an|grep-i"3306"|wc-l

ps-ef|grephttpd|wc-l

48.35的snmpd文档加上

48.52的48.35.cfg文件加上

Target[183.63.48.35_5]:

`snmpwalk-v2c-cpublic183.62.48.35.1.3.6.1.4.1.2021.52|grep52.4.|awk-F\"'{print$2}'`

#gargey[183.63.48.35_5]:

memTotalReal.0&memAvailReal.0:

holdata@holdata.3322.org

Xsize[183.63.48.35_5]:

300

Ysize[183.63.48.35_5]:

100

Ytics[183.63.48.35_5]:

7

MaxBytes[183.63.48.35_5]:

9000

Title[183.63.48.35_5]:

MemoryStateofServer

PageTop[183.63.48.35_5]:

MemoryStateofServer

ShortLegend[183.63.48.35_5]:

MB

kmg[183.63.48.35_5]:

MB

kilo[183.63.48.35_5]:

1024

YLegend[183.63.48.35_5]:

MemoryUsage

LegendI[183.63.48.35_5]:

Memoryused

LegendO[183.63.48.35_5]:

Memorytatol

Options[183.63.48.35_5]:

growright,gauge,nopercent

#################################################################

Target[183.62.48.35_6]:

`snmpwalk-v2c-cpublic183.62.48.35.1.3.6.1.4.1.2021.51|grep51.4.|awk-F\"'{print$2}'`

#Targey[183.62.48.35_5]:

memTotalReal.0&memAvailReal.0:

holdata@holdata.3322.org

Xsize[183.62.48.35_6]:

300

Ysize[183.62.48.35_6]:

100

Ytics[183.62.48.35_6]:

7

MaxBytes[183.62.48.35_6]:

1000

Title[183.62.48.35_6]:

THEnumberoftcpconnnectforServer

PageTop[183.62.48.35_6]:

ThenumberofTCPconnecterforServer

ShortLegend[183.62.48.35_6]:

kmg[183.62.48.35_6]:

times

#kilo[183.62.48.35_6]:

1024

YLegend[183.62.48.35_6]:

No.ofconnected

LegendI[183.62.48.35_6]:

port80

LegendO[183.62.48.35_6]:

httpdprocessnumber

Options[183.62.48.35_6]:

growright,gauge,nopercent

这是我最后的效果图,我自己做了一个首页index.html

完成。

Copy的也累了把额外赠送给你vim的替换命令:

:

1,$s/183.63.48.35_3/127.0.0.1/g

含义将183.62

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1