青蛙學Linux—Zabbix Agent的主動模式和被動模式

一、爲何要使用Zabbix Agent的主動模式?

默認狀況下,Zabbix Agent運行在被動模式。在這種模式下,Zabbix Server會去每一個Zabbix Agent上抓取數據。這種模式在Zabbix Server監控主機少時,不會出現問題。可是,當監控的主機數量過多時,使用這種模式將照成嚴重的性能問題,表現以下:html

  • Zabbix Web操做卡頓,出現502錯誤
  • 監控數據不許確,報警超時
  • 圖層斷裂
  • Zabbix Server開啓的poller進程過多,就算減小監控項數量,新加入必定量的機器後也會出問題

要解決Zabbix Server的性能問題,可使用Zabbix Proxy部署分佈式監控或者使用Zabbix Agent的主動模式。Zabbix Agent在使用主動模式時,會主動向Zabbix Server發送本身收到的監控數據,以減輕Zabbix Server的負擔(建議在監控超過200臺主機時使用主動模式)。shell

二、Zabbix Agent開啓主動模式

Zabbix Agent要開啓主動模式,必須修改Zabbix Agent配置文件的如下三項:app

StartAgents
ServerActive
Hostname
  • StartAgents:定義Zabbix Agent啓用被動模式監聽進程的數量。設置爲0表示關閉被動模式,此時10050端口也會被關閉;設置非零能夠兼容被動模式
  • ServerActive:定義主動模式接收監控數據的Zabbix Server
  • Hostname:必須與Zabbix Web中添加主機時的主機名對應,這樣Zabbix Server才能爲收集到的數據找到對應關係

三、Zabbix Server配置調整

爲了保證Zabbix Server的性能,須要在Zabbix Server的配置中調整如下兩項:分佈式

StartPollers
StartTrappers
  • StartPollers:定義Zabbix Server主動拉取數據的進程數,在使用主動模式後應該減小進程數
  • StartTrappers:定義Zabbix Server接收Zabbix Agent發送數據的進程數,在使用主動模式後應該加大進程數

四、Zabbix Web監控項的修改

在使用Zabbix Agent的主動模式後,須要在Zabbix Web中將監控項的數據來源也修改成Zabbix Agent主動模式。進入模板中的監控項,修改如下配置:性能

1

將類型修改成Zabbix客戶端(主動式),這樣就能夠在Zabbix Web獲取到Zabbix Agent經過主動模式發送的數據了。code

相關文章
相關標籤/搜索