《如何自动化添加上百台Zabbix监控》要点:
本文介绍了如何自动化添加上百台Zabbix监控,希望对您有用。如果有疑问,可以联系我们。
当我们熟悉了Zabbix的日常监控,可以在生产环境正确的部署和实施监控工作.而且通过修改Zabbix Agent为主动方式并结合Zabbix Proxy的使用,可以满足大规模监控的需求.那么同样的问题就是大规模监控环境中,如何能让操作自动化.面对上百、数千乃至上万的规模,手动添加监控基本上是不可能的.
可以将Zabbix自动化分为三个大方向:
那么今天我们来说说Zabbix Agent的自动添加.
Zabbix Agent主动注册指的是,当我们新增加一台服务器,安装好Zabbix Agent,并配置Zabbix Server的IP地址后,Zabbix Agent主动联系Zabbix Server,Zabbix Server接收到Agent的连接后,根据Agent的特征,和相应的策略自动将它们加入Host,并且可以根据相关的特征自动关联相应的监控模板.
需要开启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没有设置的时候才生效.
配置完毕Agent后,我们在Web界面上来配置一个Action.步骤为:
configuration>>action>>Eventsource(选择Auto registration)>>CreateAction.
可以自定义一个名称,其它的默认即可.
我们要在Conditions里面定义好需要的条件,这里我们选择Host metadata like Linux.这样就刚好可以匹配到我们在agent配置文件里面设置的HostMetadataItem=system.uname.
接下来我们配置Operations选项卡,告知Action匹配到条件后的操作.下面我们配置了三个操作,满足条件的activehost发起请求后会进行下面操作:
经过这样的配置,那么新的Agent就会自动被Zabbix Server添加到主机监控中,并自动链接模板.
需要强调的是,你需要修改模板中的监控类型为Zabbix Agent(active).
目前自动注册并不会产生一个事件所以在Event中是看不到Zabbix Server自动添加了一台主机的.
分享嘉宾
赵舜东
江湖人称“赵班长”,曾在武警某部负责指挥自动化架构和运维,曾带团队负责国内知名电商运维工作,SaltStack中国用户组发起人、运维社区发起人、《saltstack入门与实践》作者,《运维知识体系》作者.
文章出处:运维社区(订阅号ID:cloud-oaas)
转载请注明本页网址:
http://www.vephp.com/jiaocheng/4427.html