admin管理员组

文章数量:1531741

2024年6月8日发(作者:)

使用树莓派实现网络监控系统

摘 要 本文分析了树莓派和 Cacti 的整体架构和工作原理,随后

给出了树莓派网络监控系统的实现方案,最后就Cacti的常用插件做了简要说

明。

随着信息产业的快速发展,信息技术已经在各行各业广泛应用,信息系统

已是各机关、单位或企业业务运营的必备条件。信息化基础设施如服务器、交

换机、路由器、防火墙等网络设备的运行状态对业务系统的正常运行至关重要。

利用树莓派(Raspberry Pi)搭配开源的Cacti网络监控软件,通过SNMP协议

对可管理的服务器和网络设备实施运行监控,采集设备实时运行数据,生成报

表供管理员分析监控系统运行状态,当设备运行数值异常时立即通知管理员,

使故障能及时得到处理。减少因设备故障导致的非正常停机时间,避免业务系

统长时间中断。

1 树莓派简介

树莓派是树莓派基金会开发的开放式嵌入式系统,外形只有信用卡大小,

却具有电脑的基本功能。它是以 ARM11处理器为核心的单板计算机,拥有256MB

或512MB内存,具有USB接口、快速以太网接口、SD插槽、HDMI输出接口。树

莓派小巧玲珑,能提供1080p全高清影像输出。在搭载基于Debian打造的

Raspian操作系统后,更拥有丰富的开源软件,也便于实行开发扩展。其性能

也能满足网络监控系统的需要。

2 Cacti网络监控系统简介

Cacti是一款开源的监控软件,它基于PHP、MySQL、SNMP和RRDTool,能

实现网络流量监控和图形分析功能。Cacti用PHP实现,其主要功能是用SNMP

协议获取数据,然后用RRDTool存储和更新数据,当用户需要查看数据时就用

RRTool生成图表呈现给用户。

Cacti网络监控系统主要有数据采集层、数据存储层和数据呈现层三部分。

(1)数据采集层:使用SNMP协议采集服务器、交换机、路由器、防火墙

等网络设备的状态信息。

(2)数据存储层:将采集到的网络状态信息进行处理,生成RRD文件,并

从文件取出相应数据绘制图像;使用MySQL数据库存储RRDTool绘图所需的信

息,包括RRA文件、插件信息、绘图模版的存储位置等。

(3)数据呈现层:基于Apache服务器,通过Web方式,为用户提供交互

界面,呈现所收集到的检测内容。

3 基于树莓派的网络监控系统的实现

基于树莓派的网络监控系统,实现收集服务器、交换机、路由器等网络设

备的运行状态参数;再对这些数据进行归纳总结,并根据统计结果绘制成图形呈

现在管理员面前;在出现设备运行故障时,能及时通知管理员介入处理。

基于树莓派的网络监控系统实现步骤和方法:

3.1 安装LAMP环境

(1)安装Raspian操作系统。在网站http://下载基于Debian

的Raspian系统发行版压缩包。将压缩包解压缩后得到的.img映像文件。在

Windows计算机下使用Win32DiskImager将.img映像文件写入SD卡。SD卡写

入成功后,插入到树莓派的SD卡插槽中,加电启动。第一次进入进行Raspian

操作系统还要进行必要的配置。如果以后需要修改系统配置可以输入命令sudo

raspi-config。由于Raspian映像文件是2GB的,故第一次启动树莓派后应使

用“expand_rootfs”扩展根分区以充分利用SD卡空间。

(2)安装Apache、MySQL和PHP。使用Raspian的默认软件源,通过apt-get

安装缺少的Apache、MySQL和PHP组件。

sudo apt-get update

sudo apt-get install apache2 php5 php5-mysql mysql-server

安装过程中APT包管理器会自动查找依赖包,并进行安装。在MySQL的安

装过程中,会提示输入MySQL的root密码。安装完毕,可以通过网络访问树莓

派的ip地址确认Apache和PHP已正确完成。

3.2 安装配置Cacti环境

使用软件源安装Cacti环境是比较简便的,只需要依次输入下列命令,按

提示操作即可成功安装Cacti到树莓派上。

sudo apt-get install rrdtool

sudo apt-get install snmp snmpd

sudo apt-get install cacti

安装Cacti包期间会提问Mysql的root密码,和cacti用户密码,并且选

择Web服务器类型为Apache2。安装成功就可以通过Web浏览器访问http:

//ip/cacti,继续按照提示信息完成配置,就完成了基于树莓派的网络监控系

统搭建。

4 其他的一些Cacti插件简介

Spine轮询引擎:Cacti默认的轮询程序性能较差,更换为Spine轮询引擎

可以提高性能。特别是在监控设备比较多的情况下,建议使用spine替代原有

的轮询程序,可以加速轮询的时间及图像生成时间。

Monitor插件:以图形方式显示设备状态,如果设备出现故障或宕机,它

会自动报警。

Setting插件:用于邮件报警,结合手机邮箱(如移动的139邮箱)可以

变相实现警报消息的短信提醒。

Thold 插件:用于设备异常预警、阀值报警,可以针对特定设置报警阈值,

如果监测到的参数值超过了阈值,则可以通过邮件向用户发出报警消息。

Mactrack 插件:可以查看交换机的端口信息,mac地址与ip地址对应关

系,ip网段的统计,以及网卡的制造商等信息。

Weathermap 插件:可以绘制网络拓扑图,并在绘制好的拓扑图上显示实时

流量,链路状态等信息。

5 结束语

使用树莓派硬件平台配合Cacti软件系统,实现对服务器、交换机、路由

器、防火墙等基于SNMP管理设备进行运行监控,使管理员及时掌握系统设备的

运行状态、发生故障时能及时得到处理。本系统成本低廉、适用设备广泛、扩

展性强,对于网络监控系统的实现是一个优秀的选择。

本文标签: 监控系统网络实现设备