Zabbix Server可以通过自动发现去添加主机(大概内容是zabbix server去扫描一个网段,把在线的主机添加到Host列表中),同样agent也可以主动去联系Zabbix Server,并由Zabbix Server将这些agent加到host里。对于需要部署特别多服务器的人来说,这功能相当给力。所有服务器批量装好Zabbix Agent,Server配置好trigger,所有的服务器都配置好了,非常快速。


Agent端配置:

指定Zabbix Server的IP地址


root@JMXCLIENT:~           # cat /etc/zabbix/zabbix_agentd.conf | grep -E ^ServerActive          
           ServerActive=172.16.206.130




修改Hostname


root@JMXCLIENT:~           # cat /etc/zabbix/zabbix_agentd.conf | grep -E ^Hostname          
           Hostname=172.16.206.132



关于主机名:如果zabbix_agentd.conf配置有定义Hostname,那么zabbix会使用这个Hostname命名,否则agent的主机名(hostname得来的)


修改metadataitem


root@JMXCLIENT:~# cat /etc/zabbix/zabbix_agentd.conf | grep -E ^HostMetadataItem          
           HostMetadataItem=           system           .uname




Zabbix WEB端配置

创建一个Action,event source这里选择Auto Registration


zabbix host添加agent_linux


配置Action选项卡,填下Name就好了

zabbix host添加agent_zabbix host添加agent_02


配置Conditions选项卡,Host metadata包含Linux字符的主机将会触发 Operations的操作,什么metadata,文章的下半段会专门讲解。

zabbix host添加agent_Server_03



配置Operations选项卡,

满足条件的active host发起请求,server会完成三个动作:

  • 把agent加到host列表
  • 把agent加入linux servers组
  • agent主机link模板Template OS linux

zabbix host添加agent_linux_04


查看结果:

zabbix host添加agent_服务器_05



HostMetadataItem与HostMetadata

作用:用于标示主机,通过该符号能够把主机区别开来。比如我们经常用它来区分linux与windows系统,这样才能分别给他们设置组与template等等


HostMetadataItem用法

HostMetadataItem=system.uname

它的值来自key


HostMetadata用法

HostMetadata: Linux hehehehehehehehe xxxxx

他的值是直接定义的

通过使用各式各样的metadata我们可以用于区分各个主机,来达到我们各种需求。























本文转自 曾哥最爱 51CTO博客,原文链接:http://blog.51cto.com/zengestudy/1788992,如需转载请自行联系原作者