#Cdp run 启用CDP

#snmp-server community cisco ro(只读) ;配置只读通信字符串为cisco

#snmp-server community secret rw(读写) ;配置读写通信字符串为secret

#snmp-server enable traps 允许路由器将所有类型SNMP Trap发送出去(网关SNMP TRAP)

#snmp-server host 192.168.0.254 rw ;配置网关工作站地址(可以接受snmp的Ip)

snmp-server trap-source fa0/1 将fa0/1接口的IP地址作为SNMP Trap的发送源地址

设置IP地址

int vlan1  配置ip

ip addr 192.168.0.253 255.255.255.0 添加一个IP地址

no shu    将接口打开

保存配置

copy run start 或者wr

配置交换机的目的是,将服务器端口的压力转接到交换机上.(不再实验步骤内)

3.安装SNMP

如果是监控某台服务器的网卡流量需要在其上安装SNMP

什么是SNMP?

SNMP(Simple Network Management Protocol,)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。

rpm -ivh net-snmp-5.3.2.2-5.el5.i386.rpm

生成配置文件:

由于生成mrtg配置文件默认带有网卡流量监控,需要snmp,所以首先需要修改下snmp的配置文件

vi /etc/snmp/snmpd.conf

将62行左右

access notConfigGroup "" any noauth exact systemview none none

修改为:

access notConfigGroup "" any noauth exact mib2 none none

将89行左右

view mib2   included  .iso.org.dod.internet.mgmt.mib-2 fc

注释打开

保存,重起snmpd

service snmpd restart

4.安装mrtg

什么是mrtg

rpm -ivh mrtg-*.rpm

mkdir /var/www/html/mrtg

生成配置文件

/usr/bin/cfgmaker --global "WorkDir: /var/www/html/mrtg"  --global "language: chinese" --global "Options[_]: growright,bits"  --show-op-down    --ifref=nr --ifdesc=descr  --output=/etc/mrtg/mrtg.cfg public@192.168.0.253

说明:--global参数表示后面的选项对后面指定的设备都是有效的(如果希望对多个设备进行监控时,该参数就会发生作用)。WorkDir用来指示mrtg的工作目录;icondir用来指定图标的目录;language表示指定生成HTML页面的语言;Options用来指定一些特定的选项。在Options设置中,growright表示时间增长的箭头方向向右;bits表示接口的带宽。对于常见的应用来说,默认Options配置就可以满足需求(如果想了解有那些选项,可以参看/usr/lib/mrtg2/MRTG_lib.pm文件)。此外,- -show-op-down表示显示down的接口;--ifref表示设备接口的标示;--ifdesc用于选择参数来描述接口。其中,ifref可以指定的参数为nr、ip、eth、descr和name;ifdesc可以指定的参数为nr、ip、eth、descr、name、type和alias。后面的--output的参数表示输出文件(缺省输出到屏幕);public@192.168.1.6中public表示Community串,一般交换机出厂设置为public;192.168.0.253表示监控网络交换机设备的IP地址。更详细的说明可以参考man cfgmaker文档。

制作首页

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

/usr/bin/mrtg /etc/mrtg/mrtg.cfg 运行这条命令会出现报错,提示你运行如下命令

env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg

运行三次, 前两次执行会出Warning.不用理会.

设置/etc/crontab文件

先检查/etc/cron.d目录下mrtg文件是否存在以下代码:

*/5 * * * * root /usr/bin/mrtg /etc/mrtg/mrtg.cfg --lock-file /var/lock/mrtg/mrtg_l --confcache-file /var/lib/mrtg/mrtg.ok

其中5是没五分钟刷新一次,可以设置成1

5.查看流量

http://你的地址/mrtg就可看到流量了.

6.常见错误

目录问题,看一下/etc/httpd/conf.d/mrtg.cfg有没有别名设置,转到了其他目录

修改

mv /etc/httpd/conf.d/mrtg.cfg /etc/httpd/conf.d/mrtg.cfg.bak

权限问题,看一下/etc/httpd/conf/httpd.conf下的

User apache

Group apache

7.测试

可以看到eth0的流量信息

生成自己的mrtg监控脚本。

以下是一个apache连接的例子,查看apache的连接数.

首先再/etc/mrtg/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]:

apache连接数

Target指的是mrtg从那里取画曲线的值,此处可以从snmp和脚本取值,如从脚本取值需注意,需要前后用`来指定脚本路径而不是' .

[]指这个配置段的名称,这里为apache_conn,届时会在mrtg的workdir里建立同名的目录

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

YLegend指再图标中纵向的名称

ShortLegend指在图标中数值后面所跟的单位

LegendI 传递过去的第一个值

LegendO 传递过去的第二个值

Title 网页title

Pagetop 网页显示名称

如上上面所写Target[apache_conn]: `/bin/mrtg.apa.pl`

自己在/bin建立mrtg.apa.pl

#!/usr/bin/perl

$hostname=`hostname`;

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

$apache_all_conn=`netstat -an|grep 192.168.0.x:80|wc -l`;

$apache_conn=`netstat -an|grep 192.168.0.x: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");

不要忘记给mrtf.apa.pl执行权限

chmod +x /bin/mrtf.apa.pl

以上脚本为perl编写,由于apache的连接可以使用netstat查看,所以我用里一个简单的shell命令组合来获取apache的总连接数和当前建立连接的连接数.

需要注意以下几点

1) 使用命令传递值给mrtg时,mrtg只能接受4个参数,真正用于画图的只有2个

2) 4个参数必须依次为 值1,值2,运行时间,主机名

3) 4个参数后不得有\n等换行符

4) 不要忘记把192.168.0.x改为你本机的ip

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

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

使用mrtg的indexmaker重生成index.html文件,否则你无法看到新加入的apache连接的监控.

/usr/bin/mrtg /etc/mrtg/mrtg-apache.cfg

使用mrtg命令传入数值,同样会报3次错,忽略即可

再打开浏览器,输入地址,应该可以看到首页除了网卡的流量外再下方会加入apache连接的图

认为增加一下apache连接数,使效果明显一些

ab -c10 -n10000

html网络流量监控,Mrtg 网络流量监控相关推荐

  1. zabbix监控linux网卡流量,Zabbix结合iptables监控网络流量

    在实际生产环境监控体系中,由于个别任务的需要对服务器中对外数据库连接的流量进行情况.为此我使用linux操作系统的iptables结合zabbix定时对网络中特定IP的流量情况进行采集,具体操作如下: ...

  2. Linux日常运维管理技巧(一)监控系统状态、监控网卡流量、监控IO性能、查看系统进程、查看网络状态、Linux下抓包tcpdump、Linux网络相关、DNS配置

    目录 监控系统状态 监控网卡流量 监控IO性能 查看系统进程 查看网络状态 Linux下抓包 Linux网络相关 监控系统状态 w/uptime查看系统负载 [root@zyshanlinux-01 ...

  3. python网络监控程序_python写的一个监控系统进程网络流量的程序

    python写的一个监控系统进程网络流量的程序,python2.7版本. 代码如下: import socket import struct import thread import threadin ...

  4. python流量监控,python监控历程网络流量

    python监控进程网络流量 rt,各位大哥,python2.7+有没有高效监控进程级网络IO的方法?不用pcap 我只需要知道固定时间间隔中,客户端软件与服务器有没有交互就可以了: 或者给我讲解一下 ...

  5. linux 监控网络出口流量,Linux下网络流量监控

    原标题:Linux下网络流量监控 Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发 网络数据使用 我生活在一个预付费的互联网环境中,大约每个月7GB流量.监视 ...

  6. 基于网络监控软件的流量、性能监控

    2019独角兽企业重金招聘Python工程师标准>>> 随着Internet技术的不断发展,网络中出现的不安全因素越来越多,网络管理及安全越来越为用户所重视,用户对网络的要求越来越高 ...

  7. Mrtg网络监控 实现步骤

    <span style="font-size:14px;"> ->收取oid的值来画图<- 一:网络管理概念解释:监督.组织和监控网络通信服务和信息处理所必 ...

  8. mrtg监控短信报警 linux,mrtg监控100M以上流量不准的解决办法

    mrtg监控100M以上流量不准的解决办法/usr/local/mrtg-2/bin/cfgmaker --global 'WorkDir: /var/www/html/mrtg/test' --gl ...

  9. Linux下用MRTG监控网络设备端口流量

    Linux下用mrtg监控网络设备端口流量 被监控设备必须支持snmp协议,因为mrtg就是通过snmp协议来获取该设备的端口流量信息.如何在一个网络设备上启用snmp协议呢? 在配置模式下执行如下命 ...

最新文章

  1. 实用线性代数和凸优化 Convex Optimization
  2. peewee flask pwiz 中使用模型 过一段时间报错 peewee.InterfaceError: (0, '') 的解决方式
  3. JQuery遍历控件的方法
  4. 用阿里云的免费SSL 证书让网站从HTTP换成HTTPS
  5. ajaxbootstrap
  6. 服务发现与健康监测框架Consul-DNS转发的应用
  7. oracle中orand使用,Postgres兼容Oracle研究——orafce调研
  8. JSon_零基础_005_将po(bean)对象转换为JSon格式的对象字符串,返回给界面
  9. 随笔(1)——慢性意识障碍患者的智慧诊疗和远程管理
  10. 令人震惊的电子邮件归档调查
  11. 大数据学习入门规划?
  12. Java多个PDF合成一个PDF的方法
  13. 分布式系统之paxos算法
  14. 计算机维护的工作周记,计算机维护实习周记
  15. matlab rgb三维直方图,MATLAB小技巧之十:利用MATLAB绘制三维彩色柱状图[转载]
  16. Unit 1: Packet Sniffing 1.1 Packet Sniffing Introduction to Packet Sniffing
  17. 微信聊天记录不小心被删了怎么办?看看如何恢复吧!
  18. CISP证书对个人求职有帮助吗?
  19. 大厂 Java 后端经典面试题:Redis 为什么这么快?
  20. 人和计算机比赛下棋结果,人机大战趣谈:会下棋的电脑 像人一样聪明

热门文章

  1. 微信电商收付通关于分账动账通知踩坑记录
  2. testbed系统测试
  3. VOCs在线监测系统安装部署步骤
  4. 【愚公系列】2022年04月 Python教学课程 63-DRF框架安装与配置
  5. 网关正式支持MQTT物联网通信协议,PLC到MQTT,一个网关即可
  6. 开源硬件3D打印机资源
  7. jav核心(十四):集合类型操作:Collection、List、Set;Map集合;Iterator迭代器
  8. 新版悬赏猫任务平台系统源码+已经去授权
  9. 嵌入式开发也可以用C++?
  10. 爱默生EC20系列PLC与组态软件的连接