自動發現
Zabbix 為用戶提供了高效靈活的網絡自動發現功能,有以下優點:
- 加快 Zabbix 部署
- 簡化管理
- 無需過多管理,也能在快速變化的環境中使用 Zabbix
Zabbix 網絡發現基於以下信息
- IP 范圍
- 可用的外部服務(FTP、SSH、WEB、POP3、IMAP、TCP 等)
- 來自 Zabbix 客戶端的信息(僅支持未加密模式)
- 來自 SNMP 客戶端的信息
# 不支持:發現網絡拓撲
# 網絡發現由兩個階段組成:發現和動作
網絡發現由兩個階段組成(發現和動作)
# 原理
Zabbix 定期掃描網絡發現規則中定義的IP范圍,並為每條規則單獨配置了檢測的頻率。
請注意,一條發現規則始終由一個發現進程處理,IP 范圍不會在多個發現進程之間分割。
每條規則都定義了一組服務檢測,對 IP 范圍執行檢測。
發現檢測與其他檢測獨立處理。如果一些檢測未找到服務(或失敗),其他檢測則仍會處理。。
事件
每次檢測到服務和主機(IP)后,網絡發現模塊都會生成一個發現事件
事件 | 服務結果檢測 |
---|---|
服務被發現 | 服務首次被發現或者服務由“關閉”變“開啟” |
服務開啟 | 服務持續“開啟” |
服務丟失 | 服務由“開啟”變“關閉” |
服務關閉 | 服務持續“關閉” |
主機被發現 | 在主機的所有服務都“關閉”之后,至少有一個服務重新“開啟” |
主機開啟 | 主機至少有一個服務持續“開啟” |
主機丟失 | 主機的所有服務在至少一個是“開啟”之后全部是“關閉” |
主機關閉 | 主機的所有服務都持續“關閉” |
動作
1.發送通知
2.添加/刪除主機
3.啟用/禁用主機
4.添加主機到組
5.從組中刪除主機
6.將主機鏈接到/取消鏈接模板
7.執行遠程腳本命令
# 基於事件的網絡發現動作, 可以根據設備類型、IP地址、狀態、運行時間/停機時間等進行配置,查看操作 and 條件頁面。
網絡發現實踐
默認標題
自動發現主機IP:{DISCOVERY.DEVICE.IPADDRESS}
消息內容
客戶端名稱: {DISCOVERY.SERVICE.NAME}
客戶端端口: {DISCOVERY.SERVICE.PORT}
客戶端狀態: {DISCOVERY.SERVICE.STATUS}
自動注冊
ACTIVE-AGENT 自動注冊
Zabbix Active agent可以實現自動注冊,進而服務器對其進行監控。通過這種方式,無需在服務器上進行手動配置便可直接啟動對新host的監控。
當以前未知的 Active agent 要求檢查時,會發生自動注冊。
這樣功能可以非常方便的自動監控新的 Cloud 節點。一旦在 Cloud 中有一個新節點,Zabbix 將自動啟動 host 的性能和可用性數據的收集。
Active agent 自動注冊還支持對被添加的主機進行被動檢查的監控。當 Active agent 要求檢查時,前提是在配置文件中已定義好了 “ListenIP” 或 “ListenPort” 配置參數,這些參數將發送到服務器。(如果指定了多個 IP 地址,則第一個將被發送到服務器。)
服務器在添加新的自動注冊主機時,使用接收到的 IP 地址和端口配置 agent。如果沒有接收到IP地址值,則使用傳入連接的IP地址。如果沒有接收到端口值,則使用10050
自動注冊情況
- 主機元數據信息發生變化
- 手動添加主機,元數據信息有缺失
- 手動切換主機,由另一台新的proxy監控
- 同一台host的自動注冊由新的proxy發出
自動注冊實踐
客戶端配置
[root@m01 ~]# vim /etc/zabbix/zabbix_agentd.conf
ServerActive=172.16.1.71
Hostname=m01
[root@m01 ~]# systemctl restart zabbix-agent.service
頁面配置