新上线的服务器需要部署zabbix客户端,并且加入到zabbix监控中,由于新服务器数量较大,所以采用全自动安装部署,文中使用了saltstack的批量部署和zabbix的自动注册结合完成全部需求
环境介绍:
Centos6.5
saltstack 2015.5.10
zabbix 2.2.15
一.Zabbix自动注册
1.启用探索功能
点击local network
选择一个探索的ip范围,检查方式选择zabbix代理方式,保存设置,启用这个规则
这时候,在监测中的探索中已经能发现一些设备,包括已经添加的和没添加的设备
2.配置主机名解析(zabbix服务器端)
vim /etc/hosts
192.168.6.111 test1
192.168.6.112 test2
192.168.6.113 test3
目的是在自动注册时可以自动识别主机名
3.启用自动添加主机和模板
点击Discovery linux server
动作选择默认的就可以,条件选择状态好的,以及用zabbix代理的,操作选择添加到的群组,以及要应用的模板,保存设置,启用这个规则
至此,zabbix自动注册功能已经启用,他会在有客户端在启动了zabbix代理并且连接正确的情况下,自动将主机添加到主机列表中
二.Saltstack批量部署zabbix代理
目录结构:
1.入口文件
vim /srv/salt/top.sls
base: ‘*‘: - zabbix.init
2.初始化文件
vim /srv/salt/zabbix/init.sls
include: - zabbix.install
3.安装文件配置
vim /srv/salt/zabbix/install.sls
zabbix_source: #复制代理安装包 file.managed: - name: /root/zabbix-2.2.15-1.el6.x86_64.rpm - unless: test -e /root/zabbix-2.2.15-1.el6.x86_64.rpm - source: salt://zabbix/file/zabbix-2.2.15-1.el6.x86_64.rpm zabbix-agent_source: file.managed: - name: /root/zabbix-agent-2.2.15-1.el6.x86_64.rpm - unless: test -e /root/zabbix-agent-2.2.15-1.el6.x86_64.rpm - source: salt://zabbix/file/zabbix-agent-2.2.15-1.el6.x86_64.rpm install_zabbix: #进入目录进行安装 cmd.run: - cwd: /root - names: - rpm -ivh zabbix-2.2.15-1.el6.x86_64.rpm - rpm -ivh zabbix-agent-2.2.15-1.el6.x86_64.rpm #- require: # - file: zabbix-agent_source zabbix_conf: #采用jinja模板 file.managed: - name: /etc/zabbix/zabbix_agentd.conf - source: salt://zabbix/file/zabbix_agentd.conf.jinja - template: jinja service.running: #启动代理,设置开机自动启动 - name: zabbix-agent - enable: True
jinja模板的应用
cat /srv/salt/zabbix/file/zabbix_agentd.conf.jinja |grep Hostname
意思是使用 salt test* grains.item host 中取到的host名称
4.salt test* state.highstate
观察是否有报错,全部成功就表示部署已经完成
三.观察和等待自动注册到zabbix服务器上
tailf /var/log/zabbix/zabbix_server.log
日志中出现如上提示,表示注册已经成功!
本文出自 “linux运维技术” 博客,请务必保留此出处http://forall.blog.51cto.com/12356505/1976040
Saltstack批量安装部署Zabbix代理(附zabbix自动注册详解)
原文地址:http://forall.blog.51cto.com/12356505/1976040