当我们能够熟练构建Zabbix监控平台之后,我们会发现,对zabbix的认识只是刚开始,今天带大家来学习Zabbix比较牛的功能,自动发现功能。什么是自动发现呢,简单来说就是,可以自动批量去发现局域网若干服务器,并自动添加监控,省去人工手动的添加,节省大量的人力成本!

随着监控主机不断增多,有时候需要添加一批机器,需要将公司的所有服务器添加到zabbix中,学过nagios、cacti的同学都知道,如果要批量必须使用脚本,或者手动传统办法去单个添加设备、分组、项目、图像,如果设备多,会晕倒哦。

Zabbix最大的特点之一就是可以批量自动主机并监控,利用发现(Discovery)模块,实现自动刚发现主机、自动将主机添加到主机组、自动加载模板、自动创建项目(item)、自动创建图像。

1)Configuration ----discovery ---- Create discovery rule

2)脚本自动安装配置Agent

由于发现规则里checks,我们选择的是Zabbix agent方式去检查,所以需要在被监控端安装zabbix agent,安装脚本如下:

#!/bin/bash #auto install zabbix version 2.0 #by www.jfedu.net 2017 ############# ZABBIX_SOFT="zabbix-2.0.6.tar.gz" INSTALL_DIR="/usr/local/zabbix/" SERVER_IP="192.168.111.128" IP=`ifconfig|grep Bcast|awk '{print $2}'|sed 's/addr://g'`   SERVER_INSTALL(){ yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI groupadd zabbix ;useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix   tar-xzf $ZABBIX_SOFT;cd `echo $ZABBIX_SOFT|sed 's/.tar.*//g'` ./configure  --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl&&make install if [$? -eq 0 ];then        ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/ fi cd -;cd zabbix-2.0.6 cp misc/init.d/tru64/{zabbix_agentd,zabbix_server}  /etc/init.d/ ;chmod o+x /etc/init.d/zabbix_* mkdir-p /var/www/html/zabbix/;cp -a frontends/php/* /var/www/html/zabbix/   #config zabbix server  cat>$INSTALL_DIR/etc/zabbix_server.conf<<EOF LogFile=/tmp/zabbix_server.log DBHost=localhost DBName=zabbix DBUser=zabbix DBPassword=123456 EOF #config zabbix agentd cat>$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF LogFile=/tmp/zabbix_agentd.log Server=$SERVER_IP ServerActive=$SERVER_IP Hostname=$IP  EOF   #start zabbix agentd /etc/init.d/zabbix_server restart /etc/init.d/zabbix_agentd restart /etc/init.d/iptables stop setenforce 0 }   AGENT_INSTALL(){ yum -y install curl curl-devel net-snmp net-snmp-devel perl-DBI groupadd zabbix ;useradd -g zabbix zabbix;usermod -s /sbin/nologin zabbix   tar-xzf $ZABBIX_SOFT;cd `echo $ZABBIX_SOFT|sed 's/.tar.*//g'` ./configure  --prefix=/usr/local/zabbix  --enable-agent&&make install if [$? -eq 0 ];then        ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/ fi cd -;cd zabbix-2.0.6 cp  misc/init.d/tru64/zabbix_agentd  /etc/init.d/zabbix_agentd ;chmod o+x/etc/init.d/zabbix_agentd   #config zabbix agentd cat>$INSTALL_DIR/etc/zabbix_agentd.conf<<EOF LogFile=/tmp/zabbix_agentd.log Server=$SERVER_IP ServerActive=$SERVER_IP Hostname=$IP  EOF   #startzabbix agentd /etc/init.d/zabbix_agentd restart /etc/init.d/iptables stop setenforce 0 }   read-p "Please confirm whether to install Zabbix Server,yes or no? "INPUT if [$INPUT == "yes" -o $INPUT == "y" ];then        SERVER_INSTALL else        AGENT_INSTALL fi

在客户端执行sh  auto_install_agent.sh脚本即可:

3)主机自动加入主机组并关联模板

我们配置了自动发现主机,那么发现主机之后我们要做什么呢?

需要将主机加入主机组、并关联相应的模板,执行Action (动作)来执行一些列的操作:

Configuration ---- Actions ---- Event source(选择Discovery) ---- Create action

4)动作-条件-操作

5)MontoringàDiscovery如下图

6)查看主机是否被自动监控

ConfigurationàHosts如下图

7)监控图像查看

MonitoringàGraphs如下:

更多文章请持续关注我们!后期更经常哦!

你若觉得作者的文章写得不错,请奖励作者几锭银子,让作者感受到来自你满满的鼓励和继续创作的动力!我们支持原创!鼓励原创!

打赏之后,文章底部显示参与打赏者的记录,可以直接通过微信扫描打赏哟,直接按打赏根据提示操作。

自定义打赏金额,友情提示打赏金额不要超过50元哦,土豪可以随意哦,51CTO谢谢您对作者的支持!谢谢你的慷慨大方!