首页 > 代码库 > zabbix源码安装,自定义监控205的用户数,有触发器但没有邮件报警

zabbix源码安装,自定义监控205的用户数,有触发器但没有邮件报警

zabbix源码安装,自定义监控205的用户数,有触发器但没有邮件报警

监控端配置:(192.168.4.5)

1基础环境:(实验环境可以关闭防火墙,但生产环境不能关闭,否则不安全,要设置相应规则)

[root@localhost桌面]# /etc/init.d/iptables stop

[root@localhost桌面]# setenforce 0

2搭建lamp平台,(它运行在lamp平台上)

[root@localhost桌面]# yum -y install httpd 

[root@localhost桌面]# yum -y install php-*

[root@localhost桌面]# yum -y install mysql mysql-server

[root@localhost桌面]# /etc/init.d/httpd restart

[root@localhost桌面]# /etc/init.d/mysqld restart

3安装snmp协议       //用该协议收集信息

[root@localhost桌面]# yum  -y  install  net-snmp net-snmp-utils  net-snmp-*

4安装编译工具gcc和 gcc-c++

[root@localhost桌面]# yum -y install gcc gcc-c++

5安装zabbix依赖包

[root@localhost桌面]# yum  -y  install mysql-devel

[root@localhost桌面]# yum  -y  install libcurl-devel

6安装zabbix源码包

[root@localhost桌面]# ls               //下面是插件功能包和zabbix源码包,网上下载

php-bcmath-5.3.3-22.el6.x86_64.rpm    zabbix-2.2.1.tar.gz

php-mbstring-5.3.3-22.el6.x86_64.rpm

[root@localhost桌面]# tar -zxf zabbix-2.2.1.tar.gz

[root@localhost桌面]# cd zabbix-2.2.1

[root@localhostzabbix-2.2.1]# useradd  zabbix

[root@localhostzabbix-2.2.1]# ls

技术分享

[root@localhostzabbix-2.2.1]# ./configure --prefix=/usr/local/zabbix --enable-server  \

--enable-proxy--enable-agent --with-mysql --with-net-snmp --with-libcurl  \

--enable-server  \

--enable-proxy  \

--with-mysql  \

--with-net-snmp  \

--with-libcurl

回车即可。

//注意:

--enable-server           //安装zabbix  server

--enable-proxy            //安装zabbix  proxy

--enable-agent            //安装zabbix  agent     被监控的机器需要配置,启动agent服务

--with-mysql              //支持mysql数据库服务器

--with-net-snmp           //支持snmp

--with-libcurl            //支持curl,用于web监控

上面可以根据需要来进行选择,被监控的机器需要配置agent,启动agent服务,此处为了能够设置监控本机,所以本机也安装了agent,如果不监控本机,也可以不安装agent,此外proxy也可根据需要选择是否要安装。

[root@localhostzabbix-2.2.1]# make && make install

7创建启动脚本:(解压后的就自带有,cp一下即可)

注意:zabbix_server能成功启动服务并且能监听11051端口的条件是:1)mysql 不设置密码,2)要等恢复zabbix模板到数据库后再启动zabbix_server服务,否则缺失一个条件,zabbix_server服务虽然能起来,但11051端口也不能正常监听,配置的zabbix页面上就会显示:zabbix  server is not running。

[root@localhostzabbix-2.2.1]# cp /root/桌面/zabbix-2.2.1/misc/init.d/fedora/core/zabbix_*/etc/init.d/

[root@localhostzabbix-2.2.1]# chmod +x /etc/init.d/zabbix_server

[root@localhostzabbix-2.2.1]# chmod +x /etc/init.d/zabbix_agentd

[root@localhostzabbix-2.2.1]# vim /etc/init.d/zabbix_server

BASEDIR=/usr/local/zabbix     //修改一下路径,指定安装的路径,才能启动,等恢复模板后再启动,现//在也能启动,但是进程启动起来,但不能正常监听11051端口。

或者:sed -i‘s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g‘ /etc/init.d/zabbix_server

[root@localhostzabbix-2.2.1]# vim /etc/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix      //修改一下路径,指定安装的路径,才能启动服务,  此处是为了监控//本机,才安装了agent,如果不监控本机,就不用安装agent

或者:sed -i‘s#BASEDIR=/usr/local#BASEDIR=/usr/local/zabbix#g‘ /etc/init.d/zabbix_agentd

 

8添加为开机自启动或不自启动

[root@localhostzabbix-2.2.1]# chkconfig  --add  zabbix_server

[root@localhostzabbix-2.2.1]# chkconfig  --add  zabbix_agentd

[root@localhostzabbix-2.2.1]# chkconfig zabbix_server  on

[root@localhostzabbix-2.2.1]# chkconfig zabbix_agentd  on

9登录mysql数据库,通过备份文件,恢复模板配置(解压后的zabbix就自带有了)

[root@localhostzabbix-2.2.1]# ls /root/桌面/zabbix-2.2.1/database/mysql/

data.sql  images.sql schema.sql

[root@localhostzabbix-2.2.1]# cd /root/桌面/zabbix-2.2.1/database/mysql/

[root@localhostmysql]# ls

data.sql  images.sql schema.sql//恢复按顺序恢复,可用root用户无密码恢复,也可用授权用户恢复

[root@localhostmysql]# mysql   //数据库不能设置密码,否则会影响zabbix_server监听11051端口

mysql>create database zabbix default character set utf8;

mysql>grant all on zabbix.* to zabbix@"localhost" identified by"zbxpass";

mysql>quit

[root@localhostmysql]# mysql -uzabbix -pzbxpass  //测试,能通过授权用户登录成功

mysql>quit

[root@localhostmysql]# mysql  zabbix < schema.sql

[root@localhostmysql]# mysql  zabbix < images.sql

[root@localhostmysql]# mysql  zabbix < data.sql

[root@localhostmysql]# mysql

mysql>use zabbix;

mysql>show tables;                 //查看会有模板表

+-----------------------+

|Tables_in_zabbix      |

+-----------------------+

|acknowledges          |

|actions               |

|alerts                |

|application_template

……………………………

mysql>quit

10 拷贝zabbix的web页面或称php页面到/var/www/html/zabbix  (解压后就自动有了)

[root@localhostmysql]# cd /root/桌面/zabbix-2.2.1/frontends/

[root@localhostfrontends]# ls

php

[root@localhostfrontends]# ls php/

技术分享

[root@localhostfrontends]# cp -r php/ /var/www/html/zabbix

[root@localhostfrontends]# chown -R apache:apache /var/www/html/zabbix/

[root@localhostfrontends]# /etc/init.d/httpd restart

 

 

 

 

 

 

 

11 通过访问浏览器访问zabbix的web页面后根据提示安装zabbix 

1)自己访问自己安装http://localhost/zabbix,也可用他机访问自己进行安装

[root@localhostfrontends]# firefox

技术分享

点击next,如下图:

技术分享

2)根据报错信息修改php程序配置,使之达到要求的参数,且安装插件功能,然后重启httpd和zabbix_server

修改php程序配置中所需参数:

[root@localhostfrontends]# vim /etc/php.ini

date.timezone=Asia/Shanghai

post_max_size= 16M

max_execution_time= 300

max_input_time= 300

或者:

echo"date.timezone =Asia/Shanghai" >> /etc/php.ini

sed-i ‘s#post_max_size = 8M#post_max_size = 16M#g‘ /etc/php.ini

sed-i ‘s#max_execution_time = 30#max_execution_time = 300#g‘ /etc/php.ini

sed-i ‘s#max_input_time = 60#max_input_time = 300#g‘ /etc/php.ini

 

安装插件功能:

[root@localhostfrontends]# cd /root/桌面/

[root@localhost桌面]# ls

php-bcmath-5.3.3-22.el6.x86_64.rpm    zabbix-2.2.1

php-mbstring-5.3.3-22.el6.x86_64.rpm  zabbix-2.2.1.tar.gz

[root@localhost桌面]# rpm -ivh --nodeps php-bcmath-5.3.3-22.el6.x86_64.rpm

[root@localhost桌面]# rpm -ivh --nodeps php-mbstring-5.3.3-22.el6.x86_64.rpm

重启httpd和zabbix_server:

[root@localhost桌面]# /etc/init.d/httpd restart

[root@localhost桌面]# /etc/init.d/zabbix_server restart

[root@localhost桌面]# /etc/init.d/zabbix_agentd restart

查看是否监听端口:

[root@localhost桌面]# netstat -anptu |grep zabbix

tcp    0   0 0.0.0.0:10050     0.0.0.0:*              LISTEN      26228/zabbix_agentd

tcp    0   0 0.0.0.0:10051     0.0.0.0:*              LISTEN      12262/zabbix_server

3)重新刷新页面访问zabbix,如下图即可:

技术分享

点击next,如下图:

技术分享

 

 

4)指定mysql数据库的那个机器,此处是本机,指定数据库的名字(zabbix),填写用哪个用户和密码来连接登录数据库,此处用授权用户和密码(zabbix,zbxpass),点击test connection测试一下,如下图:

技术分享

测试ok才可,点击next,如下图:

技术分享

 

 

 

 

 

 

 

5)填写zabbix监控端(zabbix_server端)服务器的ip地址:192.168.4.5(也就是本机),点击next,如下图:

技术分享

点击next,如下图:

技术分享

 

 

 

 

点击finish,如下图:

技术分享

6)输入默认的用户名和密码,(用户名默认是:admin,密码默认是:zabbix,和之前设置的授权用户密码不冲突),点击sign in登录到zabbix页面,如下图:

技术分享

 

 

 

 

7)改成中文页面:点击administration——点击users——右上角类型选择users,如下图:

技术分享

点击admin,如下图:

技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

选择中文,点击save,如下图:

技术分享

刷新一下页面就可以变成中文了,如下图:

技术分享

 

 

 

 

 

 

 

 

 

 

 

 

 

被监控端配置:(192.168.4.205)

在远端机器192.168.4.205上启动zabbix_agentd服务:

[root@localhost 桌面]# ls

zabbix-2.2.1.tar.gz

[root@localhost 桌面]# useradd -s /sbin/nologin zabbix

[root@localhost 桌面]# yum -y install gcc gcc-c++

[root@localhost 桌面]# tar -zxf zabbix-2.2.1.tar.gz

[root@localhost 桌面]# ls

zabbix-2.2.1  zabbix-2.2.1.tar.gz

[root@localhost 桌面]# cd zabbix-2.2.1

[root@localhost zabbix-2.2.1]# ls

aclocal.m4  compile      configure.in  include      Makefile.in  README

AUTHORS     conf          COPYING       INSTALL      man          src

bin         config.guess  database     install-sh   misc         upgrades

build       config.sub    depcomp       m4           missing

ChangeLog   configure    frontends     Makefile.am  NEWS

[root@localhost zabbix-2.2.1]#./configure --prefix=/usr/local/zabbix --enable-agent

[root@localhost zabbix-2.2.1]# make&& make install

[root@localhost zabbix-2.2.1]# ls/usr/local/zabbix/

bin etc  lib  sbin share

[root@localhost zabbix-2.2.1]# ls/root/桌面/zabbix-2.2.1/misc/init.d/fedora/core/

zabbix_agentd  zabbix_server

[root@localhost zabbix-2.2.1]#

cp /root/桌面/zabbix-2.2.1/misc/init.d/fedora/core/zabbix_agentd/etc/init.d/

[root@localhost zabbix-2.2.1]# chmod +x/etc/init.d/zabbix_agentd

[root@localhost zabbix-2.2.1]#chkconfig --add zabbix_agentd

[root@localhost zabbix-2.2.1]#chkconfig zabbix_agentd on

[root@localhost zabbix-2.2.1]# vim/etc/init.d/zabbix_agentd

BASEDIR=/usr/local/zabbix

wq

[root@localhost zabbix-2.2.1]#/etc/init.d/zabbix_agentd start

在远端机器192.168.4.205上配置允许谁来监控自己,指定监控服务器IP,指定自己的主机名:

[root@localhost zabbix-2.2.1]# vim/usr/local/zabbix/etc/zabbix_agentd.conf

Server=127.0.0.1,192.168.4.5      //逗号后跟监控服务器的IP

ServerActive=192.168.4.5:10051   //指定监控服务器IP和端口

Hostname=client205              //自己的主机名,zabbix_server机器必须能解析才行

wq

[root@localhost zabbix-2.2.1]#/etc/init.d/zabbix_agentd restart

[root@localhost zabbix-2.2.1]# hostnameclient205

 

自定义监控项 :监控192.168.4.205上的用户数

在被监控端192.168.4.205上配置:(在被监控端,定义监控命令,允许被监控)

[root@localhost zabbix-2.2.1]# vim  /usr/local/zabbix/etc/zabbix_agentd.conf

UnsafeUserParameters=1                             启用允许自定义命令

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/  

wq

[root@localhost zabbix-2.2.1]# vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/mon.user.num

UserParameter=mon.user.num,wc  -l /etc/passwd  |  awk ‘{print $1}‘

wq  

注意:UserParameter=<键值>,命令 //(多个命令时候,命令之间用;隔开并且把最终的结果给键值调用)

[root@localhost zabbix-2.2.1]#/etc/init.d/zabbix_agentd restart

本机测试一下能不能使用上面定义的命令获取用户数:

[root@localhost zabbix-2.2.1]# cat/etc/passwd |wc -l

32

[root@localhost zabbix-2.2.1]#  /usr/local/zabbix/bin/zabbix_get  -s 127.0.0.1  -k mon.user.num

32

注意命令的使用格式:/usr/local/zabbix/bin/zabbix_get  -s IP  -k 键值

在192.168.4.5上:(监控端)

先测试能否通过客户端的键值来获取到数值:

[root@localhost 桌面]# /usr/local/zabbix/bin/zabbix_get -s  192.168.4.205  -k mon.user.num

32

再部署监控被监控机器的监控:

创建监控模板:点击组态——模板——创建模板——定义模板名——存档

技术分享

技术分享

技术分享

技术分享

在模板中添加创建应用集,添加存放各类监控项:在模板中点击应用集——创建应用集——命名——存档

技术分享

技术分享

技术分享

在模板的应用集里添加项:在模板的应用集里点击项目——创建监控项——监控项名称填写,键值填写(和被监控端的键值要一致),属于的应用集——存档。

技术分享

技术分享

 

 

技术分享

技术分享

在模板的应用集里创建图形,以显示图像曲线:在模板的应用集里点击图形——创建图形——图形命名——关联上需要显示图形的监控项,选择好合适需要的线条、颜色显示——存档。

技术分享

技术分享

技术分享

在模板的应用集里创建触发器:点击触发器——创建触发器——触发器命名,表达式添加(点击添加——选择监控项,并进行阀值设置——插入后生成表达式),描述,严重性级别颜色显示——存档。

技术分享

 

技术分享

技术分享

技术分享

技术分享创建被监控的主机,把监控端定义的模板让被监控端使用:点击组态——主机——创建主机——定义要监控的IP、可见名,再点击主机旁边的模板,关联好定义的模板——存档

技术分享

技术分享

技术分享

监视、展示数据:点击检测中——最新数据,会显示出刚才添加的要监控的数据,并显示监控的数据,点击检测中——图形,选择好图形名字后可以看到图形。

技术分享

技术分享

在192.168.4.205上增加用户到41个( >40个)

[root@client205 桌面]#for i in `seq 9`;do useradd shi$i;done

[root@localhostzabbix-2.2.1]# cat /etc/passwd |wc -l

41

到在192.168.4.5(zabbix监控系统)上看:

监测中——最新数据:

技术分享

监测中——图形:

技术分享

 

 

 

 

 

监测中——仪表盘:

技术分享

在192.168.4.205上减少到用户到39个( <40个)

[root@localhostzabbix-2.2.1]# sed -i ‘$d‘ /etc/passwd

[root@localhostzabbix-2.2.1]# sed -i ‘$d‘ /etc/passwd

[root@localhostzabbix-2.2.1]# cat /etc/passwd |wc -l

39

到在192.168.4.5(zabbix监控系统)上看:

监测中——最新数据:

技术分享

 

 

 

 

监测中——图形:

技术分享

监测中——仪表盘:

技术分享


zabbix源码安装,自定义监控205的用户数,有触发器但没有邮件报警