笔者在上一篇文章中大致描述了Zabbix Server自动发现的流程,这一篇写Zabbix Agent的自动注册。请确保需要自动注册的设备已经安装并启用了zabbix-agent2.service。
环境介绍:
Zabbix Server:192.168.3.128
Zabbix Agent-2:192.168.3.130
请注意,Zabbix Agent-2意味用来实验的第二台设备(第一台设备192.168.3.129在上一篇用于自动发现,本篇中笔者提前关闭了该设备),而非Zabbix-Agent2.service。
为了不影响自动注册的效果,请先在Zabbix Web界面将自动发现停用。
Zabbix Agent2端的配置:
[root@zabbix-agent-2 ~]# vim /etc/zabbix/zabbix_agent2.conf
--------
……
### Option: HostnameItem
# Item used for generating Hostname if it is undefined. Ignored if Hostname is defined.
# Does not support UserParameters or aliases.
#
# Mandatory: no
# Default:
# HostnameItem=system.hostname//取消这一行的注释
……
--------
//如上,修改配置文件,将HostnameItem……这一栏取消注释
[root@zabbix-agent-2 ~]# grep -Ev '^#|^$' /etc/zabbix/zabbix_agent2.conf
---------
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.3.128
ServerActive=192.168.3.128
Hostname=zabbix-agent-2
HostnameItem=system.hostname
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock
--------
//去掉#号行与空行查看该文件,验证各参数是否配置正常,如上,正常
[root@zabbix-agent-2 ~]# systemctl restart zabbix-agent2
//重启服务
[root@zabbix-server ~]# zabbix_get -s '192.168.3.130' -p 10050 -k 'agent.ping'
--------
1
--------
//在Zabbix Server端验证通信结果,如上,正常
Zabbix Web端的配置:
Zabbix Web——配置——动作——Discovery actions——Autoregstration actions(自动注册动作)——创建动作
名称:自动注册(可随意)
条件:类型为“主机名称”,操作者为“包含”,值为“zabbix-agent-2”(即主机名)(实际环境主机数量较多时,自动注册可以模糊匹配,当然主机命名应规范化)
在“操作”中
添加:操作类型为添加主机
再添加:操作类型为“添加到主机群组”,主机群组选择“Linux Servers”(可自己选择)
再添加:操作类型为“与模板关联”,模板选择“Template OS Linux Zabbix agent”(可自己选择)
启用后等待片刻。
如上,可以看到主机zabbix-agent-2已经成功注册了。