
一文帶你掌握 Zabbix從入門到實戰部署Rocky Linux 9.6 Zabbix 6.0 LTS作者zhang-hub-dd環境Rocky Linux 9.6x86_64/ Zabbix 6.0 LTS / MySQL 8.0聲明本文為實戰部署記錄所有命令均經過驗證可直接上手。目錄一、為什么要做監控二、Zabbix 是什么三、Zabbix 核心特性四、Zabbix 系統架構五、數據是怎么被采集上來的六、版本怎么選七、部署前環境準備八、部署 Zabbix Server九、部署 Zabbix Agent十、Web 前端初始化十一、添加監控主機與監控項十二、配置告警十三、分布式監控十四、grafana可視化十五、常見問題排查一、為什么要做監控運維的本質是讓業務穩定運行。但在真實的生產環境中服務器少則幾十臺、多則上千臺靠人肉盯top、df -h、ping顯然不現實。等到業務方反饋頁面打不開了才發現問題往往損失已經造成。監控要解決的核心問題就三個先知先覺—— 在故障發生之前預警如磁盤快滿了、內存持續飆高快速定位—— 故障發生后第一時間縮小故障范圍是網絡、主機、還是應用數據支撐—— 用歷史趨勢數據做容量規劃什么時候該擴容。而 Zabbix就是業內最流行的開源監控解決方案之一。二、Zabbix 是什么Zabbix是一個基于GPL v2協議的開源分布式監控系統由拉脫維亞的 Alexei Vladishev 于 2001 年創建現由 Zabbix SIA 維護至今已有 20 余年歷史。它具備監控、采集、告警、可視化、報表等一整套能力官方宣稱可以支持數十萬監控項的采集上千臺甚至更多的設備納管覆蓋服務器 / 虛擬機 / 網絡設備 / 數據庫 / 中間件 / 云資源 / 容器等多種對象一句話概括Zabbix 是一個采、存、算、顯、告一體化的開源監控平臺。三、Zabbix 核心特性特性說明數據采集支持 Agent、SNMP、IPMI、JMX、SSH、Telnet、HTTP、ODBC、自定義腳本等十幾種方式實時監控秒級、分鐘級采集周期可自由配置強大告警觸發器Trigger表達式靈活支持郵件、釘釘、企業微信、飛書、短信、腳本等告警介質可視化內置儀表盤、圖形、地圖、幻燈片輪播支持自定義數據存儲基于關系型數據庫MySQL / PostgreSQL / Oracle歷史數據可落庫與歸檔分布式通過 Proxy 實現分布式監控支持大規模橫向擴展高可用支持 Server 集群 數據庫集群實現高可用部署開放 API提供 JSON-RPC 風格的 HTTP API方便二次開發與平臺對接多語言官方支持中文等多種語言的 Web 界面權限體系基于用戶組/角色的細粒度權限控制支持多租戶解析這張表里最值得關注的是數據采集方式多和開放 API兩條。采集方式多意味著你幾乎不需要寫輪子——網絡設備走 SNMP、Java 應用走 JMX、老機器走 SSH都能接進來而 API 則是 Zabbix 能融入現有自動化平臺CMDB、工單系統、發布系統的關鍵。四、Zabbix 系統架構核心組件及其職責組件作用Zabbix Server大腦。負責數據采集調度、觸發器計算、告警發送、報表生成常駐進程zabbix_serverDatabase數據倉庫。存儲配置信息、采集到的歷史數據、趨勢數據。生產環境建議獨立部署Web Frontend基于 PHP 的 Web 管理界面負責可視化展示與操作配置Zabbix Agent安裝在被監控主機上的采集探針支持 Linux/Windows/macOS 等Zabbix Proxy分布式代理替 Server 分攤采集壓力適合跨機房、大并發場景Zabbix Java Gateway專門用于采集基于 JMX 的 Java 應用如 Tomcat、Kafka指標Zabbix Get命令行工具用于從 Agent 手動取數是排障利器端口約定務必記住防火墻配置要用10050/TCP—— Agent 監聽供 Server 被動拉取數據或被 Proxy 拉取10051/TCP—— Server 監聽接收 Agent 主動上報和 Proxy 轉發80 / 8080/TCP—— Web 前端訪問端口解析排障時只要抓住兩個端口就夠了——“誰拉誰的數據誰就監聽誰”。Server 要被動拉數據 → 它主動連 Agent 的10050Agent 主動上報 → 它連 Server 的10051。下文排查小節會反復用到這個思路。五、數據是怎么被采集上來的Zabbix 的采集模型可以用一句話概括Host主機→ Item監控項→ Trigger觸發器→ Action動作→ 告警/執行。Host(主機) ──定義── Item(監控項) ──超過閾值── Trigger(觸發器) │ ▼ Media(告警介質) ──發送── Action(動作) ──條件匹配──┘兩種核心采集模式被動模式默認Server 按周期主動向 Agent 發起請求Agent 把結果回傳。適合主機數量不多、Server 壓力可控的場景。主動模式Agent 周期主動向 Server或 Proxy上報數據。適合大規模場景能把采集壓力分攤到 Agent 端。常見的監控項類型Item type類型適用場景Zabbix agent默認探針采集CPU、內存、磁盤、網絡等Zabbix agent (active)主動模式采集SNMP agent交換機、路由器、防火墻等網絡設備IPMI服務器硬件傳感器溫度、風扇、電源JMXJava 中間件指標HTTP agent網頁狀態碼、響應時間、接口可用性Simple checkTCP 端口存活、ICMP ping 等SSH / Telnet無法裝 Agent 時的遠程命令采集DB monitor直接查詢數據庫性能指標External check / Script自定義腳本zabbix 萬能擴展點解析這條鏈路是 Zabbix 的神經反射弧。Item 決定采什么Trigger 決定什么時候算異常Action 決定異常了通知誰、怎么通知。后續部署你會親手把這條鏈路走一遍那時候再回來看這張圖會非常清晰。六、版本怎么選Zabbix 的版本節奏分為兩類版本類型發布節奏支持期適用場景LTS長期支持約每兩年一次6.0、7.0……約 5 年1 年擴展支持生產環境首選標準版約每半年一次6.2、6.4、7.2……發布至下一個版本 約 1 個月嘗鮮新特性、測試環境本實驗為什么選 Zabbix 6.0 LTS6.0 是首個完整支持MySQL 8.0的 LTS 版本與本文環境Rocky 9.6 MySQL 8.0完全匹配官方標準支持期覆蓋到 2026 年另有擴展支持生產環境可放心用中文資料、模板、社區討論最豐富遇到問題最容易搜到答案。解析判斷該不該升 7.0 LTS只看一件事——你的歷史數據、模板、二次開發代碼是否兼容。Zabbix 升級后zabbix_server.conf和模板基本都是向后兼容的但 API 調用和自定義腳本要回歸測試。生產環境跟著 LTS 走、測試環境大膽用新版本是通用策略。七、部署前環境準備7.1 環境要求項目建議操作系統Rocky Linux 9.6 x86_64CPU / 內存測試環境 2C / 4G 足夠磁盤50G歷史數據很吃磁盤數據庫MySQL 8.0Rocky 9.6 官方鏡像源版本Zabbix6.0 長期維護版本7.2 網絡規劃本文規劃兩臺機器主機名IP角色server1192.168.40.141Zabbix Server MySQL Web 前端server2192.168.40.142被監控主機Agent7.3 基礎環境初始化兩臺機器都執行# 1. 關閉 SELinuxsed-is/^SELINUX.*/SELINUXdisabled//etc/selinux/config# 2. 關閉并禁用 firewalldsystemctl disable--nowfirewalld# 3. 設置時區與時間同步監控數據時間錯亂是很多靈異問題的根源timedatectl set-timezone Asia/Shanghai dnfinstall-ychronysystemctlenable--nowchronyd timedatectl set-ntptrue# 4. 設置主機名分別設置hostnamectl set-hostname server1# 141 執行hostnamectl set-hostname server2# 142 執行解析① 不關 SELinux 的話Zabbix 官方提供了zabbix-selinux-policy包來放行但實驗環境直接關閉最省事②時間同步務必做——Zabbix 觸發器判斷異常靠的是時間序列Server 和 Agent 時差過大會導致數據看起來斷檔或誤報。7.4 下載入口Zabbix 官方提供安裝向導選好6.0 / Rocky Linux / 9 / MySQL / Apache后會直接給你可復制的命令zabbix官網安裝地址八、部署 Zabbix Server8.1 添加官方源并安裝組件192.168.40.141選擇合適的下載版本和服務官方會提供相應的安裝方式在下面執行安裝 zabbix 組件步驟對應到命令行就是這幾步# 安裝 zabbix-release 包寫入官方 yum 源 導入 GPG 密鑰rpm-Uvhhttps://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpm dnf clean all# 安裝 Server連 MySQL Web 前端PHP Apache 配置 數據庫初始化腳本dnfinstall-yzabbix-server-mysql zabbix-web-mysql zabbix-apache-conf\zabbix-sql-scripts zabbix-selinux-policy zabbix-agent解析逐個說清楚裝了什么——zabbix-server-mysql核心的zabbix_server守護進程zabbix-web-mysqlPHP 編寫的 Web 前端程序zabbix-apache-conf自動在 httpd 下生成/etc/httpd/conf.d/zabbix.conf虛擬主機配置zabbix-sql-scripts數據庫初始化腳本server.sql.gz里面是表結構和內置模板數據zabbix-selinux-policySELinux 放行策略雖然實驗關了 SELinux裝上無害zabbix-agent連 Server 自己也要被監控順手裝上。8.2 初始化 MySQL 數據庫初始化 mysql 數據庫mysql-uroot-p-- 建庫字符集必須 utf8mb4支持中文/emoji圖形標題中文不亂碼CREATEDATABASEzabbixCHARACTERSETutf8mb4COLLATEutf8mb4_bin;-- 建專用賬號生產環境別用 root 連 ZabbixCREATEUSERzabbixlocalhostIDENTIFIEDBYZabbix123;GRANTALLPRIVILEGESONzabbix.*TOzabbixlocalhost;-- 允許導入腳本里創建存儲函數見下方解析SETGLOBALlog_bin_trust_function_creators1;QUIT;導入官方預生成的表結構與初始數據zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz|\mysql --default-character-setutf8mb4-uzabbix-pZabbix123zabbix# 導入完成后立刻關回安全值mysql-uroot-p-eSET GLOBAL log_bin_trust_function_creators 0;解析為什么一定要log_bin_trust_function_creators 1server.sql.gz里有存儲函數如nan()。MySQL 為了安全默認不允許在未指定DETERMINISTIC等屬性時創建函數此時直接導入會報ERROR 1419 (HY000)。臨時打開這個開關再導入成功后務必關回 0避免留下安全敞口。順帶一提server.sql.gz里不止有表結構還預置了大量官方監控模板Linux、MySQL、Nginx……這就是后面模板直接套用的數據來源。8.3 配置 Server 連接數據庫并啟動服務為 zabbix 配置 mysql然后重啟服務。注rocky9 自帶 php 和 httpd 服務。# 在 zabbix_server.conf 里寫入數據庫密碼默認是注釋掉的sed-is/^# DBPassword/DBPasswordZabbix123//etc/zabbix/zabbix_server.confgrep^DBPassword/etc/zabbix/zabbix_server.conf# 確認已生效# 啟動并開機自啟systemctlenable--nowzabbix-server zabbix-agent httpd php-fpm systemctl status zabbix-server# active (running) 即成功驗證監聽端口ss-lntp|grep-E10051|10050|:80\s# zabbix-server 監聽 10051zabbix-agent 監聽 10050httpd 監聽 80解析Rocky 9 的 httpd 與 php-fpm 由系統自帶無需再裝 LAMP。改完配置后 Zabbix 首次啟動會自動連接 MySQL 做一次版本檢查如果 8.2 里庫沒導成功這里zabbix-server會反復重啟并報Cannot connect to database——看到這個報錯先回 8.2 排查別急著改別處。部署成功九、部署 Zabbix Agent9.1 安裝并配置 Agent192.168.40.142# 與 Server 端相同先加官方源rpm-Uvhhttps://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpm dnfinstall-yzabbix-agent修改配置vim/etc/zabbix/zabbix_agentd.confServer192.168.40.141# 被動模式允許哪些 Server 來拉數據白名單ServerActive192.168.40.141# 主動模式Agent 主動上報給哪個 ServerHostnameserver2# Agent 自己的主機名必須與 Web 端創建的主機名一致Hostname是Agent 自己的主機名必須與 Web 端創建的主機名一致sever要依靠這個連接agentweb網頁主機名conf配置文件三者必須一致。啟動并驗證systemctlenable--nowzabbix-agent.service ss-lntp|grep10050# 確認 Agent 已監聽解析很多人分不清Server和ServerActive。其實它們對應兩種采集模式——Server是被動模式的白名單它告訴 Agent允許誰來主動連接我。如果配錯成 Agent 的 IPServer 來拉數據會被拒絕ServerActive是主動模式的目標地址告訴 Agent我主動把數據報給誰。所以Server 里寫 Server 的 IP、ServerActive 里也寫 Server 的 IP通常就對了。Hostname必須和 Web 端創建主機時填的主機名完全一致這是主動模式對賬的依據差一個字符都取不到數據。9.2 在 Web 端添加主機接入 Agent路徑監測 → 主機 → 創建主機填寫配置項填寫內容主機名稱server2必須與 Agent 配置文件里的 Hostname 一致可見的名稱Agent02-業務機隨便起用于顯示群組新建或選擇Linux servers接口AgentIP192.168.40.142端口10050添加成功綠色 ZBX 圖標 Agent 連接正常灰色 暫時無數據紅色 采集失敗多半是防火墻、端口、Hostname 不一致導致。解析這里最容易踩的坑是接口欄。接口Interface是給被動模式用的——Server 要知道去哪個 IP:端口 拉數據而主機名稱Host name是給主動模式對賬用的。兩種模式都配的情況下兩個字段都別省。如果后面發現灰色 ZBXzabbix_get -s 192.168.40.142 -k agent.ping一下一步就能定位是網絡不通還是名字對不上。9.3 agent模式主動模式Agent 主動發起連接去找 Zabbix ServerServer 監聽 10051 端口Server 接收數據存入數據庫Server 不會主動連 Agent主動模式下Web 界面主機監控項類型要改成Zabbix agent(active)不能繼續用被動的 Zabbix agent主動模式只需要 agent 出站訪問 10051不需要 server 入站訪問 agent 機器被動模式Server 發起 TCP 連接訪問 Agent 的 10050 端口 Agent 收到請求采集本機數據把結果返回給 ServerAgent 數量巨大時Server 會大量創建連接壓力上漲** 主動模式下常常需要搭配被動模式模板使用主動模式下不會去檢測agent的10050端口所以單獨使用主動模板下agent的狀態會顯示為未知十、Web 前端初始化10.1 配置 PHP 時區sed-is/^; php_value\[date.timezone\].*/php_value[date.timezone] Asia\/Shanghai/\/etc/php-fpm.d/zabbix.conf systemctl restart php-fpm解析Zabbix Web 前端用 PHP 生成PHP 未設置時區會直接拋date.timezone相關報錯并且所有圖形的時間軸都會偏移。改完必須重啟 php-fpm不是 httpd配置才會被重新加載。10.2 添加 PHP 頁面漢化與中文字體添加 php 頁面漢化安裝中文字體圖形標題里的中文才不會顯示成方塊dnfinstallglibc-langpack-zh-ylocalectl list-locales|grepzh_CN解析Zabbix 的語言包由系統 locale 提供。只裝glibc-langpack-zh還不夠直觀——如果后續圖形標題中文亂碼多半是Web 界面語言沒切到中文右上角頭像 → 語言或字體缺失需安裝wqy-microhei之類的字體到/usr/share/fonts。實驗環境裝上中文 locale 即可滿足絕大多數展示。10.3 首次登錄瀏覽器訪問http://192.168.40.141默認賬號Admin密碼zabbix解析首次登錄系統會強制修改 Admin 密碼這是安全基線別跳過。登錄后建議先去管理 → 一般 → 用戶界面把默認語言切成中文后續操作體驗會好很多。十一、添加監控主機與監控項這一章開始把采集→判斷→展示真正落地到 Web 上建議對照第五節的數據流模型一起看。11.1 添加監控項CPU 每分鐘負載路徑配置 → 主機 → 監控項 → 創建監控項創建一個 cpu 每分鐘負載的監控項測試消耗 CPU 的命令制造負載用來驗證采集md5sum /dev/zero# 多開幾個終端并行執行能看到 load 立刻飆高解析監控項Item是 Zabbix 的最小采集單元核心就兩個字段——Key 和間隔。Key決定采什么。CPU 負載的 key 是system.cpu.load[percpu,avg1]中括號是參數percpu表示按每核歸一化、avg1表示取 1 分鐘平均。這樣配置的好處是多核機器 load 不會虛高8 核 load 8 才算滿。間隔決定多久采一次。CPU 這種秒級變化的數據可以設 10~30s磁盤容量這種變化慢的設 1~5min 就夠別把 Server 和數據庫拖垮。11.2 添加根分區監控項根分區使用量根分區剩余空間百分比解析磁盤類 key 統一用vfs.fs.size[/,used]這種格式中括號第一個參數是掛載點第二個是取值維度used已用字節free剩余字節pfree剩余百分比total總容量。建議同時監控used看絕對增長和pfree看相對水位觸發器一般掛在pfree上低于 5% 報警比已用 45G 報警更有普適性。11.3 為監控項添加觸發器路徑配置 → 主機 → 觸發器 → 創建觸發器cpu 負載過高觸發器根分區空閑空間低于 95% 觸發器即剩余空間不足 5%解析觸發器Trigger是異常判定規則核心就是表達式last(/主機名/key) 閾值。幾個高頻用法last(/server2/system.cpu.load[percpu,avg1]) 3最近一次負載 3min(/server2/... ,5m) 3最近 5 分鐘最小值仍 3防止瞬時抖動誤報max(...,1h) 閾值反向用比如CPU 持續低也可以告警。實戰建議給表達式加5m 或 10m 的窗口如min(...,5m)否則 CPU 一瞬間飆高就會連環告警刷屏。11.4 添加監控圖形路徑配置 → 主機 → 圖形 → 創建圖表cpu 負載的圖形表示執行 cpu 負載測試命令后查看圖形解析圖形Graph是把監控項組合展示的層。一個圖形里可以畫多條線的多個 item比如把 CPU 的 1/5/15 分鐘負載畫在一張圖里對比。它不產生額外數據純粹是查詢歷史數據做可視化。數據來源有兩條**歷史數據History**保留原始值、**趨勢數據Trends**是降采樣后的匯總——圖形默認用的是趨勢數據所以看大趨勢很正常要精確到秒級請切歷史視圖。11.5 添加模板創建新模板路徑配置 → 模板 → 創建模板為新創建的空模板添加配置新模板成功添加三條監控項配置解析模板Template是 Zabbix 批量納管的靈魂——一個模板 一組 Item Trigger 圖形的集合。給主機掛上模板等于一次性灌入整套監控規則。生產里你不會給每臺機器手敲幾十個 item而是官方模板直接套裝好zabbix-sql-scripts時自帶的Linux by Zabbix agent等自己建的業務模板如MySQL 巡檢“Nginx 狀態”復制給同構機器。注意模板修改會同步到所有掛它的主機這既是優點一處改、處處生效也是風險改壞了全掛改模板前建議先復制一份再改。11.5 添加發現動作和自動注冊先啟用發現動作再啟動自動發現規則zabbix-server 主動掃描規則內的網絡找存活設備發現之后根據動作對應的操作進行添加主機連接模板等相應的操作。自動注冊agent主動上報給server申請注冊主機。所以需要修改agent的配置文件添加元數據配置.這樣agent啟動后主動向server發送攜帶元數據(主機名主機元數據的注冊請求配置agent元數據十二、配置告警監控只有加上告警才算閉環12.1 配置告警媒介以郵件為例啟用觸發器動作路徑配置 → 動作 → 觸發器動作zabbix自帶的觸發器動作是默認向zabbix組中所有用戶發送全部問題如果需要配置用戶自己的報警需要單獨設置1觸發器動作。為用戶配置收件郵箱路徑管理 → 媒介 → Email解析告警介質Media是用什么通道發。默認內置 Email、腳本、短信等類型。Email 類型里最關鍵的是 SMTP 配置服務器、端口、認證、發件人郵箱配完先點測試發送驗證一遍別等真出故障才發現發不出去。啟用用戶收件郵箱路徑管理 → 用戶 → 點擊 Admin → 告警媒介 → 添加填入接收郵箱解析介質配好 ≠ 用戶會收到。每個用戶要手動綁定介質填自己的接收郵箱并且可以設置啟用時間段和嚴重級別過濾。很多人配完動作沒反應八成是介質沒綁定到用戶這一步漏了。12.2 為觸發器添加動作為前面配置的 cpu 負載過高觸發器添加動作路徑配置 → 動作 → 觸發器動作 → 創建動作為動作添加相應操作添加成功解析動作Action是條件 操作的規則條件哪些主機、哪些觸發器、什么級別命中后執行操作發給哪些用戶/群組、走哪種介質、發什么內容。{TRIGGER.NAME}、{HOST.NAME}這些是 Zabbix 內置的宏在操作內容里直接引用就能自動填充實際值告警內容會專業很多。12.3 添加用戶組及用戶添加用戶組路徑管理 → 用戶群組 → 創建用戶組給新創建的用戶組添加用戶路徑管理 → 用戶 → 創建用戶同時也可以設定用戶的報警介質測試新用戶登錄解析用戶組User Group承載權限邊界——給組分配只讀 / 讀寫的對象范圍組里的用戶繼承權限。生產環境的做法是監控只看圖 → 只讀組要改監控項 → 運維組。新建用戶默認無任何權限必須掛到組里才有東西可看。12.4 告警鏈路驗證用壓測制造一次 CPU 告警驗證整條鏈路md5sum /dev/zero# 在 server2 上壓 CPU讓負載飆過觸發器閾值解析驗證時建議去報表 → 動作日志看動作是否觸發、發送是否成功。鏈路是Item 采到高負載 → Trigger 判定異常 → Action 匹配 → 按用戶介質發送郵件。哪一環斷了對照 12.1~12.3 排查介質沒配通、用戶沒綁介質、動作沒啟用是三個最高頻的原因。十三、分布式監控再開一臺代理機器192.168.40.143(server3):根據這個選項可以查看官網的proxy安裝方式:根據這個步驟安裝完可以查看10051端口是否存在因為proxy的端口也是10051所以一定不能跟server在同一臺機器上。修改etc下的zabbix_proxy.conf文件proxy 只保證zabbix_proxy.conf 里面的 Hostname 與 Web【代理】頁面填寫的代理名稱嚴格一致即可。不一定必須是主機名Server192.168.40.141# zabbix server的ipDBPasswordpassword# 數據庫密碼javaGateway192.168.40.142# JMX服務主機IPStartJavaPollers# 啟動進程數然后重新i啟動proxy服務systemctl restart zabbix-proxy在server上配置代理proxy的作用就是減輕Server的壓力是Zabbix 代理組件介于 Zabbix Server 和被監控設備之間承擔監控數據采集中轉agent傳來的數據先存入 Proxy 本地 SQLite 數據庫不直接發給 Server。所以proxy可以減少 Server 瞬時連接數、減少server端 MySQL 瞬間寫入壓力多用于跨網段、分布式、異地分支機構場景。但觸發器和告警計算仍然由 Server 完成proxy 不處理告警。創建proxy 路徑管理 → proxy → 創建proxy設置agent主機使用proxy采集數據更新server配置緩存zabbix_server-Rconfig_cache_reload#刷新server配置緩存systemctl restart zabbix_server# 重啟proxy服務zabbix_server -R config_cache_reload 刷新server配置緩存,web配置后只是寫入數據庫還沒有刷新到內存不手動刷新內存需要等待默認時間刷新。并且proxy一定要在刷新server配置緩存后啟動否則會報錯。正常重啟server后會在日志中出現3. 現在zabbix_agent要向proxy上報核心數據所以修改server2上的agent配置。修改etc下的zabbix_agentd.conf文件Server192.168.40.143# 指向proxy主機IPServerActive192.168.40.143重啟agent服務。4. 代理成功十四、grafana可視化Grafana 是開源可視化儀表盤工具 是 Go 寫的程序內置完整 http web 服務默認監聽 3000 端口。本身不采集數據只做讀時序數據庫 → 畫圖、做監控大屏、告警。grafana官網入口安裝grafana-enterprise_12.4.8_31135008312_linux_amd64.rpm版本安裝完后直接啟動查看3000端口是否監聽成功。直接登錄grafana:192,168.40.100:3000,默認賬戶名和密碼都是admingrafana通過插件化來完成不同的可視化需求安裝zabbix插件。連接我們的zabbix_server獲取監控數據測試是否連接成功使用樣例十五、常見問題排查癥狀排查思路Web 打開 404 / 打不開檢查httpd是否啟動、防火墻 80 端口、/etc/httpd/conf.d/zabbix.conf是否加載數據庫初始化報ERROR 1419沒設log_bin_trust_function_creators1重新設置后再導一次主機顯示紅色 ZBX① Server→Agent 的 10050 端口不通telnet 192.168.100.20 10050② Agent 的Server未配置③ Hostname 不一致④ SELinux/防火墻攔截頁面報 PHP 時區錯誤檢查/etc/php-fpm.d/zabbix.conf的date.timezone后重啟php-fpm取不到自定義數據用zabbix_get -s agentIP -k key在 Server 端手動驗證 key 是否返回告警沒發出去① 介質類型測試發送是否成功② 用戶是否綁定介質③ 動作條件和操作是否配置正確④ 郵件服務商是否攔截萬能排查三件套zabbix_get-s192.168.100.20-kagent.ping# 驗證取數tail-f/var/log/zabbix/zabbix_server.log# Server 日志tail-f/var/log/zabbix/zabbix_agentd.log# Agent 日志解析這三個命令按順序用基本能解決 90% 的問題——zabbix_get告訴你數據鏈路通不通返回值對不對zabbix_server.log告訴你Server 側發生了什么數據庫連不上、觸發器計算錯誤都會在這里zabbix_agentd.log告訴你Agent 側發生了什么Server 主動連接被拒、主動上報失敗都會在這里。從數據流向Server ? Agent兩頭各看一邊日志問題就能被切得很小。