ingress-nginx 開啟 Prometheus 監控 + Grafana 查看指標

環境已經部署了?ingress-nginx(DaemonSet 方式),并且 Prometheus + Grafana 也已經運行。但之前?/metrics?端點沒有暴露 Nginx 核心指標(如?nginx_ingress_controller_requests_total),經過調整后現在可以正常采集數據。以下是完整操作總結:


1. 確保 ingress-nginx 暴露 Prometheus 指標

(1)檢查并修改 DaemonSet 配置

kubectl edit daemonset ingress-nginx-controller -n ingress-nginx

在?containers.args?中添加:

args:
- /nginx-ingress-controller
- --enable-metrics=true          # 啟用 Prometheus 指標
- --metrics-per-host=true       # 按 Host 統計指標(可選)
- --configmap=$(POD_NAMESPACE)/ingress-nginx
- ...(其他原有參數保持不變)

保存后會自動重啟 Pod,或者手動滾動更新:

kubectl rollout restart daemonset ingress-nginx-controller -n ingress-nginx

(2)驗證指標是否暴露

kubectl exec -it $(kubectl get pods -n ingress-nginx -l app.kubernetes.io/name=ingress-nginx -o jsonpath='{.items[0].metadata.name}') \-n ingress-nginx -- curl -s http://localhost:10254/metrics | grep 'nginx_ingress_controller_requests_total'

預期輸出

nginx_ingress_controller_requests_total{ingress="your-ingress", namespace="default", status="200"} 15

2. 配置 Prometheus 采集指標

(1)創建 ServiceMonitor(如果尚未配置)

cat <<EOF | kubectl apply -f -
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:name: ingress-nginxnamespace: ingress-nginxlabels:release: prometheus  # 必須匹配 Prometheus 的 serviceMonitorSelector
spec:selector:matchLabels:app.kubernetes.io/name: ingress-nginx  # 匹配 Service 的標簽endpoints:- port: metrics        # 必須與 Service 的端口名稱一致interval: 15spath: /metrics
EOF

(2)檢查 Prometheus Targets

訪問 Prometheus 的?Targets?頁面(如?http://prometheus-server:9090/targets),確認?ingress-nginx?的 target 狀態為?UP

(3)手動查詢 Prometheus 驗證

# 進入 Prometheus Pod 查詢
kubectl exec -it $PROM_POD -n prometheus -c prometheus -- \curl -s "http://localhost:9090/api/v1/query?query=nginx_ingress_controller_requests_total" | jq

預期:返回帶?ingress?和?status?標簽的指標數據。


3. 在 Grafana 中查看指標

(1)導入官方 Dashboard

  1. 登錄 Grafana(如?http://grafana.example.com

  2. 點擊?+ → Import

  3. 輸入 Dashboard ID:

    • 最新版(推薦)14314(官方鏈接)

    • 舊版兼容:9614

  4. 選擇正確的?Prometheus 數據源

(2)檢查數據源和查詢

  • 確認數據源:Dashboard 右上角選擇正確的 Prometheus 數據源。

  • 檢查查詢語句:點擊任意 Panel → Edit → 查看 Query 是否使用正確的指標(如?nginx_ingress_controller_requests_total)。

  • 調整時間范圍:確保選擇最近的時間范圍(如?Last 1 hour)。

(3)常見問題排查

  • 無數據

    • 檢查 Prometheus 是否真的采集到數據(直接查詢?nginx_ingress_controller_requests_total)。

    • 確保有流量經過 ingress-nginx(空流量無指標)。

  • 指標名稱不匹配

    • 新版本可能用?controller_nginx_requests_total,需調整 Grafana 查詢。


4. 最終驗證

  1. Prometheus 有數據

    curl -s "http://prometheus:9090/api/v1/query?query=nginx_ingress_controller_requests_total" | jq
  2. Grafana 圖表正常

    • 打開 Dashboard,查看請求量、錯誤率、延遲等圖表。


總結

步驟關鍵操作
1. 啟用指標--enable-metrics=true?+ 重啟 DaemonSet
2. 配置采集創建?ServiceMonitor?匹配?metrics?端口
3. 檢查 TargetPrometheus 的?Targets?頁面確認 UP
4. 導入 DashboardGrafana 導入 ID?14314,選擇正確數據源
5. 驗證數據直接查詢 Prometheus + 檢查 Grafana 圖表

你的環境已經可以正常監控 ingress-nginx,后續只需關注 Grafana Dashboard 即可實時觀察流量、錯誤率等關鍵指標!

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

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

相關文章

ThinkPHP 5.1 中的 error 和 success 方法詳解

1、success() 方法 public function someAction() {// 操作成功邏輯...return $this->success(操作成功, 跳轉地址, 額外數據); } 參數說明 參數類型說明默認值msgstring成功提示信息空字符串urlstring跳轉URLnull (不跳轉)datamixed返回的額外數據nullwaitinteger跳轉等…

抗輻照MCU在衛星載荷電機控制器中的實踐探索

摘要:在航天領域&#xff0c;衛星系統的可靠運行對電子元件的抗輻照性能提出了嚴苛要求。微控制單元&#xff08;MCU&#xff09;作為衛星載荷電機控制器的核心部件&#xff0c;其穩定性與可靠性直接關系到衛星任務的成敗。本文聚焦抗輻照MCU在衛星載荷電機控制器中的應用實踐&…

計算機視覺——相機標定

計算機視覺——相機標定 一、像素坐標系、圖像坐標系、相機坐標系、世界坐標系二、坐標系變換圖像坐標系 → 像素坐標系相機坐標系 → 圖像坐標系世界坐標系 → 相機坐標系 ? \star ? 世界坐標系 → 像素坐標系 三、相機標定 一、像素坐標系、圖像坐標系、相機坐標系、世界坐…

好未來0520上機考試題1:括號的最大嵌入深度

題目 &#xff08;LeetCode 1614.括號的最大嵌入深度&#xff09; 給定 有效括號字符串 s&#xff0c;返回 s 的嵌套深度。嵌套深度是嵌套括號的最大數量。 示例 1&#xff1a; 輸入&#xff1a;s "(1(2*3)((8)/4))1" 輸出&#xff1a;3 解釋&#xff1a;數字…

MySQL復雜SQL(多表聯查/子查詢)詳細講解

&#x1f91f;致敬讀者 &#x1f7e9;感謝閱讀&#x1f7e6;笑口常開&#x1f7ea;生日快樂?早點睡覺 &#x1f4d8;博主相關 &#x1f7e7;博主信息&#x1f7e8;博客首頁&#x1f7eb;專欄推薦&#x1f7e5;活動信息 文章目錄 MySQL復雜SQL&#xff08;多表聯查/子查詢&a…

Spring中循環依賴問題的解決機制總結

一、解決機制 1. 什么是循環依賴 循環依賴是指兩個或多個Bean之間相互依賴對方&#xff0c;形成一個閉環的依賴關系。最常見的情況是當Bean A依賴Bean B&#xff0c;而Bean B又依賴Bean A時&#xff0c;就形成了循環依賴。在Spring容器初始化過程中&#xff0c;如果不加以特殊…

集運維_安裝linux,麒麟等系統_步驟

u盤工具選擇Ventoy,Rufus 在選擇Ventoy和Rufus這兩款U盤啟動盤制作工具時,需根據具體需求權衡其優缺點: ?核心差異? ?多系統支持?: ?Ventoy?:支持將多個ISO、WIM、IMG等類型的鏡像文件直接復制到U盤,實現?一盤多用?(例如同時存放Windows、Linux等鏡像),無需…

第4章:Cypher查詢語言基礎

Cypher是Neo4j的聲明式圖查詢語言&#xff0c;專為處理圖數據而設計。它允許用戶以直觀、高效的方式查詢和修改圖數據庫中的數據。本章將介紹Cypher的基本概念和語法&#xff0c;幫助讀者掌握使用Cypher進行基礎圖數據操作的能力。 4.1 Cypher語言概述 Cypher是Neo4j的主要查…

上位機知識篇---Flask框架實現Web服務

本文將簡單介紹Web 服務與前端顯示部分,它們基于Flask 框架和HTML/CSS/JavaScript實現,主要負責將實時視頻流和檢測結果通過網頁展示,并提供交互式狀態監控。以下是詳細技術解析: 一、Flask Web 服務架構 1. 核心路由設計 @app.route(/) def index():"""…

Neovim - 打造一款屬于自己的編輯器(一)

文章目錄 前言&#xff08;勸退&#xff09;neovim 安裝neovim 配置配置文件位置第一個 hello world 代碼拆分 neovim 配置正式配置 neovim基礎配置自定義鍵位Lazy 插件管理器配置tokyonight 插件配置BufferLine 插件配置自動補全括號 / 引號 插件配置 前言&#xff08;勸退&am…

按字典序排列最小的等效字符串

文章目錄 題目思路解題過程Python代碼C代碼復雜度 題目 給出長度相同的兩個字符串s1 和 s2 &#xff0c;還有一個字符串 baseStr 。 其中 s1[i] 和 s2[i] 是一組等價字符。 舉個例子&#xff0c;如果 s1 “abc” 且 s2 “cde”&#xff0c;那么就有 ‘a’ ‘c’, ‘b’ ‘…

Ubuntu2404 下搭建 Zephyr 開發環境

1. 系統要求 操作系統&#xff1a;Ubuntu2404&#xff08;64位&#xff09;磁盤空間&#xff1a;至少 8GB 可用空間&#xff08;Zephyr 及其工具鏈較大&#xff09; 2. 安裝必要工具 Tool Min. Version CMake 3.20.5 Python 3.10 Devicetree compiler 1.4.6 2.1 安裝系…

2025年06月07日Github流行趨勢

項目名稱&#xff1a;netbird 項目地址url&#xff1a;https://github.com/netbirdio/netbird項目語言&#xff1a;Go歷史star數&#xff1a;14824今日star數&#xff1a;320項目維護者&#xff1a;mlsmaycon, braginini, pascal-fischer, lixmal, pappz項目簡介&#xff1a;使…

fast-reid部署

配置設置&#xff1a; 官方庫鏈接&#xff1a; https://github.com/JDAI-CV/fast-reid# git clone https://github.com/JDAI-CV/fast-reid.git 安裝依賴&#xff1a; pip install -r docs/requirements.txt 編譯&#xff1a;切換到fastreid/evaluation/rank_cylib目錄下&a…

clickhouse 和 influxdb 選型

以下是 ClickHouse、InfluxDB 和 HBase 在體系架構、存儲引擎、數據類型、性能及場景的詳細對比分析: ??? ?一、體系架構對比? ?維度??ClickHouse??InfluxDB??HBase??設計目標?大規模OLAP分析,高吞吐復雜查詢 時序數據采集與監控,優化時間線管理高吞吐隨機…

ros創建工作空間配置運行狀態機

ROS 一、創建工作空間目錄 /home/wict/workspace/hudahua/ros/catkin_ws #初始化工作空間&#xff08;僅需一次&#xff09; catkin_init_workspace二&#xff1a;回到根目錄編譯 #創建正確的工作空間結構&#xff08;如果尚未創建&#xff09; mkdir -p ~/workspace/hudahua…

【看到哪里寫到哪里】C的“數組指針”

C里面&#xff0c;數組指針&#xff0c;不是基本類型。顧名思義&#xff0c;數組指針&#xff0c;是指針&#xff0c;是指向數組的指針&#xff1b; 1.它的基本定義樣子是 type (*ptr)[size]; 這個指針&#xff0c;指向的數組的&#xff1b;這里要注意&#xff0c;要定義數組…

深度相機的日常學習

文章目錄 一、深度相機的概念二、深度相機的工作原理三、深度相機的應用領域 一、深度相機的概念 深度相機&#xff08;Depth Camera&#xff09;是一種能夠捕捉場景中物體距離信息的設備&#xff0c;與傳統的 RGB 相機不同&#xff0c;深度相機不僅可以獲取場景的二維圖像信息…

elasticsearch基本操作筆記

1.通過kibana查看elasticsearch版本信息 a.左上角三道橫->Management->Dev Tools b.GET / 執行 c.執行結果 { “name” : “xxxx”, “cluster_name” : “xxxxxxx”, “cluster_uuid” : “vl1UudAoQp-aHWAzyPoMyw”, “version” : { “number” : “7.15.1”, “build…

兩種Https正向代理的實現原理

正向代理 HTTPS 主要有兩種方案&#xff0c;分別是基于證書的解密與再加密方案和基于 HTTP CONNECT 隧道的方案&#xff0c;以下是這兩種方案的具體信息&#xff1a; 一、基于證書的解密與再加密方案 原理 工作原理&#xff1a;代理服務器擁有自己的證書&#xff0c;客戶端需…