1、網絡發現node
網絡發現是zabbix最具特點的功能之一,它能可以根據用戶事先定義的規則自動添加監控主機或服務等,Zabbix的網絡發現功能能夠基於:IP ranges、Availability of external services(FTP、SSH、WEB、POP三、IMAP、TCP、etc)、Information recevived from zabbix agent、Information recevived from SNMP agent.nginx
網絡發現一般包含兩個階段:discovery和actionsweb
Discovery中的事件:
bash
Service Up網絡
Service Downapp
Host Uptcp
Host Downide
Service Discovered測試
Service Lostspa
Host Discovered
Host Lost
Action,網絡發現中的事件能夠觸發action,從而自動執行指定的操做,如:
Sending notifications
Adding/removing hosts
Enabling/disabling hosts
Adding hosts to group
Removing hosts from a group
Linking hosts to/unlinking from a template
Executing remote scripts
2、自動註冊
Zabbix支持active agent的自動註冊(auto-resisitration)功能,一般用於此前故障的agent從新上線的場景,也可基於active agent的自動註冊機制添加被動檢測,這會經過active agent註冊時提供的"ListenIP"和"ListenPort"進行,Server端在收到自動註冊請求後以接收到的IP和Port爲接口屬性。
實驗環境
192.168.30.116 OS:CentOS 6.4 x86_64 zabbix_server.luojianlong.com
192.168.30.117 OS:CentOS 6.4 x86_64 node1.luojianlong.com
192.168.30.119 OS:CentOS 6.4 x86_64 node2.luojianlong.com
192.168.30.115 OS:CentOS 6.4 x86_64 node3.luojianlong.com
zabbix_server,zabbix_agent已經安裝完成,而且啓動
[root@zabbix_server ~]# netstat -anptl | grep zabbix tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 19539/zabbix_server tcp 0 0 192.168.30.116:36692 192.168.30.116:3306 ESTABLISHED 19567/zabbix_server tcp 0 0 192.168.30.116:36681 192.168.30.116:3306 ESTABLISHED 19569/zabbix_server tcp 0 0 192.168.30.116:36684 192.168.30.116:3306 ESTABLISHED 19576/zabbix_server tcp 0 0 192.168.30.116:36677 192.168.30.116:3306 ESTABLISHED 19559/zabbix_server tcp 0 0 192.168.30.116:36680 192.168.30.116:3306 ESTABLISHED 19566/zabbix_server tcp 0 0 192.168.30.116:36682 192.168.30.116:3306 ESTABLISHED 19570/zabbix_server tcp 0 0 192.168.30.116:54102 192.168.30.116:3306 ESTABLISHED 19547/zabbix_server tcp 0 0 192.168.30.116:36685 192.168.30.116:3306 ESTABLISHED 19572/zabbix_server tcp 0 0 192.168.30.116:58705 192.168.30.116:3306 ESTABLISHED 19546/zabbix_server tcp 0 0 192.168.30.116:58706 192.168.30.116:3306 ESTABLISHED 19544/zabbix_server tcp 0 0 192.168.30.116:36679 192.168.30.116:3306 ESTABLISHED 19563/zabbix_server tcp 0 0 192.168.30.116:53068 192.168.30.116:3306 ESTABLISHED 19543/zabbix_server tcp 0 0 192.168.30.116:36694 192.168.30.116:3306 ESTABLISHED 19541/zabbix_server tcp 0 0 192.168.30.116:36683 192.168.30.116:3306 ESTABLISHED 19574/zabbix_server tcp 0 0 192.168.30.116:54112 192.168.30.116:3306 ESTABLISHED 19548/zabbix_server tcp 0 0 :::10051 :::* LISTEN 19539/zabbix_server [root@node1 ~]# netstat -anplt | grep zabbix tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 26800/zabbix_agentd tcp 0 0 :::10050 :::* LISTEN 26800/zabbix_agentd
下面開始建立模板
爲模板添加items
建立graph
下面定義discovery rules,發現地址範圍爲:192.168.30.110-120
超時時間爲:120s
檢測的key爲:剛纔在item中定義的net.if.in[eth0]
檢測標準爲: IP address
定義actions,Event source選擇Discovery
定義發現action名稱,發送消息,主題
定義Operations,添加類型爲host,link到以前建立的模板
定義Conditions,Discovery rule必須爲Linux in localnet,Discovery status爲:Discovered
主機IP在:192.168.30.110-120內
定義移除action,只要探測失敗,就移除主機
觀察是發現3臺主機
發現主機已經被自動添加監控,並連接至模板
測試,主機下線,看是否會被移除
[root@node1 ~]# service zabbix-agent stop Shutting down Zabbix agent: [ OK ] [root@node2 ~]# service zabbix-agent stop Shutting down Zabbix agent: [ OK ] [root@node3 ~]# service zabbix-agent stop Shutting down Zabbix agent: [ OK ]
發現主機被自動移除
測試,恢復上線
[root@node1 ~]# service zabbix-agent start Starting Zabbix agent: [ OK ] [root@node2 ~]# service zabbix-agent start Starting Zabbix agent: [ OK ] [root@node3 ~]# service zabbix-agent start Starting Zabbix agent: [ OK ]
發現3個主機已經恢復監控
下面建立web監控
首先,在192.168.30.115主機中定義application
而後建立 web senario
定義steps
下面查看圖像
能夠看到頁面的響應速度和下載速度
建立web監控的trigger,表達式爲主頁最後一次的響應碼不等於200就觸發事件
模擬故障
[root@node1 ~]# killall -9 nginx
發現觸發器生效