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

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

如果对运维课程感兴趣,可以在b站上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

监控端配置:(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@localhost zabbix-2.2.1]# useradd  zabbix

[root@localhost zabbix-2.2.1]# ls

[root@localhost zabbix-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@localhost zabbix-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@localhost zabbix-2.2.1]# cp /root/桌面/zabbix-2.2.1/misc/init.d/fedora/core/zabbix_* /etc/init.d/

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

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

[root@localhost zabbix-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@localhost zabbix-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@localhost zabbix-2.2.1]# chkconfig  --add  zabbix_server

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

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

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

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

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

data.sql  images.sql  schema.sql

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

[root@localhost mysql]# ls

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

[root@localhost mysql]# 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@localhost mysql]# mysql -uzabbix -pzbxpass  //测试,能通过授权用户登录成功

mysql> quit

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

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

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

[root@localhost mysql]# 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@localhost mysql]# cd /root/桌面/zabbix-2.2.1/frontends/

[root@localhost frontends]# ls

php

[root@localhost frontends]# ls php/

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

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

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

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

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

[root@localhost frontends]# firefox

点击next,如下图:

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

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

[root@localhost frontends]# 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@localhost frontends]# 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]# hostname client205

自定义监控项 :监控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、可见名,再点击主机旁边的模板,关联好定义的模板——存档

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

再对比一下模板上和被应用到主机上的触发器表达式的不同,发现模板被应用到哪个主机,哪个主机上表达式会有相应的变化,但模板本身表达式不变,如下图:

模板上的触发器表达式:点击组态——模板——选择自定义的模板——触发器,如下:

被监控的4.205主机上的表达式:点击组态——主机——选择相应主机4.205——触发器,如下图:

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

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

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

41

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

监测中——最新数据:

监测中——图形:

监测中——仪表盘:

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

[root@localhost zabbix-2.2.1]# sed -i '$d' /etc/passwd

[root@localhost zabbix-2.2.1]# sed -i '$d' /etc/passwd

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

39

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

监测中——最新数据:

监测中——图形:

监测中——仪表盘:

如果对运维课程感兴趣,可以在b站上搜索我的账号: 运维实战课程,可以关注我,学习更多免费的运维实战技术视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维实战课程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值