一、需求
zabbix 服務器可以手動加入zabbix-agent客戶端,對於少量的機器,這沒有什么。但到了線上,我們有大量的服務器需要監控時,如果再一個個的手動加的話,工作量勢必會增加很多。這時,zabbix-server 的Discovery 自動發現 功能便派上了用場。
二、條件
1.zabbix server 已經部署好,所需要加入的服務器zabbix-agent已經安裝。
2.防火牆都開放端口,主要是10050、10051端口,或者關閉整個iptables
三、zabbix-agent客戶端的設置
1.打開zabbix-agent.conf配置文件,只需要修改2處配置.大批量的修改,可以利用自動化部署工具、如saltstack、ansible等。
2.批量執行的命令
sed -i 's/Server=127.0.0.1/Server=192.168.10.133/g' /etc/zabbix/zabbix_agentd.conf
sed -i 's/ServerActive=127.0.0.1/ServerActive=192.168.10.133/g' /etc/zabbix/zabbix_agentd.conf
sed -i 's/# HostnameItem=system.hostname/HostnameItem=system.hostname/g' /etc/zabbix/zabbix_agentd.conf
grep -v "^$" /etc/zabbix/zabbix_agentd.conf | grep -v '^#' #查看配置文件內容
service zabbix-agent restart #重啟服務
四、zabbix-server 登陸web界面進行設置,創建規則,並自動加入,自動鏈接模板
1.配置--自動發現--創建發現規則
2.配置--動作--選擇“自動發現”--創建動作
在動作選項下:
在條件選項下:
添加觸發條件
A:主機地址為192.168.10.130-150
B:自動發現狀態為啟動
C:服務類型為zabbix客戶端
在操作選項下:
添加動作操作細節
添加主機
添加到主機群組: Discovered hosts, Linux servers
鏈接到模板: Template OS Linux
后續的還可以添加發送消息等。
3.觀察監控中--自動發現,有沒有機器加入進來。為了便於觀察,我們之前設置的發現輪詢的時間是60秒。如圖:
五、查看主機添加情況
可以看出已經添加到我們所設定的群組之中:
已關聯到Template OS Linux模板下:
至此zabbix自動發現,自動添加主機已配置完成,之后一旦滿足觸發條件的服務器就能自動添加到zabbix監控的主機中了。