首页 运维干货如何自动化添加上百台Zabbix监控

如何自动化添加上百台Zabbix监控

运维派隶属马哥教育旗下专业运维社区,是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai
领取学习更多免费Linux云计算、Python、Docker、K8s教程关注公众号:马哥linux运维

前言

当我们熟悉了Zabbix的日常监控,可以在生产环境正确的部署和实施监控工作。而且通过修改Zabbix Agent为主动方式并结合Zabbix Proxy的使用,可以满足大规模监控的需求。那么同样的问题就是大规模监控环境中,如何能让操作自动化。面对上百、数千乃至上万的规模,手动添加监控基本上是不可能的。

可以将Zabbix自动化分为三个大方向:

  • Zabbix Agent的自动添加
  • Zabbix Discovery自动发现
  • 使用Zabbix API

那么今天我们来说说Zabbix Agent的自动添加。

Zabbix Agent主动注册指的是,当我们新增加一台服务器,安装好Zabbix Agent,并配置Zabbix Server的IP地址后,Zabbix Agent主动联系Zabbix Server,Zabbix Server接收到Agent的连接后,根据Agent的特征,和相应的策略自动将它们加入Host,并且可以根据相关的特征自动关联相应的监控模板。

Zabbix Agent配置

需要开启Zabbix Agent的主动注册,首先我们需要对ZabbixAgent进行配置。

ServerActive=Zabbix Server的IP地址

Hostname=auto.example.com

#设置主机名,如果不设置默认使用HostnameItem获取主机名。而默认情况下HostnameItem=system.hostname,这样就可以获取到Agent的主机名了。

#HostMetadata=nginx

#HostMetadata用于定义主机的元数据,在自动注册的时候使用,不能大于255个字符,如果不设置默认从HostMetadataItem获取

HostMetadataItem=system.uname

# HostMetadataItem也是用于定义主机的元数据,在自动注册的时候使用,不能大于255个字符,这里设置的Item指的是Zabbix自带的监控项,注意这个值只用于HostMetadata没有设置的时候才生效。

Zabbix Action配置

配置完毕Agent后,我们在Web界面上来配置一个Action。步骤为:

configuration>>action>>Eventsource(选择Auto registration)>>CreateAction。

可以自定义一个名称,其它的默认即可。

Action选项卡

Zabbix监控

Conditions选项卡

我们要在Conditions里面定义好需要的条件,这里我们选择Host metadata like Linux。这样就刚好可以匹配到我们在agent配置文件里面设置的HostMetadataItem=system.uname

监控

Operations选项卡

  接下来我们配置Operations选项卡,告知Action匹配到条件后的操作。下面我们配置了三个操作,满足条件的activehost发起请求后会进行下面操作:

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

Zabbix监控

经过这样的配置,那么新的Agent就会自动被Zabbix Server添加到主机监控中,并自动链接模板。

需要强调的是,你需要修改模板中的监控类型为Zabbix Agent(active)。

目前自动注册并不会产生一个事件所以在Event中是看不到Zabbix Server自动添加了一台主机的。

分享嘉宾

赵舜东

江湖人称“赵班长”,曾在武警某部负责指挥自动化架构和运维,曾带团队负责国内知名电商运维工作,SaltStack中国用户组发起人、运维社区发起人、《saltstack入门与实践》作者,《运维知识体系》作者。
文章出处:运维社区(订阅号ID:cloud-oaas)

本文链接:http://www.yunweipai.com/9474.html

网友评论comments

发表评论

邮箱地址不会被公开。

暂无评论

Copyright © 2012-2021 YUNWEIPAI.COM - 运维派 京ICP备16064699号-6
扫二维码
扫二维码
返回顶部