安装snmpd和mrtg
#yum install mrtg net-snmp net-snmp-utils
配置SNMP,配置完成后重启snmpd (因为网络接口转而采用了脚本采集,所以snmp就不配置了)
com2sec notConfigUser localhost public
group notConfigGroup v1 notConfigUser
group notConfigGroup v2c notConfigUser
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
access notConfigGroup "" any noauth exact all all none
view all included .1 80
syslocation Unknown (edit /etc/snmp/snmpd.conf)
syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)
因为功能需求,我们再编写三个插件脚本,分别监视eth0、cpu和内存。
监视eth接口脚本内容
#!/bin/bash
# (c) 2002 Denis Kolisnichenko
# Usage: /usr/bin/count iface
/bin/grep "$1" /proc/net/dev | /bin/awk -F ":" '{ print $2 }' | /bin/awk '{ print $1 "\n" $9 }'
UPTIME=`/usr/bin/uptime | /bin/awk -F " " '{ print $3 }'`
echo $UPTIME
echo $1
监视CPU脚本内容
#!/usr/bin/perl
system ("/usr/bin/sar -u 1 3|grep Average >cpu_info_file");
open (CPUINFO,"cpu_info_file");
@cpuinfo=<CPUINFO>;
close (CPUINFO);
foreach $line(@cpuinfo) {
@cpustatus=split(/ +/,$line);
}
$cpuused=$cpustatus[2]+$cpustatus[4];
$cpuidle=$cpustatus[5];
print "$cpuused\n";
print "$cpuidle";
system ("uptime");
system ("uname -n");
监视MEM脚本内容
#!/usr/bin/perl
system ("/usr/bin/free -m | grep Mem >mem_info_file");
open (MEMINFO,"mem_info_file");
@meminfo=<MEMINFO>;
close (MEMINFO);
foreach $line(@meminfo) {
@memstatus=split(/ +/,$line);
}
$memused=$memstatus[2];
$memtotal=$memstatus[1];
print "$memused\n";
print "$memtotal\n";
system ("uptime");
system ("uname -n");
配置/etc/mrtg/mrtg.cfg
EnableIPv6: no
WorkDir: /var/www/mrtg/
# eth0 monitor
Target[eth0]: `/etc/mrtg/bin/count.sh eth0`
Options[eth0]: nopercent,growright,bits
Title[eth0]: Server eth0 Traffic
PageTop[eth0]: <h1>Eth0 - interface</h1>
MaxBytes[eth0]: 99999999
kilo[eth0]: 1024
YLegend[eth0]: bits per second
ShortLegend[eth0]: bit/s
LegendO[eth0]: out:
LegendI[eth0]: in :
# CPU monitor
Target[localhost_cpu]: `/etc/mrtg/bin/mrtg.cpu`
Ytics[localhost_cpu]: 10
YticsFactor[localhost_cpu]: 10
MaxBytes[localhost_cpu]:100
Title[localhost_cpu]:CPU State
PageTop[localhost_cpu]:<H1>Server CPU </H1>
ShortLegend[localhost_cpu]: %
YLegend[localhost_cpu]: CPU (%)
Legend1[localhost_cpu]: Used
Legend2[localhost_cpu]: Total
LegendI[localhost_cpu]: CPU Used
LegendO[localhost_cpu]: CPU IDEL
Options[localhost_cpu]: growright,gauge,nopercent
# Mem monitor
Target[localhost_mem]: `/etc/mrtg/bin/mrtg.mem`
Ytics[localhost_mem]:5
YticsFactor[localhost_mem]: 1
MaxBytes[localhost_mem]: 1000
Title[localhost_mem]:Memory State of TestServer
PageTop[localhost_mem]:<H1>Server Mem </H1>
ShortLegend[localhost_mem]: B
kmg[localhost_mem]: M
YLegend[localhost_mem]: Memory Usage
Legend1[localhost_mem]: Used
Legend2[localhost_mem]: Total
LegendI[localhost_mem]: Used
LegendO[localhost_mem]: Total
Options[localhost_mem]: growright,gauge,nopercent
生成index.html
#indexmaker --output=/var/www/mrtg/index.html /etc/mrtg/mrtg.cfg
添加crontab计划
#cat /etc/cron.d/mrtg
*/5 * * * * root LANG=C LC_ALL=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
注:可以先运行一遍该命令,立即生成数据
/usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok
修改httpd的配置中mrtg的网址Allow from 部分
访问MRTG
http://youripaddres/mrtg/
引用
参考资料:
http://pm4u.narod.ru/en/mrtg.htm
http://www.php-oa.com/2009/11/01/centos-rhel-mrtg.html
http://oss.oetiker.ch/mrtg/doc/mrtg-reference.en.html
http://hi.baidu.com/wangli19880718/blog/item/b0cd9c514c47dd190cf3e3df.html
分享到:
相关推荐
网络服务器搭建、配置与管理——Linux(RHEL8CentOS8)(微课版)(第4版)_PPT课件.zip
Linux网络操作系统项目教程(RHEL7.4CentOS7.4)(第3版)》-PPT课件.rar
《Linux网络操作系统项目教程(RHEL7.4 CentOS7.4)(第3版)-实训指导书》是一本专门针对Linux系统,特别是Red Hat Enterprise Linux 7.4 (RHEL7.4) 和 CentOS 7.4 的实践教程。本书旨在帮助读者深入理解Linux网络操作...
描述中的内容与标题相同,进一步确认了这是一个针对特定硬件平台(rr268x可能代表某种定制或特定的硬件配置)的Linux发行版,具有RHEL和CentOS的特性。 标签“rr268x rhel”则强调了这个压缩包与这两种元素的关系,...
本教程以Red Hat Enterprise Linux 7.4(RHEL7.4)和CentOS 7.4这两个广泛使用的Linux发行版为平台,详细介绍了Linux系统的安装、配置、管理和网络服务的实现。 1. **Linux基础知识**:首先,教程会介绍Linux的历史...
56796-Linux网络操作系统项目教程(RHEL 8CentOS 8)(微课版)(第4版)-分章节课后习题答案.rar
RHEL基于收费订阅模式,提供安全更新和技术支持,而CentOS则是RHEL的一个免费开源克隆版本,旨在提供与RHEL高度兼容的环境。当用户希望从RHEL7转向开源且无需付费的解决方案时,将RHEL7的yum源替换为CentOS的yum源是...
在Linux世界中,RHEL(Red Hat Enterprise Linux)和CentOS是两个非常流行的服务器操作系统,它们基于相同的源代码,但RHEL提供商业支持,而CentOS则是社区支持的免费版本。由于RHEL和CentOS之间的紧密关系,许多...
Linux网络操作系统项目教程(RHEL 8CentOS 8)(微课版)(第4版)-分章节课后习题答案.rar
通过以上步骤,你成功地将RHEL5的YUM更新源配置为CentOS的镜像站点,从而可以享受到与RHEL相似的软件更新服务。这个过程对于保持系统的安全性、稳定性和兼容性至关重要,因为及时的更新可以修复已知的安全漏洞和错误...
"openssh9.0p1 for centos6 or rhel6 rpm包,可直接升级,无需源码编译" 这个标题表明我们有一个针对CentOS 6或RHEL 6操作系统的OpenSSH 9.0p1版本的RPM包。RPM包是Red Hat Linux Package Manager的简称,它是一种...
### RHEL、Centos、Fedora 第三方软件库配置详解 #### 一、准备工作:安装 yum-priorities 插件 对于 RHEL、Centos 和 Fedora 的用户来说,使用第三方软件库是扩展系统功能和安装特定软件的重要手段之一。为了更好...
本资源摘要信息涵盖了Linux网络操作系统的项目教程,包括RHEL8和CentOS8两个版本,微课版。课后习题答案提供了丰富的知识点,涵盖了Linux操作系统的基础知识、网络配置、文件系统、用户管理、权限管理、进程管理、...
### 在RHEL/CentOS 5上配置Oracle 10g自动启动的详细步骤 本文将详细介绍如何在RHEL/CentOS 5操作系统上配置Oracle 10g数据库的自动启动功能。通过以下步骤,我们可以确保Oracle服务在系统启动时能够自动运行。 ##...
Linux网络操作系统项目教程(RHEL7.4CentOS7.4)(第3版)-教学大纲.zip
cpuid for RHEL6系列Linux
通过上述步骤,我们成功地在 RHEL6 系统中配置并使用了 CentOS6 的 yum 源。这种方式不仅可以节省成本,还能充分利用 CentOS 庞大的软件仓库资源。对于开发者和系统管理员来说,这是一种非常实用的方法,特别是在...
Linux网络操作系统项目教程(RHEL7.4 CentOS 7.4)(第3版)实训指导书 本教程旨在指导读者学习 Linux 操作系统的基本概念和实践操作,包括安装 CentOS 7 操作系统、基本网络配置、文件和目录管理、系统信息查看、进程...
最新rhel7 centos7 安装向导
"RHEL6 配置阿里云网络源" RHEL6 配置阿里云网络源是指在 Red Hat Enterprise Linux 6(RHEL6)操作系统中,使用阿里云的网络源来代替默认的网络源,以便更快速、稳定地获取软件包和更新。下面是相关知识点的详细...