熟练通过zabbix监控平台监控单台客户端之后,企业中有成千上万台服务器,如果手工添加会非常耗费时间,造成大量的人力成本浪费,有没有什么好的自动化添加客户端的方法呢?
zabbix自动发现就是为了解决批量监控而设计的功能之一,什么是自动发现呢,简单来说就是zabbix_server端可以基于设定的规则,自动批量的去发现局域网中若干服务器,并自动把服务器添加至zabbix监控平台,省去人工手动频繁的添加,节省大量的人力成本。
zabbix相对于Nagios、cacti监控来说,如果要想批量监控,nagios、cacti需要手动单个添加设备、分组、项目、图像,也可以使用脚本,但是不能实现自动发现方式添加。
zabbix最大的特点之一就是可以批量自动添加主机并监控,利用发现(Discovery)模块,实现自动呢发现主机、自动将主机添加到主机组、自动加载模板、自动创建项目(Items)、自动创建监控图像,操作步骤如下:
1)Configuration→discovery →Create discovery rule
说明:
Name: 规则名称;
Discovery by proxy : 通过代理探索;
IP range : zabbix_server 探索区域的IP范围;
Delay : 搜索一次的时间间隔;
Checks : 检测方式,如用ping方式去发现主机,zabbix_server需安装fping,此处使用Agent方式发现;
Device uniqueness criteria: 以IP地址作为被发现主机的标识。
2)zabbix客户端安装agent
由于发现规则里选择checks方式为agent,所以需在所有被监控的服务器安装zabbix_agent,安装方法可以手动安装,也可以使用shell脚本,如下为安装zabbix客户端的shell脚本
#!/bin/bash #auto install zabbix #by jfedu.net 2017 ############# ZABBIX_SOFT="zabbix-3.2.6.tar.gz" INSTALL_DIR="/usr/local/zabbix/" SERVER_IP="192.168.149.128" IP=`ifconfig|grep Bcast|awk '{print $2}'|sed 's/addr://g'` 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-3.2.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 #start zabbix agentd /etc/init.d/zabbix_agentd restart /etc/init.d/iptables stop setenforce 0 } AGENT_INSTALL
(1) 创建发现Action
Zabbix发现规则创建完毕,客户端Agent安装完后,被发现的IP主机不会自动添加至Zabbix监控列表,需要添加发现动作,添加方法如下:
Configuration→Actions →Event source(选择Discovery) →Create action
添加规则时,系统默认存在一条发现规则,可以新建规则,也可以编辑默认规则,如图所示,编辑默认发现规则,单击Operations设置发现操作,分别设置Add host、Add to host groups、Link to templates,最后启用规则即可
MontoringàDiscovery,查看通过发现规则找到的服务器IP列表
ConfigurationàHosts,查看4台主机是否被自动监控至Zabbix监控平台
MonitoringàGraphs,监控图像查看,如图所示,可以选择Host、Graph分别查看各种的监控图像