Saltstack批量安裝部署Zabbix代理(附zabbix自動註冊詳解)
新上線的服務器需要部署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自動註冊詳解)