Zabbix開源監控的全面詳解!

一、zabbix的基本概述

zabbix,這款企業級監控軟件,能全方位監控各類網絡參數,確保企業服務架構的安全穩定運行。它提供了靈活多樣的告警機制,幫助運維人員迅速發現并解決問題。此外,zabbix還具備分布式監控功能,能應對復雜架構下的監控挑戰,并配備了web頁面,以直觀的方式展示主機監控信息。

二、zabbix的架構組成

zabbix的架構主要由以下五個核心組件構成:

1、Server

zabbix server作為其核心組件,承擔著存儲所有配置信息、統計數據以及操作數據的重任。通過zabbix agent的定期匯報,server能夠實時了解各監控對象的可用性、完整性及其他相關統計信息。
2、Web頁面

Web頁面作為Zabbix系統的重要組成部分,通常與Zabbix Server部署在同一物理設備上,但在某些特殊情境下,也可以進行分離配置。它主要職能是呈現直觀的監控信息,從而便于運維人員對系統進行實時監控與管理。
3、數據庫

Zabbix數據庫是系統的核心組件之一,負責存儲Zabbix的配置信息、統計數據以及其他關鍵內容。通過數據庫,運維人員可以方便地查詢、管理和分析這些數據,以實現對系統狀態的深入了解和精準監控。
4、Proxy

Zabbix Proxy可以根據實際生產環境的需求進行選擇性地使用。當Zabbix Proxy被啟用時,它可以替代Zabbix Server進行數據采集,從而有效減輕Zabbix Server的負擔。這種組件特別適用于架構龐大、Zabbix Server負載過重,或者企業設備跨機房、跨網段,以及Zabbix Server無法直接與Zabbix Agent通信的復雜場景。
5、Agent

Zabbix Agent通常被部署在被監控的目標設備上,它負責主動監控本地的資源和應用程序,并實時將收集到的監控數據發送給Zabbix Server。

三、Zabbix的監控范圍

Zabbix能夠監控多種系統平臺,涵蓋Linux和Windows等主流操作系統。它還支持通過SNMP和SSH協議對路由交換設備進行監控。當Zabbix部署在服務器上時,它可以實時監控服務器的硬件參數,如CPU、內存和網絡性能,同時也能深入監控具體服務和應用程序的運行狀況及性能。

此外,Zabbix提供了多種監控接口,包括IPMI接口用于硬件監控,Agent接口用于系統監控,以及JMX接口用于Java監控。對于網絡設備,如路由器和交換機,無法直接安裝agent,但Zabbix通過SNMP協議與之通信,實現網絡設備的監控。另外,Zabbix還提供了UserParameter功能,使得用戶可以自定義監控項,以滿足特定的監控需求。

總的來說,Zabbix提供了全面的監控解決方案,能夠滿足各種復雜的監控場景。無論是硬件、系統、Java應用還是網絡設備,Zabbix都能通過合適的接口和協議進行實時監控和報警。

四、Zabbix的常用術語

在深入學習Zabbix的過程中,掌握一些常用的術語是必不可少的。以下是一些Zabbix的關鍵術語,它們將幫助你更有效地理解和使用Zabbix:

通過熟悉這些術語,你將能夠更流暢地與Zabbix系統進行交互,從而充分利用其強大的監控功能。
1、主機(host)

在Zabbix中,主機指的是需要被監控的設備,它可以通過IP地址或可解析的主機名來指定。
2、主機組(host group)

主機組在Zabbix中扮演著邏輯容器的角色,它匯聚了主機和模板。當需要為用戶或用戶組分配監控權限時,主機組便派上了用場。
3、監控項(item)

監控項是用于收集特定監控指標相關數據的單位,例如內存容量、CPU利用率或服務運行狀態等。這些數據均來自被監控的對象,且每個監控項都通過一個獨特的key進行標識。
4、觸發器(trigger)

觸發器是一種表達式,用于評估監控項的數據值是否處于預期的合理范圍內。一旦監控項的值超出了觸發器的設定界限,系統便會認為發生了故障;而當該值重新回到觸發器的規定范圍內時,系統則判定為正常狀態。
5、事件(event)

事件是觸發器觸發所產生的特定情況,或者是Zabbix系統自動定義的,關于主機上線注冊的自動事件。
6、動作(action)

動作是Zabbix系統針對觸發器觸發的特定事件所采取的具體應對措施。這些措施可以根據預先的配置進行,例如執行特定的腳本、向管理員的郵箱發送警告郵件等。
7、報警升級(escalation)

報警升級是指在觸發器觸發后,根據預設策略,采取更高級別的應對措施,如發送警報或執行遠程命令等。

8、媒介(media)

媒介是用于發送通知(告警)的手段,如微信、郵件、釘釘等,這些手段可以根據實際需求進行靈活配置。
9、通知發送(notification dissemination)

通過預先設定的媒介,向用戶傳遞關于特定事件的信息。
10、遠程命令(remote command)

運維人員預先編寫好的指令,當被監控主機觸發特定事件時,可實現遠程執行。
11、模板(template)

模板是一種預先定義好的被監控主機的預設條目集合,它涵蓋了監控項、觸發器、應用等關鍵信息。通過模板,運維人員可以快速且直接地將相關設置與特定主機相鏈接,簡化了監控配置的過程。
12、應用(application)

應用是一組監控項的集合,用于全面監控特定應用程序的性能和狀態。

13、web 場景(web scenario)

web 場景是用于檢測 web 站點可用性的一組或多個 HTTP 請求,通過模擬用戶行為來評估站點的響應速度和功能完整性。
14、前端(frontend)

在 Zabbix 的監控體系中,前端主要指的是其 web 接口部分。這一術語將在后續的內容中頻繁出現,無論是企業技術交流還是日常使用,都是不可或缺的關鍵概念。

五、Zabbix 的工作流程

在 Zabbix 的監控系統中,其工作流程可概括為以下幾個步驟:首先,Zabbix 客戶端需要安裝在被監控的設備上,負責定期收集各種數據,并將這些數據發送至 Zabbix 服務端;接著,Zabbix 服務端,通常安裝在監控設備上,負責接收客戶端發送的數據,并將其存儲至數據庫中;最后,Zabbix web 前端根據從數據庫中獲取的數據,在前端進行展示和繪圖,以便用戶能夠直觀地查看監控信息。

此外,Zabbix 的數據收集過程包括兩種主要模式:主動模式和被動模式。
1、主動模式

在主動模式下,Zabbix 客戶端會主動向 Zabbix 服務端發起請求,獲取需要監控的項列表,并隨后主動將監控項所需的數據提交給 Zabbix 服務端。
2、被動模式

在被動模式下,Zabbix 服務端會主動向 Zabbix 客戶端發出請求,要求其提供特定監控項的數據。隨后,Zabbix 客戶端會響應服務端的請求,并提交所需的數據。這種模式下,數據流動的方向是由 Zabbix 服務端發起的。在這里插入圖片描述

六、Zabbix 進程詳解

在默認配置下,Zabbix 包含六個工作進程:zabbix_agentd、zabbix_get、zabbix_proxy、zabbix_sender、zabbix_server 和 zabbix_gateway。值得注意的是,zabbix_java_gateway 是一個可選進程。這些進程各自承擔著特定的任務,共同構成了Zabbix的監控體系。
1、zabbix_agentd

zabbix_agentd作為Zabbix的客戶端守護進程,其核心職責是負責收集客戶端的監控項數據。
2、zabbix_server

zabbix_server作為Zabbix的服務端守護進程,其核心任務是負責收集來自Zabbix客戶端的監控數據。該進程監聽在10051端口上,等待客戶端數據的傳入。
3、zabbix_proxy

zabbix_proxy作為Zabbix的代理程序,其功能與zabbix_server相似,扮演著一個數據中轉站的角色。它負責收集數據,并將這些數據最終提交給zabbix_server進行進一步處理。
4、zabbix_get

zabbix_get是Zabbix的一個實用工具,它通常在zabbix_server或zabbix_proxy上運行。這個工具的主要功能是遠程獲取客戶端的信息,常被用于故障排查和問題解決。
5、zabbix_sender

zabbix_sender是Zabbix的另一個重要工具,它通常在Zabbix的客戶端上運行。這個工具特別適用于需要較長檢測時間的場景,它能夠主動將收集到的數據發送給Zabbix服務器。
6、zabbix_java_gateway

zabbix_java_gateway是Zabbix在20.0版本后新增的一項功能,專為支持JAVA設備而設計。它具備主動獲取數據的能力,卻無法進行被動數據收集。

七、zabbix的監控框架

在實際應用中,zabbix的監控框架會根據網絡環境和監控規模的不同而有所差異。它主要包含三種架構:server_client架構、master_node_client架構以及server_proxy_client架構。這些架構各自適應不同的應用場景,確保zabbix能夠靈活地滿足各種監控需求。
1、server_client架構

這是zabbix最簡單的架構形式,其中監控設備和被監控設備直接相連,實現zabbix_server與zabbix_client之間的直接數據交互。
2、zabbix_proxy_client架構

在zabbix的這種架構中,proxy充當了server和client之間的橋梁角色。它并不直接存儲數據,而是暫時保留從zabbix_agent端傳來的數據,隨后再將其轉發給server。這種設計特別適用于需要跨機房或跨網絡連接的中型網絡架構。

然而,在server_proxy_client架構中,一旦server設備發生故障,整個系統可能會陷入癱瘓狀態,無法正常工作。
3、master_node_client架構

master_node_client架構是zabbix中最為復雜的架構模式。它通常被部署在跨機房、跨網絡的大型網絡環境中,監控設備數量眾多。與server_proxy_client架構相比,其核心差異在于node與proxy的角色定位。

在master_node_client架構中,每個node都具備server端的某些功能,擁有獨立的配置文件和數據庫。這些node節點能夠直接與下游的client進行連接,或者通過proxy代理后進行連接。此外,當master設備發生故障時,并不會影響到node節點的正常運作。
7.1 三種架構模式的架構圖展示如下:在這里插入圖片描述
7.2 各模塊功能詳解:

1、Zabbix_Server:作為Zabbix的核心組件,主要負責收集agent的存活情況和監控數據。所有關于Zabbix的配置、統計和操作數據都會通過server存入database。

2、Zabbix_Database:作為存儲所有Zabbix配置信息和監控數據的數據庫,其重要性不言而喻。

3、Zabbix_Web:這是Zabbix的web管理界面,管理員可以通過它來配置Zabbix并查看相關監控信息。通常,它與Zabbix_server運行在同一臺主機上,但也可以獨立部署在另一臺服務器上。

4、Zabbix_Proxy:在分布式監控場景中,Zabbix_Proxy會代理Zabbix_server收集部分被監控主機的數據,并統一發送給server端。這種設置通常適用于需要監控超過500臺主機的情況。

5、Zabbix_Agent:它需要部署在被監控的主機上,主要負責收集該主機的數據,并將其發送給server端或proxy端。每個組件都有其特定的配置文件和日志文件,其中包含的重要參數需要在這些文件中進行配置。接下來,我們將詳細介紹這些組件的配置方法和相關參數。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/906842.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906842.shtml
英文地址,請注明出處:http://en.pswp.cn/news/906842.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

軟考軟件評測師——軟件工程之開發模型與方法

目錄 一、核心概念 二、主流模型詳解 (一)經典瀑布模型 (二)螺旋演進模型 (三)增量交付模型 (四)原型驗證模型 (五)敏捷開發實踐 三、模型選擇指南 四…

50天50個小項目 (Vue3 + Tailwindcss V4) ? | Blurry Loading (毛玻璃加載)

📅 我們繼續 50 個小項目挑戰!—— Blurry Loading 組件 倉庫地址:https://github.com/SunACong/50-vue-projects 項目預覽地址:https://50-vue-projects.vercel.app/ ? 組件目標 實現一個加載進度條,隨著加載進度的…

WPF性能優化之延遲加載(解決頁面卡頓問題)

文章目錄 前言一. 基礎知識回顧二. 問題分析三. 解決方案1. 新建一個名為DeferredContentHost的控件。2. 在DeferredContentHost控件中定義一個名為Content的object類型的依賴屬性,用于承載要加載的子控件。3. 在DeferredContentHost控件中定義一個名為Skeleton的ob…

VLM-MPC:自動駕駛中模型預測控制器增強視覺-語言模型

《VLM-MPC: Model Predictive Controller Augmented Vision Language Model for Autonomous Driving》2024年8月發表,來自威斯康星大學的論文。 受視覺語言模型(VLM)的緊急推理能力及其提高自動駕駛系統可理解性的潛力的啟發,本文…

推薦系統里真的存在“反饋循環”嗎?

推薦系統里真的存在“反饋循環”嗎? 許多人說,推薦算法不過是把用戶早已存在的興趣挖掘出來,你本來就愛聽流行歌、買潮牌玩具,系統只是在合適的時間把它們端到你面前,再怎么迭代,算法也改變不了人的天性&a…

代碼混淆技術的還原案例

案例一 eval 混淆 特征 : 反常的 eval 連接了一堆數據 練習網站 https://scrape.center/ spa9 這個案例 基本的還原方法 但是這個代碼還是非常的模糊不好看 優化一下 : 當然還有更快捷的方法 : 好用的 js混淆還原的 web &#xf…

鴻蒙Flutter實戰:22-混合開發詳解-2-Har包模式引入

以 Har 包的方式加載到 HarmonyOS 工程 創建工作 創建一個根目錄 mkdir ohos_flutter_module_demo這個目錄用于存放 flutter 項目和鴻蒙項目。 創建 Flutter 模塊 首先創建一個 Flutter 模塊,我們選擇與 ohos_app 項目同級目錄 flutter create --templatemodu…

Go核心特性與并發編程

Go核心特性與并發編程 1. 結構體與方法(擴展) 高級結構體特性 // 嵌套結構體與匿名字段 type Employee struct {Person // 匿名嵌入Department stringsalary float64 // 私有字段 }// 構造函數模式 func NewPerson(name string, age int) *Pe…

Java 函數式接口(Functional Interface)

一、理論說明 1. 函數式接口的定義 Java 函數式接口是一種特殊的接口,它只包含一個抽象方法(Single Abstract Method, SAM),但可以包含多個默認方法或靜態方法。函數式接口是 Java 8 引入 Lambda 表達式的基礎,通過函…

【python代碼】一些小實驗

目錄 1. 測試Resnet50 ONNX模型的推理速度 1. 測試Resnet50 ONNX模型的推理速度 ############################### # 導出resnet50 模型 # 測試onnx模型推理 cpu 和 GPU 的對比 ###############################import time import numpy as np import onnxruntime as ort im…

5.Java 面向對象編程入門:類與對象的創建和使用?

在現實生活中,我們常常會接觸到各種各樣的對象,比如一輛汽車、一個學生、一部手機等。這些對象都具有各自的屬性和行為。例如,汽車有顏色、品牌、型號等屬性,還有啟動、加速、剎車等行為;學生有姓名、年齡、學號等屬性…

從開發者角度看數據庫架構進化史:JDBC - 中間件 - TiDB

作者: Lucien-盧西恩 原文來源: https://tidb.net/blog/e7034d1b Java 應用開發技術發展歷程 在業務開發早期,用 Java 借助 JDBC 進行數據庫操作,雖能實現基本交互,但需手動管理連接、編寫大量 SQL 及處理結果集&a…

工業智能網關建立烤漆設備故障預警及遠程診斷系統

一、項目背景 烤漆房是汽車、機械、家具等工業領域廣泛應用的設備,主要用于產品的表面涂裝。傳統的烤漆房控制柜采用本地控制方式,操作人員需在現場進行參數設置和設備控制,且存在設備智能化程度低、數據孤島、設備維護成本高以及依靠傳統人…

故障率預測:基于LSTM的GPU集群硬件健康監測系統(附Prometheus監控模板)

一、GPU集群健康監測的挑戰與價值 在大規模深度學習訓練場景下,GPU集群的硬件故障率顯著高于傳統計算設備。根據2023年MLCommons統計,配備8卡A100的服務器平均故障間隔時間(MTBF)僅為1426小時,其中顯存故障占比達38%&…

Vue 樣式不一致問題全面分析與解決方案

文章目錄 1. 問題概述1.1 問題表現1.2 問題影響 2. 根本原因分析2.1 Vue 的渲染機制與樣式加載時機2.2 Scoped CSS 的工作原理2.3 CSS 模塊化與作用域隔離2.4 樣式加載順序問題2.5 熱重載(HMR)與樣式更新 3. 解決方案3.1 確保樣式加載順序3.1.1 預加載關鍵 CSS3.1.2 控制全局樣…

[免費]微信小程序寵物醫院管理系統(uni-app+SpringBoot后端+Vue管理端)【論文+源碼+SQL腳本】

大家好,我是java1234_小鋒老師,看到一個不錯的微信小程序寵物醫院管理系統(uni-appSpringBoot后端Vue管理端),分享下哈。 項目視頻演示 【免費】微信小程序寵物醫院管理系統(uni-appSpringBoot后端Vue管理端) Java畢業設計_嗶哩嗶哩_bilibi…

測試總結(一)

一、測試流程 參與需求評審-制定測試計劃-編寫測試用例-用例評審-冒煙測試-測試執行-缺陷管理-預發驗收測試-發布線上-線上回歸-線上觀察-項目總結 二、測試用例設計方法 等價類劃分(處理有效/無效輸入) 邊界值分析(臨界值測試&#xff09…

SAP-ABAP:ABAP異常處理與SAP現代技術融合—— 面向云原生、微服務與低代碼場景的創新實踐

專題三:ABAP異常處理與SAP現代技術融合 —— 面向云原生、微服務與低代碼場景的創新實踐 一、SAP技術演進與異常處理的挑戰 隨著SAP技術棧向云端、微服務化和低代碼方向演進,異常處理面臨新場景: Fiori UX敏感度:用戶期望前端友…

DC-DC電路的自舉電容電路原理

在以往的電子產品設計中,我們經常會選型 DCDC 芯片,在選型過程中經常遇到有些DC-DC電路中需要用到自舉電容,本文主要分析自舉電容在DC-DC電路中的原理。 無論同步或者異步整流,經常會看到一個自舉電容,常并聯在DC-DC的…

android studio 開啟無線調試

1、在工具的模擬器點擊下后,會出現下面菜單: 選擇Pair Devices Using Wi-Fi 發現一直在轉圈,并不會連接上,之前在android12的時候,發現一連就上了,現在換成了android14,連不上了。 2、選擇用命令…