zabbix由以下幾個組件構成:
1、Zabbix Server:
負責接收agent發送的報告信息的核心組件。
所有配置、統計數據、操作數據均由Zabbix Server組織進行。
2、Database Storage:
專用於存儲所有配置信息,以及由zabbix收集的數據;
3、Web interface:
zabbix的GUI接口,通常與Server運行在同一臺主機上;
4、Proxy:
可選組件,常用於分佈監控環境中,
代理Server收集部分被監控端的監控數據並統一發往Server端;
5、Agent:
部署在被監控主機上,負責收集本地數據併發往Server端或Proxy端;
注:zabbix node也是 zabbix server的一種 。
默認情況下zabbix包含5個程序:
1、zabbix_agentd
客戶端守護進程。
此進程收集客戶端數據,例如cpu負載、內存、硬盤使用情況等。
2、zabbix_get
zabbix工具,單獨使用的命令。
通常在server或者proxy端執行獲取遠程客戶端信息的命令。通常用戶排錯。
例如在server端獲取不到客戶端的內存數據,
我們可以使用zabbix_get獲取客戶端的內容的方式來做故障排查。
3、zabbix_sender
zabbix工具,用於發送數據給server或者proxy,
通常用於耗時比較長的檢查。很多檢查非常耗時間,導致zabbix超時。
於是我們在腳本執行完畢之後,使用sender主動提交數據。
4、zabbix_server
zabbix服務端守護進程。
所有程序的的數據最終都是提交到server
備註:不是數據都是主動提交給zabbix_server,也有的是server主動去取數據。
5、zabbix_proxy
zabbix代理守護進程。
功能類似server,唯一不同的是它只是一箇中轉站,
它需要把收集到的數據提交/被提交到server裏。