自动化监控:
1、自动注册 1.1、zabbix agent自动添加 2、主动发现 2.1、自动发现Discover 2.2、zabbix api
自动发现与自动注册,哪一个更好?
-
共同的特点均可以添加主机、监控主机;
-
自动发现规则比较多,Zabbix_Server主动去发现;
-
自动注册,注册的方式少,客户端主动上报数据(客户端必须安装Agent,而且能够连接服务器端)。
注:客户端较少切网段范围小可以选自动发现;如果是大量主机、大IP段选自动注册为好!!!
1、自动注册
主动注册,是Active agent 主动联系 zabbix server,最后由 zabbix server 将这些 agent 加到 host里。
注释:关于元数据的介绍:https://www.zabbix.com/documentation/3.4/zh/manual/discovery/auto_registration
简单理解:在配置文件内多添加
HostMetadataItem=system.uname
用来获取主机的信息
被监控的主机agent配置:
[root@Linux ~]# hostname #现在的主机名称 bjcnc-web01-25k [root@Linux ~]# grep '^[a-Z]' /etc/zabbix/zabbix_agentd.conf PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 Server=10.0.0.200 #zabbix-server的IP地址 ServerActive=10.0.0.200 #zabbix-server的IP地址 HostMetadataItem=system.hostname #获取主机的名称 Include=/etc/zabbix/zabbix_agentd.d/ UserParameter=nginx.status[*],/etc/zabbix/nginx_zbx.sh $1 UserParameter=tcp[*],/etc/zabbix/scripts/tcp_status_ss.sh $1
HostMetadataItem=system.uname *********************************************被忘添加这一行 [root@Linux ~]# service zabbix-agent restart #重启服务
[root@Linux ~]# netstat -luntp|grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 110645/zabbix_agent
tcp 0 0 :::10050 :::* LISTEN 110645/zabbix_agent
结果:
zabbix-server端
tailf -1 /var/log/zabbix/zabbix_server.log
2、自动发现
Zabbix最大的特点之一就是可以批量自动主机并监控,利用发现(Discovery)模块,实现自动发现主机、自动将主机添加到主机组、自动加载模板、自动创建项目(Items)、自动创建监控图像
缺点:有大批量服务需要加入的话,zabbix-server压力大,消耗时间长
分两步走:创建发现规则(rule)和执行的动作(Action) (1)创建发现规则 "Configuration"-->"Create discovery rule" 设置规则名:NAME 设置IP发现范围:IP range 设置多久执行一次:Delay (in sec) 支持的Checks:Zabbix_agent 设备的唯一标识:Device uniqueness criteria
配置--自动发现--创建发现规则
(2)配置发现主机后执行的动作 配置---动作---自动发现 ①配置Action名称 ②条件(如Discovery status,Service type等) ③操作(如加入到某个主机组,链接主机模板等)
zabbix-server查看日常
[root@zabbix ~]# tailf -1 /var/log/zabbix/zabbix_server.log
3、排错
参考博文:http://blog.51cto.com/dianel/1965994
如果都确定规则都创建好了,但是就是监控不到主机。可以使用zabbix的自带的命令来排错。
查看是否可以连接到客户端服务器:
zabbix_get -s 192.168.1.56 -p 10050 -k system.uname Linux jiajie 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 zabbix_get -s 192.168.1.56 -p 10050 -k system.hostname jiajie
出现如下问题:说明不能连接到客户端服务器:
#zabbix_get -s 192.168.1.56 -p 10050 -k system.hostname zabbix_get [4165]: Get value error: cannot connect to [[192.168.1.56]:10050]: [113] No route to host
或者:web端一直显示:
Get value from agent failed: cannot connect to [[192.168.1.205]:10050]: [113]No route to host的错误,主机没法被监听。
解决:查看是否可以ping通。如何可以一般就是防火墙的问题,修改防火墙规则,或者关闭防火墙。