學習-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)
2.主機組(host group)
- 主機的邏輯組:它包含
主機
和模板
,一個主機組裡的主機和模板之間並沒有任何之間的關聯、通常在給不同使用者組的主機分配許可權時使用主機組
3.監控項(item)
- 你想要接受的主機的特定資料(監控的指標),一個度量資料
4.觸發器(trigger)
- 一個被用於定義問題閾值和 評估 監控項接收到的資料的邏輯表示式
- 當接收到的資料高於設定的閾值時,觸發器狀態從
OK
變為Problem
,當接收到的資料低於閾值時,觸發器保留/返回一個OK
的狀態
5.事件(event)
- 單次發生的需要注意的事情,例如
觸發器狀態
改變或發現有監控代理自動註冊
6.異常(problem)
7.動作(action)
8.升級(escalation)
- 一個動作內執行操作的自動逸場景,傳送通知/執行遠端命令的序列
10.通知(notification)
11.遠端命令(remote command)
- 一個預定義好的,滿足一些條件的情況下,可以在被監控主機上自動執行的命令
12.模板(template)
- 一組可以被應用到一個或多個主機上的實體(監控項,觸發器,圖形,聚合圖形,應用,LLD,Web場景)的集合
- 模板的任務就是加快對主機監控任務的實施,也可以使監控任務的批次修改更簡單,
模板是直接關聯到每臺單獨的主機上的
13.應用(application)
14.web場景(web scrnario)
15.前端(frontend)
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 需要使用獨立的資料庫