Zabbix監控原理及架構


什么是Zabbix?

Zabbix是一個用於網絡,操作系統和應用程序的開源監控軟件,它旨在監視和跟蹤各種網絡服務,服務器和其他網絡硬件的狀態。

為什么需要對各類系統進行監控?

在系統構建時的正常流程中,通常是不允許未被監控的系統或應用上線的,因為未被監控的系統存在不可預知性、故障未知性等不穩定因素,且無法及時被發現並排除。這對整個架構或系統來說都是很大的風險隱患。所以我們原則上是需要對整個架構或系統進行監控,隨時監測系統各方面的指標是否正常,以提高整個系統的穩定性。

Zabbix是如何實現系統監控的?

一個完整的監控系統所需指標:

1.采樣:周期性的獲取某個被監測指標的相關數據

2.存儲:將采集到的數據存儲在指定的存儲系統中,Zabbix默認是MySQL

  對於數據的存儲可分為兩大類:

  歷史數據:可理解為過去某一時間點的數據

  趨勢數據:可理解為過去某一段時間的數據

3.展示:采集完數據后,為了使數據能更直觀的展現在用戶面前,可將采集到的數據做二次處理,做成各類圖形。Zabbix就是使用的PHP程序將采集的數據通過Web GUI直觀的展示給用戶。

4.報警:當監控的指標出現異常時需要監控系統能自動的發出告警信息,甚至在出現報警后能自動完成修復。

Zabbix支持的數據采集協議:

1.SNMP:(Simple Network Management Protocol),這是一個非常古老的且通用的監控協議,幾乎任何設備都支持用此方式進行系統監控。

2.Agent:在被監控端安裝專門的監控程序,將數據采集后通過Agent發送至Server。

3.IPMI:智能平台管理接口。可在常用的服務器上看到類似以太網口的接口。

4.JMX:Java Management Extensions

Zabbix的常用組件:

1.Zabbix Web GUI:提供Web界面

2.Zabbix Database:提供數據存儲功能,專用於存儲配置信息,以及采集到的數據

3.Zabbix Server:接收Agent采集數據的核心組件。

4.Zabbix Agent:部署在被監控主機上,用於采集本地數據。

5.Zabbix Proxy:當被監控節點較多時,用於減輕Server壓力的組件,也用於分布式監控系統。由Proxy接收數據后統一發送至Server。

Zabbix架構圖:

Zabbix邏輯圖:

Zabbix邏輯組件:

主機組(host groups)

主機(hosts)

應用(application)

監控項(items)

觸發器(triggers)

事件(events)

動作(actions):條件(conditions)和操作(operations)

媒介(media):發送通知的通道,短信,郵件等

通知(notiflcations)

遠程命令(remote command)

報警升級(escalation)

模板(template)

圖形(graph)

屏幕(screens)

幻燈(slide show)

Zabbix實現監控的兩種模式:

簡單的講,主動模式和被動模式都是將Agent作為參照的

主動模式:由Agent主動建立TCP鏈接並向Server端發送請求。

被動模式:由Server建立TCP鏈接並向Agent端發送請求。

 

Zabbix基礎教程:https://www.cnblogs.com/readygood/p/9655862.htmlhttps://www.cnblogs.com/readygood/p/9670385.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM