學習-zabbix架構及術語

little小新發表於2024-08-18

Zabbix 組成架構

Zabbix Server

  • zabbix server是agent程式報告系統可用性、系統完整性和統計資料的核心元件、是所有配置資訊、統計資訊和運算元據的核心儲存器

zabbix資料庫儲存

  • 所有配置資訊和zavvix收集到的資料都被儲存再資料庫中

zabbix web 介面

  • 為了從任何地方和任何平臺都可以輕鬆的訪問zabbix、我們提供基於zabbix介面,該介面是zabbix server的一部分、通常(不一定)跟zabbix執行在同一臺物理機上
  • 如果使用的SQlite,zabbix web必須要和zabbix server執行在同一臺物理機上

zabbix proxy 代理伺服器

  • zabbix proxy 可以代替zabbix server收集效能和可用性資料、proxy代理伺服器是zabbix軟體可以選擇部署的一部分、當然、proxy代理伺服器可以幫助單臺zabbix server分擔壓力

zabbix agent 監控代理

  • zabbix agents監控代理部署在需要監控的目標主機上、能夠主動監控本地資源和應用程式、並將收集到的資料包告給zabbix server

zabbix 資料流

  • 監控方面:為了建立一個監控項(item)用於採集資料,必須先建立一個主機(host)
  • 告警方面:在監控項裡建立觸發器(trigger),透過觸發器(trigger)來出發告警動作(action)
  • 因此如果你想收到Server XCPU負載過高的告警,必須滿足:
    • 未server X建立一個host並關聯一個用於對cpu進行監控的監控項(item)
    • 建立一個Trigger,設定成當CPU負載過高時會觸發
    • Trigger被觸發,就會傳送告警郵件

Zabbix 常用術語的含義

1.主機(host)

  • 一臺你想監控的網路裝置、用ip或域名錶示

2.主機組(host group)

  • 主機的邏輯組:它包含主機模板,一個主機組裡的主機和模板之間並沒有任何之間的關聯、通常在給不同使用者組的主機分配許可權時使用主機組

3.監控項(item)

  • 你想要接受的主機的特定資料(監控的指標),一個度量資料

4.觸發器(trigger)

  • 一個被用於定義問題閾值和 評估 監控項接收到的資料的邏輯表示式
  • 當接收到的資料高於設定的閾值時,觸發器狀態從 OK變為Problem ,當接收到的資料低於閾值時,觸發器保留/返回一個OK的狀態

5.事件(event)

  • 單次發生的需要注意的事情,例如觸發器狀態改變或發現有監控代理自動註冊

6.異常(problem)

  • 一個處在 異常狀態的觸發器

7.動作(action)

  • 一個對事件(event)做出反應的預定義的操作

8.升級(escalation)

  • 一個動作內執行操作的自動逸場景,傳送通知/執行遠端命令的序列

9.媒介(media)

  • 傳送告警通知的手段,告警通知的途徑

10.通知(notification)

  • 利用已選擇的媒體途徑把事件相關的資訊傳送給使用者

11.遠端命令(remote command)

  • 一個預定義好的,滿足一些條件的情況下,可以在被監控主機上自動執行的命令

12.模板(template)

  • 一組可以被應用到一個或多個主機上的實體(監控項,觸發器,圖形,聚合圖形,應用,LLD,Web場景)的集合
  • 模板的任務就是加快對主機監控任務的實施,也可以使監控任務的批次修改更簡單,模板是直接關聯到每臺單獨的主機上的

13.應用(application)

  • 一組監控項組成的邏輯分組

14.web場景(web scrnario)

  • 利用一個或多個http請求來檢查網站的可用性

15.前端(frontend)

  • zabbix提供的web介面

16.zabbix API

  • zabbix API 允許你使用JSON RPC協議(是一個無狀態且輕量級的遠端過程呼叫RPC傳輸協議,其傳遞內容透過 JSON 為主)來建立,更新和獲取zabbix物件(如主機,監控項,圖形和其他)資訊或執行任何其他的自定義的任務

17.zabbix server

  • zabbix 軟體實現監控的核心程式,主要功能是與zabbix proxies和Agents進行互動、觸發器計算、傳送告警通知、並將資料集中儲存等

18.zabbix agent

  • 一個部署在監控物件上的,能夠註定監控本地資源和應用的程式
  • zabbix agent 部署在監控的目標上、主動檢測本地的資源和應用(硬體驅動,記憶體,處理器統計等)
  • zabbix agent 手機本地的操作資訊並將資料包告給zabbix server用於進一步的處理、一旦出現異常(比如硬碟空間已滿或者崩潰的服務程序),zabbix server 會主動告警管理員指定機器上的異常、zabbix agent的極端高效緣於它可以利用本地系統呼叫來完成統計資料的收集

19.被動(passive)和主動(active)檢查

  • zabbix agents 可以執行被動和主動兩種檢查方式
    • 被動檢查(passive check):agent應答資料請求、zabbix server(或者proxy)詢問agent資料,如,CPU的負載情況,然後zabbix agent返回結果
    • 主動檢查(Active checks):處理過程相對複雜,agent必須首先從zabbix server 索取監控項列表以進行獨立處理,然後週期性的傳送新的值給server
  • 執行被動或主動檢查是透過選擇相對應的檢測專案型別來配置的,item type。Zabbix agent處理監控項型別有:zabbix agent 和 zabbix agent(active)

20.zabbix proxy

  • 一個幫助zabbix server手機資料,分擔zabbix server的負載的程式
  • zabbix proxy 是一個可以從一個或多個首艦空裝置手機監控資料、並將資訊傳送到zabbix server的程序、基本上是代表server工作的,所有收集的資料都在本地進行快取,然後傳送到proxy所屬的zabbix server
  • 部署Proxy 是可選的,但是可能非常有益於分散單個 zabbix server的負載、如果只有proxy 收集資料,server上的程序就會減少cpu消耗和磁碟I/O負載
  • zabbix proxy 是完成遠端區域、分支機構、沒有本地管理員的網路集中監控的理想解決方案
  • zabbix proxy 需要使用獨立的資料庫

相關文章