linux通过cacti监控apache通过飞信邮件进行报警

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

cacti

Cacti是通过snmpget来获取数据,使用RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好

Cacti架构

191609717.png

Cacti工作原理

191626368.png

一.安装前准备

Cacti是一套基于PHP,MySQL,SNMPRRDTool开发的网络流量监测图形分析工具,所有我们需要搭建lamp环境,这里我们采用yum安装

(1)本地yum

[root@localhost]#mount/dev/cdrom/mnt/cdrom/

mount:blockdevice/dev/cdromiswrite-protected,mountingread-only

[root@localhost]#vim/etc/yum.repos.d/rhel-debuginfo.repo

[rhel-server]

name=RedHatEnterpriseLinuxserver

baseurl=file:///mnt/cdrom/Server

enabled=1

gpgcheck=1

gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

.lamp搭建

[root@localhost~]#yuminstallhttpdphpphp-mysqlphp-snmpmysql-serverper-DBD-MySQLphp-pdonet-snmpnet-snmp-libsnet-snmp-utilsnet-snmp-develrubyruby-devel

(1)设置lamp能够开机启动

[root@localhost~]#servicehttpdstart

[root@localhost~]#chkconfighttpdon

[root@localhost~]#servicemysqldstart

[root@localhost~]#chkconfigmysqldon

(2)mysql创建账号并授权给cacati

[root@localhost~]#mysqladmin-uroot-ppassword'123'

[root@localhost~]#mysql-uroot-p

mysql>createdatabasecacti;

授权给cacati并赋予密码为cacti

mysql>grantallprivilegesoncacti.*tocacti@localhostidentifiedby'cacti';

mysql>grantallprivilegesoncacti.*tocacti@127.0.0.1identifiedby'cacti';

mysql>flushprivileges;

.安装rrdtool文件

[root@localhost~]#yumlocalinstallrrd*--nogpgcheck

/rrdtool-1.4.4-1.el5.wrl.i386

/rrdtool-perl-1.4.4-1.el5.wrl.i386

/rrdtool-ruby-1.4.4-1.el5.wrl.i386

(1)建立调度任务

[root@localhostcacti]#crontab-e

*/5****php/var/www/html/cacti/poller.php>/dev/null2>&1

(2)编辑cacti的控制脚本

[root@localhostcacti]#viminclude/config.php

26$database_type="mysql";

27$database_default="cacti";

28$database_hostname="localhost";

29$database_username="cacti";

30$database_password="cacti";

31$database_port="3306";

[root@localhostcacti]#servicehttpdrestart

(3)增加cacti账号密码

[root@localhostcacti]#useraddcacti

[root@localhostcacti]#passwdcacti

[root@localhostcacti]#chown-Rcactilogrra

(4)启动snmp对本主机进行监控

[root@localhost~]#servicesnmpdstart

[root@localhost~]#chkconfigsnmpdon

(5)对本地apache配置

[root@localhostcacti]#vim/etc/httpd/conf/httpd.conf

查看是否有这样的模块

176LoadModulestatus_modulemodules/mod_status.so

216#

217ExtendedStatusOn

902#

903<Location/server-status>

904SetHandlerserver-status

905Orderdeny,allow

906Allowfromall

907</Location>

[root@localhostcacti]#servicehttpdrestart

四.进入cactig管理界面

(1)通过192.168.2.10/cactil/进入cacti

192108101.png

(2)指明目录,如果是yum安装这些目录,会自动添加上去.

192130659.png

(3)输入账号admin,密码admin

192150355.png

(4)全局配置,版本V2版本,采用snmp

1).Create创建

NewGraphs添加新图形

(2).Management管理

GraphManagement图形管理。可以在此删除、复制图像,Cacti会自动创建图像。不过如果我们有特殊的需要,比如将几张图上的数据合并在一张图像上的话也可以在此手工新建图像;

GraphTrees图形树。在graphs界面里,图像或devices是树状结构显示的,可以在此设置树的结构;

DataSources数据源。记要用来管理rrd文件的,一般无需修改,Cacti会自己创建rrd文件;

Devices设备管理。这是我们最经常需要修改的地方,可以在此创建新的设备或修改其名称等信息。

(3).CollectionMethods数据收集方法,一般我们无需对这两项进行修改。(非常重要在下面的内容中进行详解)

DataQueries数据查询,

DataInputMethods数据输入方法

(4).Templates模板,这些模板可以导出、导入也可以自己编写,一般无需修改。

GraphTemplates图形模板

HostTemplates主机模板

192244247.png

(5)对本地主机监控,

192302848.png

(6)创建图形

192326383.png

(7)查看graphs查看本地监控

192351509.png

192405719.png

(8)windows进行监控需要安装snmp服务

192435992.png

(9)启动该服务,并对该服务添加团体名,设置允许192.168.2.10对其监控

192454318.png

(10)cacti设置创建windows图形树

192521986.png

(11)创建表格,windows进行监控端口161端口,版本version2

192541505.png

(12)添加windows监控服务

192559464.png

(13)windows添加到图形树

192612503.png

树里面查看已有数据

192633442.png

查看rrd,这时候发现增加几个表

192646114.png

(14)监控junpier防火墙

192657490.png

允许192.168.2.10,掩码255.255.255.255,掩码必须是四个255指明单个主机否则无法获得数据

192707554.png

cacti添加设备

192750311.png

创建图形树,由于没有junpier的图形树模板,我们需要对其创建或者网上下载相应的模板,这里我们可以利用现有的设备模板,复制更改,这里一定要把被监控设备的OID设备指明,否则我们将无法获得数据

192816802.png

(15)apache监控,首先我们需要导入apache的模板

ss_apache_stats.php需要导入到/var/www/html/cacti目录

cacti_host_template_webserver_-_apache.xmlapache模板

192829594.png

192842307.png

192900366.png

(16)增加插件管理器

[root@localhost~]#tar-zxvfcacti-plugin-0.8.7g-PA-v2.8.tar.gz

[root@localhostcacti-plugin-arch]#cp-r*/var/www/html/cacti/

cp:是否覆盖“/var/www/html/cacti/LICENSE?y

cp:是否覆盖“/var/www/html/cacti/README?Y

导入数据库

[root@localhostcacti]#mysql-uroot-pcacti<pa.sql

Enterpassword:

[root@localhostcacti]#patch-p1-N<cacti-plugin-0.8.7g-PA-v2.8.diff

[root@localhostcacti]#viminclude/config.php

42$url_path="/cacti/";

[root@localhostcacti]#servicehttpdrestart

拆解域值

[root@localhost~]#tar-zxvfthold-latest.tgz

[root@localhost~]#tar-zxvfmonitor-latest.tgz

[root@localhost~]#tar-zxvfsettings-latest.tgz

[root@localhost~]#mvmonitor-0.9//var/www/html/cacti/plugins/

[root@localhost~]#mvthold-0.41//var/www/html/cacti/plugins/

[root@localhost~]#mvsettings-0.6//var/www/html/cacti/plugins/

[root@localhostplugins]#mvmonitor-0.9/monitor

[root@localhostplugins]#mvsettings-0.6/settings

[root@localhostplugins]#mvthold-0.41/thold

192943502.png

增加插件

193011909.png

193044444.png

193108892.png

脚本(附件下载)

[root@localhost~]#mvsendmessage.sh/var/www/html/cacti/plugins/thold/

[root@localhost~]#mvsendsms.sh/var/www/html/cacti/plugins/thold/

[root@localhostthold]#chmoda+xsendmessage.sh

[root@localhostthold]#chmoda+xsendsms.sh

邮件于cacti的结合

[root@localhostthold]#vimthold_functions.php

559thold_mail($alert_emails,'',$subject,$msg,$file_array);

560exec("echo$subject>>/var/www/html/cacti/plugins/thold/alert.log");

561exec("sh/var/www/html/cacti/plugins/thold/sendmessage.sh");

193304104.png

windows进行监控,设置域值

193336273.png

设置域值,这里监控是进程数量

193356305.png

193422211.png

193451720.png

飞信控制

[root@localhost~]#tar-jxvffeition.tar.bz2

[root@localhost~]#cplinuxso_20101113/lib*/lib/标准路径下

[root@localhostthold]#cd/var/www/html/cacti/plugins/thold/

[root@localhost~]#mkdir/var/www/html/sendsms

[root@localhost~]#mvlinuxso_20101113//var/www/html/sendsms/linuxso

[root@localhost~]#

[root@localhostthold]#vimthold_functions.php

559thold_mail($alert_emails,'',$subject,$msg,$file_array);

560exec("echo$subject>>/var/www/html/cacti/plugins/thold/alert.log");

561exec("sh/var/www/html/cacti/plugins/thold/sendmessage.sh");

562exec("echo$subject>>/var/www/html/cacti/plugins/thold/alert.log");

563exec("sh/var/www/html/cacti/plugins/thold/sendsms.sh");

193801320.png

cacti实现飞信报警,邮件报警脚本,以及apache模板查看附件下载










本文转自 only223wym 51CTO博客,原文链接:http://blog.51cto.com/ymchaofeng/1317389,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
运维 Linux Apache
Linux Apache服务详解——Apache虚拟目录与禁止显示目录列表实战
Linux Apache服务详解——Apache虚拟目录与禁止显示目录列表实战
22 2
|
1月前
|
域名解析 Linux Apache
Linux Apache服务详解——虚拟网站主机功能实战
Linux Apache服务详解——虚拟网站主机功能实战
33 5
|
1月前
|
监控 网络协议 Shell
【Shell 命令集合 网络通讯 】Linux 监控和记录网络中ARP(Address Resolution Protocol)活动 arpwatch命令 使用指南
【Shell 命令集合 网络通讯 】Linux 监控和记录网络中ARP(Address Resolution Protocol)活动 arpwatch命令 使用指南
34 0
|
7天前
|
监控 Linux
linux监控指定进程
请注意,以上步骤提供了一种基本的方式来监控指定进程。根据你的需求,你可以选择使用不同的工具和参数来获取更详细的进程信息。
14 0
|
7天前
|
监控 Linux 网络安全
linux中启动rpc.rstat监控
请注意,rpc.rstatd服务通常用于收集远程系统的性能统计信息,例如CPU利用率、内存使用等。在使用rpc.rstatd服务之前,你应该确保了解其功能、用法和安全性,并根据需要进行适当的配置和调整。
8 0
|
15天前
|
监控 Java Linux
linux下监控java进程 实现自动重启服务
linux下监控java进程 实现自动重启服务
|
20天前
|
Ubuntu Linux Apache
linux下apache2更换目录
linux下apache2更换目录
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统设置 】Linux 管理和监控电源管理 apmd命令 使用指南
【Shell 命令集合 系统设置 】Linux 管理和监控电源管理 apmd命令 使用指南
28 0
|
1月前
|
Shell Linux 数据库
【Shell 命令集合 网络通讯 】Linux 更新邮件别名数据库 newaliases命令 使用指南
【Shell 命令集合 网络通讯 】Linux 更新邮件别名数据库 newaliases命令 使用指南
29 1
|
1月前
|
Shell Linux 网络安全
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
30 0