Mrtg系统监控(包含gd库的安装)

环境介绍

MRTG是一个监控网络链路流量负载的工具软件,通过snmp协议得到设备的流量信息,并将流量负载以包含PNG格式的图形的HTML 文档方式显示给用户,以非常直观的形式显示流量负载。
linux需要有lamp环境支持,snmp环境支持。linux安装snmp可以查看这里:linux安装snmp服务,以及常用的snmp指令
话不多说,直接开干!

安装步骤
  1. mrtg的安装
    先跟大家介绍一下
    解压目录:/home/Lifangping/SoftPackage/mrtg-2.17.7
    安装目录:/home/Lifangping/Soft/mrtg

    下载mrtg软件包:https://oss.oetiker.ch/mrtg/pub/?M=D ,(复制链接到浏览器中打开)我下载的版本是mrtg-2.17.7.tar.gz。
    将安装包上传到linux服务器上,通过winscp。
    解压安装
    # tar -zxvf mrtg-2.17.7.tar.gz # cd mrtg-2.17.7 # ./configure --prefix=/home/Lifangping/Soft/mrtg
    安装过程中出现错误,导致安装不能继续执行,故终止安装,解决错误。
    错误内容:
    在这里插入图片描述
    提示我安装gd库。

  2. 安装中遇到的问题
    mrtg安装需要依赖gd库,由于我的服务器未安装gd库,所以需要安装gd库
    下载gd库安装包:https://github.com/libgd/libgd/releases ,我下载的是libgd-2.2.5.tar.gz。
    将安装包上传到linux服务器上
    先跟大家介绍一下
    解压目录:/home/Lifangping/SoftPackage/libgd-2.2.5
    安装目录:/home/Lifangping/Soft/gd

    解压并安装

    # tar -zxvf libgd-2.2.5.tar.gz
    # cd mrtg-2.17.7
    # ./configure --prefix=/home/Lifangping/Soft/gd
    # make
    # make install
    

    成功安装没有报错。

  3. 重新安装mrtg。
    细细查看错误提示得知我的错误类型为第一种。

    # tar -zxvf mrtg-2.17.7.tar.gz
    # cd mrtg-2.17.7
    # ./configure --prefix=/home/Lifangping/Soft/mrtg --with-gd-lib=/home/Lifangping/Soft/gd/lib --with-gd-inc=/home/Lifangping/Soft/gd/include
    # make
    make install
    

    成功安装,未出现任何错误,安装成功。
    注释:–with-gd-lib:指定到gd库下的lib目录,–with-gd-inc:指定到gd库下的include目录(包含gd.h文件的目录)。

  4. 修改mrtg的配置文件(监控eth0网卡,cpu运行状态,磁盘空间以及内存的使用率)
    在mrtg的安装目录下(/home/Lifangping/Soft/mrtg)
    创建etc目录,并编辑mrtg.cfg文件

    # mkdir etc
    # cd etc
    # vi mrtg.cfg
    

    mrtg.cfg的内容为:

    ######################################################################
    # Multi Router Traffic Grapher -- Example Configuration File
    ######################################################################
    
    # Minimal mrtg.cfg
    #---------------------
    
    HtmlDir:/var/www/mrtg
    ImageDir:/var/www/mrtg
    logDir:/var/www/mrtg
    ThreshDir:/var/www/mrtg
    
    ######################################################################
    # 监控eth0网卡(连接公网的)
    ######################################################################
    Target[eth0_lan]:/127.0.0.1:public@localhost:
    Options[eth0_lan]:growright
    Directory[eth0_lan]:eth0
    MaxBytes[eth0_lan]:100000000
    Kmg[eth0_lan]:K,M,G
    YLegend[eth0_lan]:Bytes per Second
    ShortLegend[eth0_lan]:B/s
    Legend1[eth0_lan]:每秒流入量(单位 Bytes)
    Legend2[eth0_lan]:每秒流入量(单位 Bytes)
    Title[eth0_lan]:eth0网络流量[流入+流出]
    PageTop[eth0_lan]:<h1>eth0网络流量[流入+流出]</h1>
    ######################################################################
    # 监控CPU负载[用户+闲置]
    ######################################################################
    Target[cpuload]:.1.3.6.1.4.1.2021.11.50.0&.1.3.6.1.4.1.2021.11.53.0:public@localhost:
    Options[cpuload]:nopercent,growright
    Directory[cpuload]:cpu
    MaxBytes[cpuload]:100
    Unscaled[cpuload]:dwym
    YLegend[cpuload]:CPU Utilization
    ShortLegend[cpuload]:%
    Legend1[cpuload]:CPU用户负载(%)
    Legend2[cpuload]:CPU闲置 (%)
    Title[cpuload]:CPU负载[用户+闲置]
    PageTop[cpuload]:<h1>CPU负载[用户+闲置]</h1>
    ######################################################################
    # 监控内存使用量[Mem+Swap]
    ######################################################################
    Target[memory]:.1.3.6.1.4.1.2021.11.50.0&.1.3.6.1.4.1.2021.11.53.0:public@localhost:
    Options[memory]:gauge,growright
    Directory[memory]:mem
    MaxBytes1[memory]:1915248
    MaxBytes2[memory]:2097148
    Kmg[memory]:K,M,G
    Kilo[memory]:1024
    Unscaled[memory]:dwym
    YLegend[memory]:Memory Bytes
    ShortLegend[memory]:B
    Legend1[memory]:已用Mem(Bytes)
    Legend2[memory]:已用Swap(Bytes)
    Title[memory]:内存使用量[Mem+Swap]
    PageTop[memory]:<h1>内存使用量[Mem+Swap]</h1>
    ######################################################################
    # 监控磁盘空间[根分区+boot分区]
    ######################################################################
    Target[disk]:.1.3.6.1.4.1.2021.9.1.8.1&.1.3.6.1.4.1.2021.9.1.8.2:public@localhost:
    Options[disk]:gauge,growright
    Directory[disk]:disk
    MaxBytes1[disk]:17938864
    MaxBytes2[disk]:487652
    Kmg[disk]:K,M,G
    Kilo[disk]:1024
    Unscaled[disk]:dwym
    YLegend[disk]:Disk Bytes
    ShortLegend[disk]:B
    Legend1[disk]:根分区已用空间
    Legend2[disk]:boot分区已用空间
    Title[disk]:磁盘空间[根分区+boot分区]
    PageTop[disk]:<h1>磁盘空间[根分区+boot分区]</h1>
    
  5. 添加定时任务
    系统的信息需要实时监控,所以需要mrtg定时生成图片,所以需要添加定时任务。在/etc/cron.d下创建定时任务,系统会自动执行定时任务。
    在/etc/cron.d目录下创建mrtg。

    # cd /etc/cron.d
    # vi mrtg
    #--文件内容如下
    */2 * * * * root LANG=C /home/Lifangping/Soft/mrtg/bin/mrtg /home/Lifangping/Soft/mrtg/etc/mrtg.cfg
    #指定服务器两分钟执行一次,指定配置文件。(这个不需要写在定时任务中,仅供注释)
    
  6. 由于mrtg运行前两次为错误,所以需要手动运行,以保证定时任务在运行过程中的正确执行。
    在命令行手动运行如下命令:

    # LANG=C /home/Lifangping/Soft/mrtg/bin/mrtg /home/Lifangping/Soft/mrtg/etc/mrtg.cfg
    

    运行三次,前两次为会报错,第三那次正常运行。
    一般在这里不会出现错误,但是我却出现了,
    错误1:提示服务器为开启snmp服务,(这个小错误困扰了我好一会,看了半天才发现是snmp服务没有开启,所以大家一定要仔细查看错误提示)
    在这里插入图片描述
    解决方法:开启snmp服务,我的snmp服务安装在之前的博客中记录过,没有安装的可以查看一下,linux安装snmp可以查看这里:linux安装snmp服务,以及常用的snmp指令

    # 运行snmp服务
    #  /home/Lifangping/Soft/snmp/sbin/snmpd -c /home/Lifangping/Soft/snmp/etc/snmpd.conf
    

    再次执行命令:

    # LANG=C /home/Lifangping/Soft/mrtg/bin/mrtg /home/Lifangping/Soft/mrtg/etc/mrtg.cfg
    

    错误成功解决,运行未报任何错误,由于mrtg.cfg的配置文件定义生成的图片路径为/var/www/mrtg下,此时该目录生成对应的状态图片。

  7. 通过indexmaker命令生成index首页。

     # /home/Lifangping/Soft/mrtg/bin/indexmaker --output /var/www/mrtg/index.html --title="李芳平Web网站监控" /home/Lifangping/Soft/mrtg/etc/mrtg.cfg
    

    注释:–output:指定index.html生成的路径;–title:指定index.html中title标题; 最后一个为指定的配置文件。

  8. 将项目部署在apache上,访问index.html,即可得到如下图:
    在这里插入图片描述
    每个点进去会有四张状态图,分别问每天、每周、每月、每年的运行状态
    在这里插入图片描述
    此时就可以实现对系统的运行状态进行实时监控啦!
    相关博文:linux(CentOS)下Mrtg的安装詳解
    还有好多博文帮助到我,在这里谢谢广大博主。

结论

对系统进行监控需要涉及好多,有系统安装snmp服务,并安装mrtg软件,通过定时任务,每个两分钟生成系统各个服务的运行状态,并通过Apache服务显示。这每一步的环节都会出现各式各样的问题,别气馁,多查资料,平静心态,总能够解决,我也是被坑了好多次,现在想想都想哭了(开玩笑了啦)。好了,就分享到这里了,拜拜。

如果您对这个文章有任何异议,那么请在文章评论处写上你的评论。
愿大家都能在编程这条路,越走越远。

如果你很忙,除了你这真的很重要之外,更可能的原因是:你很弱。 (这里我又想说的:我很弱,所以我忙的学知识,涨技能,然后成为一个真正的忙人)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值