一.環境html
1. zabbix環境linux
2. 配置環境vim
發現本地網絡172.19.200.1-254,Check:ICMP ping,以下:
網絡
ICMP ping方式下,UP狀態的主機添加到"Discovery hosts"組,以下:
socket
二.自動發現失效.net
1. 現象日誌
在自動發現的discovery與action流程配置正確的前提下,等待10分鐘觀察,自動發現功能並不生效。server
2. 定位故障htm
#發現有"找不到/usr/sbin/fping文件"的信息記錄。get
[root@localhost ~]# vim /tmp/zabbix_server.log
1412:20160621:110040.593 /usr/sbin/fping: [2] No such file or directory
3. 故障分析
"ICMP ping"的check方式,使用/usr/sbin/fping命令檢測狀態,若是系統沒有安裝或fping命令執行路徑有誤,則check方式不能發現設備,自動發現功能失效。
三.安裝配置fping
1. 安裝fping
#fping相對ping,能夠同時ping多個目標而且有多種統計輸出格式,#fping目前只能經過編譯的方式安裝。
[root@localhost ~]# cd /usr/local/src
[root@localhost src]# wget http://www.fping.org/dist/fping-3.13.tar.gz
[root@localhost src]# tar -zxvf fping-3.13.tar.gz
[root@localhost src]# cd fping-3.13
[root@localhost fping-3.13]# ./configure
[root@localhost fping-3.13]# make && make install
2. 配置fping執行路徑
#zabbix_server配置文件中默認fping的執行路徑被註釋掉了,此時默認路徑就爲:/usr/sbin/fping
#能夠配置fping的執行路徑,以下:
[root@localhost ~]# sed -i 's|# FpingLocation=/usr/sbin/fping|FpingLocation=/usr/local/sbin/fping|g' /usr/local/zabbix/etc/zabbix_server.conf
#或者不修改 zabbix_server.conf文件,使用軟鏈接ln -s /usr/local/sbin/fping /usr/sbin/fping
3. 配置fping權限
#fping必須由root用戶執行,若是非root帳號執行fping,查看zabbix_server日誌會有以下報警信息:
#21822:20160621:151232.024 fping failed: (null): can't create socket (must run as root?) : Permission denied
#若是是root帳號安裝的fping,能夠不用修改owner
#但zabbix_server是使用zabbix帳號調用命令的,能夠爲fping設置SUID權限,以下:
[root@localhost ~]# chown root:root /usr/local/sbin/fping
[root@localhost ~]# chmod u+s /usr/local/sbin/fping
四.驗證
1. 驗證Discovery
Monitoring--> Discovery--> Discovery rule,選擇"Local network"(建立discovery時的name),以下:
2. 驗證Action
Configuration--> Hosts--> Group,選擇"Discovery hosts"組,以下: