设为首页 收藏本站
查看: 9339|回复: 0

[经验分享] cacti监控与邮件报警

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-1-29 08:32:21 | 显示全部楼层 |阅读模式
cacti是使用PHP语言开发到性能流量检测工具。可以监控linux、windows、路由交换。
cacti本是web界面管理套件,因此需要搭建好LAMP平台。通过使用net-snmp工具来采集数据,并结合DDRtool轮巡。
1
[iyunv@localhost ~]# yum install http* mysql* php* -y



安装net-snmp-utils软件包
1
[iyunv@localhost ~]# yum install net-snmp-utils* net-snmp-* net-snmp-libs* lm_sensors* -y



安装rrdtool软件包。
1
2
3
4
[iyunv@localhost ~]# yum install -y pango*
[iyunv@localhost ~]# tar zxf rrdtool-1.4.5.tar.gz
[iyunv@localhost ~]# cd rrdtool-1.4.5
[iyunv@localhost rrdtool-1.4.5]# ./configure —prefix=/usr/local && make && make install



部署cacti,设置数据库链接。注意补丁放的目录,例如放在/root目录下
1
2
3
4
5
6
7
8
9
10
[iyunv@localhost ~]# tar zxf cacti-0.8.7g.tar.gz
[iyunv@localhost ~]# mv cacti-0.8.7g/ /var/www/html/cacti
[iyunv@localhost ~]# cd /var/www/html/cacti
[iyunv@localhost cacti]# patch -p1 -N < ~/data_source_deativate.patch
[iyunv@localhost cacti]# patch -p1 -N < ~/graph_list_view.patch
[iyunv@localhost cacti]# patch -p1 -N < ~/html_output.patch
[iyunv@localhost cacti]# patch -p1 -N < ~/ldap_group_authenication.patch
[iyunv@localhost cacti]# patch -p1 -N < ~/ldap_group_authenication.patch
[iyunv@localhost ~]# patch -p1 -N < ~/script_server_command_line_parse.patch
[iyunv@localhost cacti]# patch -p1 -N < ~/ping.patch



1
[iyunv@localhost cacti]# patch -p1 -N < ~/poller_interval.patch



添加一个用于读写检测数据到用户,runct。并调整子目录rra/和log/
1
2
3
[iyunv@localhost cacti]# useradd runct
[iyunv@localhost cacti]# chown -R root.root ./
[iyunv@localhost cacti]# chown -R runct.runct rra/ log/



建立数据库,表结构。
1
2
3
4
[iyunv@localhost cacti]# mysql -uroot
mysql > CREATE DATABASE cactidb DEFAULT CHARACTER SET utf8;
mysql > GRANT all ON cactidb.* TO ‘cactiuser’@’localhost’ IDENTIFIED BY ‘123456’;
mysql > quit;



调整cacti配置文件。位于源码目录中到include文件夹下到config.php
1
[iyunv@localhost cacti]# vim include/config.php



$database_type = "mysql";                //数据库类型
$database_default = "cactidb";            //数据库名称
$database_hostname = "localhost";        //数据库地址
$database_username = "cactiuser";    //授权用户
$database_password = "123456";        //授权密码
$database_port = "3306";                //端口
$config['url_path'] = "/";        //cacti源码相对于网站根目录的位置。
保存退出。
cacti初始化安装。
调整httpd配置
1
[iyunv@localhost cacti]# vim /etc/httpd/conf/httpd.conf



DocumentRoot "/var/www/html/cacti"        //cacti源码作为网站根目录
<Directory "/var/www/html/cacti">            //设置目录访问权限
        Options None
        AllowOverride None
        Order allow,deny
        Allow from all
</Directory>
DirectoryIndex index.php index.html index.html.var        //设置PHP首页为index
保存退出。
重启httpd服务
1
[iyunv@localhost cacti]# service httpd restart



在浏览器上访问本地IP进行安装,默认登录用户密码均为admin
wKiom1TI0MnCcuLIAAKRfPnPMEE489.jpg
wKioL1TI0ayxyX3GAAPHRaATRFs358.jpg





客户机配置(被控端——snmpd)
linux被控主机到配置,需要安装net-snmp,lm_sensors软件包。然后适当修改/etc/snmp/snmpd.conf文件,启动snmpd服务即可!
1
[iyunv@localhost ~]# vim /etc/snmp/snmpd.conf



找到并修改:
com2sec notConfigUser  172.16.208.130     public    //服务器IP和共同体名
access  notConfigGroup ""      any       noauth    exact  all none none
view all    included  .1                               80        //去掉注释
保存退出
1
[iyunv@localhost ~]# service snmpd start



window被控端配置
安装好SNMP服务。然后设置SNMP服务,启动并重新启动。
wKiom1TI0PawFBFKAAGaiLKtoHw406.jpg
wKioL1TI0dbQtHd1AAFyc4wVvb4579.jpg


Cacti的使用及插件
在cacti的web管理页面中
添加被控端:
Management——>Devices,右上角有Add,主机描述,地址,轮巡,共同体名等填写完整,create完成添加。

wKiom1TI0R_j0IJGAALRP4l70Go939.jpg

设置监控项目。
在刚才创建好的主机,页面下有木块可以添加。针对linux被控端可以应该在Associated Graph Templates添加Unix - Processes。

wKioL1TI0hGxy4EeAAC6ev71XGE838.jpg

生成监控图像:
Create——>New Graphs可以选择监控的主机,包括监控主机的设备。
添加图像到检测树。
wKioL1TI0jahpHSuAAMhkV-i5A4663.jpg Management——>Graph Trees,页面有个Default Tree,单击进去有Add添加!!

wKiom1TI0Z7zC9gjAAF-P5RWSYg639.jpg
定期采集检测树据。
需要使用PHP程序解析执行poller.php页面来采集数据,因此做成任务计划。
1
2
3
[iyunv@localhost ~]# su - runct
[runct@localhost ~]$ php /var/www/html/cacti/poller.php
[runct@localhost ~]$crontab -e



*/1 * * * * /usr/bin/php /var/www/html/cacti/poller.php &> /dev/null
保存退出
1
2
[runct@localhost ~]$ exit
[iyunv@localhost ~]# service crond start



等一会就可以看到结果!!

wKioL1TI0pSj4NRLAAPWEoD-nTw932.jpg
添加Monitor、Thold插件
安装PA补丁及monitor、thold插件包
1
2
3
4
[iyunv@localhost ~]# tar zxf cacti-plugin-0.8.7g-PA-v2.8.tar.gz
[iyunv@localhost ~]# mysql -u cactiuser -p cactidb < cacti-plugin-arch/pa.sql
[iyunv@localhost ~]# cd /var/www/html/cacti/
[iyunv@localhost cacti]# patch -p1 -N < ~/cacti-plugin-arch/cacti-plugin-0.8.7g-PA-v2.8.diff



安装monitor、thold插件。
1
2
3
4
5
6
[iyunv@localhost cacti]# cd /var/www/html/cacti/plugins
[iyunv@localhost plugins]# tar zxf /root/monitor-0.8.2.tar.gz -C /var/www/html/cacti/plugins/
[iyunv@localhost plugins]# tar zxf /root/setting-0.5.tar.gz -C /var/www/html/cacti/plugins/
[iyunv@localhost plugins]# tar zxf /root/thold-0.4.3.tar.gz -C /var/www/html/cacti/plugins/
[iyunv@localhost plugins]# mysql -u cactiuser -p cactidb < monitor/monitor.sql
[iyunv@localhost plugins]# mysql -u cactiuser -p cactidb < thold/thold.sql



在web界面上Utilities——>System Utilities,页面中的admin,里面将所有插件勾上。

wKioL1TI0qyiaVr3AAEuqbVh44o647.jpg
在Configuration——>Plugin Management把所有服务开启。

wKiom1TI0d2QnqozAAEDkDZocFE019.jpg
若在头部导航中只看到thold而没有monitor,则回到Utilities——>System Utilities,页面中的admin,里面将所有插件勾上。

wKioL1TI0tOiRRtlAAB35lQCl9c940.jpg
使用状态见识插件—Monitor
左侧导航栏Configuration——>Settings,页面上Misc,将View设为Tiles,如图:

wKiom1TI0hmT7uGsAAGj5mdmJuA184.jpg
这样,在monitor上的监控主机就好看多了!!

wKioL1TI0x7jm2GwAADIRIcYfnk456.jpg
使用阈值警告插件—Thold
左侧导航栏Configuration——>Settings,页面上Thresholds和Mail/DNS两项!!
设置如下图:
Thresholds
wKiom1TI0mWDUjQDAAEn0HWOFcw083.jpg
wKioL1TI00bCzKcKAAB6J_OOCaQ774.jpg
Mail/DNS:
wKiom1TI0p_yiOHdAAP9HPbOoKM363.jpg


SMTP地址解析可以用nslookup来获取。

wKioL1TI04zz7aEqAABqKqxDAZY489.jpg
可以用Send a Test Email测试发送邮件是否ok。

关联需要预警到检测项目:
在Templates——>Threshold Templates,页面中进行添加

例如添加内存监控:

Templates——Threshold Templates——Add——ucd/net-Memory-Free,mem_free,create。
Create——New Graphs,把监控的项选上,保存!!

头部导航:monitor——选择主机(如win2003),单击进入物理内存Physical Memory,右边有个小勾。
wKiom1TI0t-ibjsvAAH0CI_yTlI775.jpg
wKioL1TI08CTRvycAAKprIXut_c923.jpg
wKioL1TI08Gh7U88AAQWgjZtPRY066.jpg
一旦出发阈值,就会发送邮件警报!!
cacti的图形界面友好,而且数据采集统计精细。但报警功能相对与nagios来说较弱,而且轮巡报警时间为5分钟,若要实时则需要安装新插件,这也是和nagios不可比拟的。虽然nagios本身也是依赖插件,但其报警功能强大,因此工作环境上通常是cacti与nagios整合在一起。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-41630-1-1.html 上篇帖子: cacti获取华为9306交换cpu使用率的oid问题 下篇帖子: cacti在与nagios整合后可以根据nagios的数据绘图么 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表