文件

使用 InfluxDB 進行監控與警報

MinIO 使用 Prometheus 資料模型發佈叢集和節點指標。InfluxDB 支援抓取 MinIO 指標資料以進行監控和警報。

本頁上的程序記錄了以下內容

  • 設定 InfluxDB 服務以抓取和顯示來自 MinIO 部署的指標

  • 設定 MinIO 指標的警報

先決條件

此程序需要以下條件

  • 已設定一個或多個通知端點的現有 InfluxDB 部署

  • 具有網路存取 InfluxDB 部署的現有 MinIO 部署

  • 本機主機上已安裝 mc,且設定為存取 MinIO 部署

設定 InfluxDB 以使用 MinIO 指標收集和警報

重要事項

此程序特別使用 InfluxDB UI 來建立抓取端點。

與使用 Telegraf 和對應的 Prometheus 外掛程式相比,InfluxDB UI 沒有提供相同層級的設定。具體而言

  • 您無法透過 InfluxDB UI 啟用對 MinIO 指標端點的驗證存取

  • 您無法為收集的指標設定標籤 (例如 url_tag),以唯一識別給定 MinIO 部署的指標

設定 Telegraf 不在此程序的範圍內。您可以使用此程序作為設定 Telegraf 以抓取 MinIO 指標的一般指南。

  1. 設定對 MinIO 指標的公開存取

    將 MinIO 部署中所有節點的 MINIO_PROMETHEUS_AUTH_TYPE 環境變數設定為 "public"。然後,您可以重新啟動部署以允許公開存取 MinIO 指標。

    您可以嘗試 curl 指標端點來驗證變更

    curl https://HOSTNAME/minio/v2/metrics/cluster
    

    HOSTNAME 取代為您存取 MinIO 部署時所使用的負載平衡器或反向 Proxy 的 URL。您也可以指定任何單一節點為 HOSTNAME:PORT,除了節點主機名稱之外,還指定 MinIO 伺服器 API 連接埠。

    回應本文應包含收集的 MinIO 指標清單。

  2. 登入 InfluxDB UI 並建立儲存區

    選取您要儲存 MinIO 指標的組織

    建立一個新儲存區,以儲存 MinIO 部署的指標。

  3. 建立新的抓取來源

    建立一個新的 InfluxDB 抓取器

    指定 MinIO 部署的完整 URL,包括指標端點

    https://HOSTNAME/minio/v2/metrics/cluster
    

    HOSTNAME 取代為您存取 MinIO 部署時所使用的負載平衡器或反向 Proxy 的 URL。您也可以指定任何單一節點為 HOSTNAME:PORT,除了節點主機名稱之外,還指定 MinIO 伺服器 API 連接埠。

  4. 驗證資料

    使用DataExplorer 來視覺化收集的 MinIO 資料。

    例如,您可以設定 minio_cluster_capacity_usable_total_bytesminio_cluster_capacity_usable_free_bytes 的篩選器,以比較 MinIO 部署上的總可用空間與總可用空間。

  5. 設定檢查

    在 MinIO 指標上建立一個新檢查

    以下範例檢查規則為 MinIO 部署提供警報基準。您可以修改或以其他方式使用這些範例,以指導您建立自己的檢查。

    • 建立名為 MINIO_NODE_DOWN臨界值檢查

      設定 minio_cluster_nodes_offline_total 金鑰的篩選器。

      當值大於 1 時,將臨界值設定為 WARN

    • 建立一個名為 Threshold Check 的檢查項目,名稱為 MINIO_QUORUM_WARNING

      設定 minio_cluster_drive_offline_total 鍵的篩選器。

      閾值 設定為,當值比您設定的 Erasure Code Parity(糾刪碼奇偶性) 設定少一時,嚴重 (CRITICAL)

      例如,使用 EC:4 的部署應將此值設定為 3

    設定您的 通知端點通知規則,以便每種類型的檢查觸發適當的回應。