天天看點

Zabbix監控平台部署之應用元件/服務程序介紹

作者:我有我彩

Zabbix元件

Zabbix主要有幾個元件構成,這些元件的功能介紹如下:

1、Zabbix Server

Zabbix Server是Zabbix的核心元件,是所有配置資訊、統計資訊和操作資料的核心存儲器。 它主要負責接收用戶端發送的報告和資訊,同時,所有配置、統計資料及配置操作資料均由其組織進行。

2、Zabbix Database Storage

主要用于存儲資料,所有配置資訊和Zabbix收集到的資料都被存儲在資料庫中。常用的儲存設備有MySQL、Oracle、SQLite等。

3、Zabbix Web 界面

這是Zabbix提供的GUI接口,通常(但不一定)與Zabbix Server運作在同一台實體機器上。

4、Zabbix Proxy代理伺服器

這是一個可選元件,常用于分布監控環境中,代理Server可以替Zabbix Server收集性能和可用性資料,彙總後統一發往Zabbix Server端。

5、Zabbix Agent監控代理

Zabbix Agent部署在被監控主機上,能夠主動監控本地資源和應用程式,并負責收集資料發往Zabbix Server端或Zabbix Proxy端。從zabbix5版本開始,zabbix_agent分為zabbix_agent和zabbix_agent2,zabbix_agent2是第二個agent版本,功能更加強大,采用go語言編寫,支援zabbix_agent所有功能。使用zabbix_agent2可監控docker容器、ceph、mysql、oracle、redis等。官方推薦zabbix_agent2,功能更強大更完善。

Zabbix服務程序

根據功能和用途,預設情況下zabbix包含5個程序,分别是zabbix_agentd/zabbix_agent2、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server,另外還有一個zabbix_java_gateway是可選的功能,需要另外安裝。下面分别介紹下它們各自的作用。

1、zabbix_agentd/zabbix_agent2

zabbix_agentd/agent2是Zabbix Agent監控代理端守護程序,此程序收集用戶端資料,例如cpu負載、記憶體、硬碟、網絡使用情況等,推薦使用zabbix_agent2。

2、zabbix_get

zabbix提供的一個工具,通常在Zabbix server或者Zabbix proxy端執行用來擷取遠端用戶端資訊,這其實是Zabbix server去Zabbix Agent端拉取資料的過程,此工具主要用來進行使用者排錯。例如在Zabbix server端擷取不到用戶端的監控資料時,可以使用zabbix_get指令測試擷取用戶端資料來做故障排查。

通過執行這個指令,擷取遠端主機上的資料,主動拉取資料,主要用于使用者排錯。

3、zabbix_sender

zabbix提供的一個工具,用于發送資料給Zabbix server或者Zabbix proxy,這其實是Zabbix Agent端主動推送監控資料到Zabbix Server端的過程,通常用于耗時比較長的檢查或者有大量主機(千台以上)需要監控的場景。此時通過主動推送資料到Zabbix server,可以在很大程度上減輕Zabbix server的壓力和負載。

4、zabbix_proxy

Zabbix Proxy的代理守護程序。功能類似Zabbix server,唯一不同的是它隻是一個中轉站,它需要把收集到的資料送出或者被送出到Zabbix server上。

5、zabbix_java_gateway

Zabbix2.0之後引入的一個功能。顧名思義:Java網關,主要用來監控JAVA應用環境,類似zabbix_agentd程序。需要特别注意的是,它隻能主動去推送資料,而不能等待zabbix server或者zabbix proxy來拉取資料。它的資料最終會給到zabbix server或者zabbix proxy上。

6、zabbix_server

Zabbix server是整個Zabbix系統的核心程序。其它程序zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、zabbix_java_gateway的資料最終都是送出到Zabbix server來統一進行處理。

Zabbix運作架構圖:

Zabbix監控平台部署之應用元件/服務程式介紹

server是整個系統的核心。資料庫位于server或者獨立機器,用來存放資料,和server實時互動。

zabbix web控制台,同樣需要連接配接資料庫,因為web隻是一個PHP環境。

主機4,zabbix proxy,适用于分布式部署架構,比如主機1在上海,agent在北京,雖然agent可以直接發送到server,但是server的負載很大。這個時候我們可以在北京安裝一台proxy,這樣proxy可以暫存agent的資料,然後在特定的時間傳到上海的主機1。

主機N可以直接連接配接到server上,也可以安裝一台proxy,再傳送給server。

zabbix雖然涉及到的元件比較多,但是其功能都比較清晰,相信通過對元件的了解,我們可以更好的學習環境的搭建和使用。

繼續閱讀