Cacti整合Zabbix监控

前言:

由于公司现在很多业务都是使用cacti进行监控流量的,并且还有一些使用zabbix监控的项目,正好又有一个项目需要搭建Cacti+Zabbix进行综合监控,搭建完毕之后发现,Cacti较之以前有了不小的改进,所以就来写一写Cacti和Zabbix监控整合的文章,顺便说一下Cacti下的一些好用的插件。

环境:

Centos 6.4 X86_64

Cacti-0.8.8b

Zabbix-2.2

一、安装Cacti

1、安装开发包组和必要的开发包(注意:此次安装了Cacti和Zabbix必须的环境,所以包比较多,有些包需要EPEL源,如果没有配置EPEL源,请百度如何配置)

yum -y groupinstall "Development tools" "Server Platform Development"
yum -y install mysql mysql-server httpd php php-mysql php-xml php-gd php-bcmath php-mbstring net-snmp net-snmp-devel
yum -y install zlib libpng freetype libjpeg fontconfig gd libxml2 libxml2-devel libcurl libcurl-devel  rrdtool

2、下载cacti

wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz

3、安装cacti

#关闭iptables和SELINUX,避免出现问题
setenforce 0
sed -i 's/^SELINUX=.*$/SELINUX=disabled/' /etc/selinux/config
service iptables stop
chkconfig iptables off
#启动httpd和mysqld
service httpd start
service mysqld start
chkconfig httpd on
chkconfig mysqld on
#下载Cacti,解压文件到HTTP目录
wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz
tar -zxvf cacti-0.8.8b.tar.gz
mv cacti-0.8.8b /var/www/html/cacti
#配置Cacti数据库
mysql> create database cacti; 
mysql> use cacti ; 
mysql> source /var/www/html/cacti/cacti.sql;
mysql> grant all on cacti.* to cacti@localhost identified by ‘cacti’; 
mysql> flush privileges;  mysql> quit
#修Ccacti数据库配置文件
vi /var/www/html/cacti/include/config.php

$database_type = “mysql”; 
$database_default = “cacti”; 
$database_hostname = “localhost”; 
$database_username = “cacti”; 
$database_password = “cacti”; 
$database_port = “3306″; 

#添加cacti执行用户
useradd cacti
#修改cacti目录属主为apache
chown -R apache.apache /var/www/html/cacti
#另外还需要两个目录的所有者修改,以便使cacti有写权限:
chown -R cacti /var/www/html/cacti/rra
chown -R cacti /var/www/html/cacti/log
#添加计划任务,定时运行poller.php取回监控数据
vi /etc/crontab

*/1 * * * *  cacti /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1
#重新启动任务计划
service crond restart

4、访问页面http://ip/cacti,安装cacti

①点击Next继续

1

②全新安装

2

③确保所有的文件都可以被找到,点击Finish

3

登录系统,默认用户名admin,密码admin,登录之后需要修改密码。

4

二、安装Zabbix

关于安装zabbix,可以查看我之前的文章http://www.beyond362.com/2014/11/02/zabbix%E7%B3%BB%E5%88%97%E4%B9%8B%E5%85%A5%E9%97%A8%E4%BB%8B%E7%BB%8D%EF%BC%88%E4%B8%80%EF%BC%89/这里不再累述。

三、Cacti整合Zabbix

这是通过cacti的插件superlinks实现的,可以在Cacti界面中登录Zabbix并查看Zabbix监控的信息,总的来说还是蛮好用的。

Cacti监控插件http://docs.cacti.net/plugins,可惜的是现在Cacti的插件更新速度非常非常的慢,都是比较老的插件了,但也不乏一些特别好用的插件,superlinks就是其中之一。

wget http://docs.cacti.net/_media/plugin:superlinks-v1.4-2.tgz
mv plugin\:superlinks-v1.4-2.tgz  superlinks-v1.4-2.tgz
tar xf superlinks-v1.4-2.tgz  -C /var/www/html/cacti/plugins/

Cacti现在的版本安装插件好用多了,以前还需要修改配置文件,现在不需要修改了,直接可以使用。赞一个。需要注意一点的就是有些插件解压缩之后权限并不够,所以,需要确保插件目录权限为755

好了,使用吧,打开前台页面

【console】–>【Configuration】–>【Plugin Management】,点击【Actions】下的那个蓝色按钮,然后再点击一下向上的箭头,安装成功。

5

安装成功

6

配置superlinks

【console】–>【Configuration】–>【settings】–>【Misc】,默认即可,无需修改。

7

添加链接

【console】–>【Management】–>【External Links】–>【右上角Add】

8

我们要添加的是URL链接,所以选择第一项,如果你要添加一些网页文件连接,那么你需要把文件放到superlinks插件目录的content目录下。

9

Ok,点击【Save】保存看效果吧,点击进去试试看。【注意:建议使用chrome浏览器,使用其他浏览器可能会出现Zabbix显示不完整问题】

10

输入Zabbix用户名和密码,进行登录吧

11

怎么样,还是很酷的吧。

12

四、Cacti插件介绍

cacti发展到今天,已经出现了很多好用的插件,接下来就介绍下这些插件

monitor 监控主机状态

到cacti官网下载Monitor插件,解压到plugins目录,上文安装superlinks已经提到过,这里不再陈述。

使用:

【console】–>【Configuration】–>【settings】–>【Misc】–>【Monitor】

13

看一下显示效果吧,绿色代表主机正常,红色代表主机宕机,蓝色代表主机正在恢复

14

php-werthermap  气象图

很好用,想用好是比较废脑筋的,有兴趣的可以去看一下这个http://www.cactifans.org/cacti/192.html,讲的非常详细。我也上个业务上的图

15

realtime  以小时、分钟、秒为单位查看graph图形

很好用的一个以小时、分钟、秒为单位查看graph图形的插件,安装之后需要进行以下操作。

安装之后首先要做的是要创建一个目录,用来存放realtime的cache,目录随便建,只需要目录让apache用户有读写权即可,我一般创建在cacti目录下,名字叫cache

mkdir /var/www/html/cacti/cache -pv
chown -R apache.apache /var/www/html/cacti/cache

【console】–>【Configuration】–>【settings】–>【Misc】–>【Realtime Graphs】

16

接着,到前台页面看一下怎么使用的吧

17

OK,这就是这个插件的使用方法,有时候还是挺实用的。

18

settings 设置

superlinks 超链接 上文已经使用过

thold  报警插件

Very Important 插件,没有他,Cacti的实用性至少会下降一半,至少我不会再使用它。这是一个阀值监控报警的插件,可以根据当前系统状态是否超过阀值而进行报警,这样我们就不止能监控到主机是否存活了,还能监控主机性能。现在报警方式很多,邮件、短信、飞信、微信等多种方式,短信需要短信接口,飞信要用移动号码,微信需要公共微信号,那还是邮件吧。。。。

首先,我们需要配置邮件发送方式,确保邮件可以发送出去。

【console】–>【Configuration】–>【settings】–>【Mail / DNS】

19

20

邮件已经可以发送了,下一步配置一下阀值触发器。

【console】–>【Configuration】–>【settings】–>【Mail / DNS】

22

选项说明:【 Send Emails with Urgent Priority 】选项可以将邮件当紧急邮件发出,我一般都是勾选

接下来,进行下一步,添加报警邮件列表,这样我们可以很方便的将不同的主机报警发给不同的人,或者相同的主机报警发给很多人。


【console】–>【Management】–>【Notification Lists】–>【Add】

23

那就添加阀值测试一下报警功能吧

【console】–>【Management】–>【Thresholds】–>【Add】,选择本机的一个进程数来进行监控

21

配置报警阀值和报警邮件。

Cacti整合Zabbix监控

保存退出吧,从上图中,我们看到process进程数是142,而我们设置的阀值数是200,所以并不会报警,那为了报警,我们改变一下阀值数为100,再次保存。等一会我们就会发现报警了,并且收到邮件了。

Cacti整合Zabbix监控

Cacti整合Zabbix监控

赶紧修改阀值解除报警吧,不然每过一小时就有一封加急邮件哟~~

discovery  自动发现主机插件

额,这个插件说实话有点鸡肋,虽能提供一些自动发现主机的功能,但功能过于弱小,竟然还需要手动去添加发现的主机。。。。。。这TM的也能叫自动发现?但是对于没有使用过zabbix的用户来说,他还是不错的。说实话,他的Discovery Templates 我也没使用成功,可能是我打开的姿势不太对。

安装之后就会在Table那里自建一个选项卡,然后我们需要到【console】–>【Configuration】–>【settings】–>【Misc】–>【Discover】进行配置

Cacti整合Zabbix监控

当自动发现完成一轮之后,你就会发现这个,发现成功了,自己点击Add进行添加吧。自动发现之后别忘了关闭这个功能,很耗费资源的。

Cacti整合Zabbix监控

OK,就写这么多,其实还有一些插件比较好用,比如Syslog 日志插件,Aggregate流量汇总插件等等,需要的朋友可以自行去下载安装使用。

原创文章,作者:myb_sir,如若转载,请注明出处:http://www.178linux.com/1215

(2)
上一篇 2015-03-18 18:52
下一篇 2015-03-19 21:44

相关推荐

  • 文本编辑器vim概述与应用示例

    文本编辑器vim概述与应用示例 文本编辑器概述 vim编辑器是一种易用、功能强大的文本编辑器,可以基于三种不同的模式对文本进行编辑,包括编辑模式、输入模式和末行模式。 编辑模式 模式转换 i 表示在光标所在处插入 a 表示在光标后方插入 o 表示在光标所在处的下一行插入 O 表示在光标所在处的上一行插入 I 表示在光标所在行的行首插入 A 表示在光标所在行的…

    Linux干货 2017-08-06
  • LAMP部署之NFS共享网络存储

    LAMP部署之NFS共享网络存储 架构图: 说明:     当一个网站的访问量上来之后,一台WebServer服务器无法应付那么高的并发,需要横向扩展Web服务器数量,     当我们访问网页,向Web服务器请求资源时,资源主要分为静态资源和动态资源(程序处理),  &…

    Linux干货 2016-06-20
  • 权限(用户、特殊、ACL)

    root权限(id=0) root无论在什么情况下都有rw权限,但是是否拥有x权限,要分情况: 第一,文件所有者和所属组都无x权限,root也无x权限; 第二,文件所有者和所属组二者任何一个有x权限,root就有x权限。 用户得到的权限 匹配顺序:文件所有者——文件所属组——其他人(从左到右) 用户访问文件,一旦按次序匹配成功,其获得的权限就是匹配选项所对应…

    Linux干货 2017-05-30
  • linux中如何使用帮助

     在linux学习过程中,会遇到许多困难,尤其是一些命令掌握不牢固,不知道具体用法;或者是想要实现一些功能而不知道使用何种命令。这时求人不如求己,上网求助不如自己学会使用帮助,下面介绍几种linux帮助的用法。 1.what is +命令    执行这条命令可以显示命令的简短描述,让大家了解命令的基本功能。同时可以看到命令相关章…

    2017-07-23
  • 第五周

    1、简述rpm与yum命令的常见选项,并举例
    2、自建yum仓库,分别为网络源和本地源
    3、简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00
    4、简述sed常用操作命令,并举例

    Linux干货 2017-12-30
  • 马哥教育网络班20期-第四周课程作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。       cp -r /etc/skel /home/tuser1 | chmod -R g…

    Linux干货 2016-06-29

评论列表(3条)

  • stanley
    stanley 2015-03-19 21:34

    厉害厉害!非常浓厚的文档功底和治学态度,赞!

  • 雷神
    雷神 2015-03-20 08:54

    牛逼啊,总结的真好!赞一个

  • 追马
    追马 2015-03-20 08:55

    这种模式挺好,实现了可扩展性~