全部產品
Search
文件中心

Container Service for Kubernetes:使用csi-plugin組件監控節點側儲存資源

更新時間:Jun 19, 2024

Container Service Kubernetes 版支援對雲端硬碟和NAS儲存卷的監控,通過可觀測監控 Prometheus 版收集指標以監控當前節點側儲存的使用狀況。本文介紹如何通過csi-plugin組件監控節點側儲存監控,並舉例說明如何配置事件警示。

前提條件

僅v1.18.8.46-afb19e46-aliyun及以上版本的csi-plugin同時支援雲端硬碟及NAS監控功能,請確保當前的csi-plugin組件的YAML版本和鏡像版本為最新版本。您可通過控制台升級至最新版本。具體操作,請參見通過控制台升級csi-plugin組件

背景資訊

在ACK叢集中通常使用雲端硬碟資料卷或NAS資料卷儲存資料,通過部署csi-plugin的最新版本(ACK叢集預設安裝csi-plugin組件)將磁碟監控與PVC進行綁定。通過可觀測監控 Prometheus 版可以查看當前PVC的狀態、配置容量閾值和IOPS閾值,進行事件警示以感知當前PVC使用方式。

通過控制台升級csi-plugin組件

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > 組件管理

  3. 單擊儲存頁簽,在csi-plugin組件地區單擊升級

儲存監控使用說明

目前節點側監控功能支援雲端硬碟及NAS兩種儲存產品。您可通過Prometheus監控當前雲端硬碟或NAS的使用狀況,具體操作如下。

重要
  • 查看儲存監控資源需要開啟可觀測監控 Prometheus 版。具體操作,請參見開啟阿里雲Prometheus監控

  • 啟用儲存監控功能後,相關組件會自動將監控指標發送至阿里雲Prometheus服務,這些指標將被視為自訂指標。使用自訂指標可能會引起額外的費用。為了避免產生額外的費用,建議在啟用此功能前,仔細閱讀阿里雲Prometheus的計費概述,瞭解自訂指標的收費策略。費用將根據您的叢集規模和應用數量等因素產生變動。您可以通過資源消耗統計功能,監控和管理您的資源使用方式。

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > Prometheus 監控

  3. 單擊儲存監控,然後單擊CSI儲存群組件監控-節點維度頁簽,進入節點側的監控大盤。

    metrics

  • 過濾項

    過濾項

    說明

    StorageType

    儲存類型,disk表示雲端硬碟,nas表示NAS檔案儲存體。

    Namespace

    PVC所在的命名空間。

    PVC

    PVC的名稱。

  • 監控指標

    指標名稱

    說明

    顯示單位

    IOPS

    PVC的讀寫IOPS

    ops/sec(每秒讀寫磁碟次數)

    Latency(avg)

    PVC的讀寫請求的平均時延

    ms(毫秒)

    ThroughPut

    PVC的輸送量

    GB

    IO Count In Queue

    IO請求在磁碟隊列的個數

    個數

    Used Capacity

    PVC的磁碟使用空間大小

    GB

    Total Capacity

    PVC的磁碟總空間大小

    GB

    Free Capacity

    PVC的磁碟剩餘空間大小

    GB

雲端硬碟儲存監控使用樣本

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > Prometheus 監控

  3. Prometheus監控頁面單擊儲存監控,然後單擊CSI儲存群組件監控-節點維度頁簽。

  4. 選擇雲端硬碟儲存卷所在的StorageTypeNamespace及PVC名稱後,在Total Capacity地區可查看雲端硬碟儲存卷當前容量。

    本樣本StorageType選擇為diskNamespace選擇為defaultPVCpvc-disk-static-create1雲端硬碟儲存監控資源從上圖可得,當前雲端硬碟總容量為39.25 GiB,使用了48.2 MiB,剩餘39.18 GiB。

  5. 向雲端硬碟中寫入測試資料。

    1. 執行以下命令查看掛載雲端硬碟的應用程式名稱。

      kubectl get pod

      預期輸出:

      NAME                                              READY   STATUS    RESTARTS   AGE
      deployment-disk-static-create1-67f4b5cfdc-p5q7t   1/1     Running   0          20m
    2. 執行以下命令進入掛載雲端硬碟的應用。

      kubectl exec deployment-disk-static-create1-67f4b5cfdc-p5q7t -ti sh
    3. 執行以下命令向雲端硬碟掛載目錄/data寫入20 GiB資料。

      cd /data
      /usr/bin/fio -direct=1 -iodepth=256 -rw=randwrite -ioengine=libaio -bs=4k -numjobs=1 -runtime=100 -group_reporting -name=Rand_Write_Testing -filename=./test -size=20G
  6. Prometheus監控頁面單擊儲存監控,然後單擊CSI儲存群組件監控-節點維度頁簽,再次查看雲端硬碟儲存監控資源。

    雲端硬碟儲存監控資料寫入後從上圖可得,寫入的IOPS為4 k,吞吐率為15 MB/s,寫入資料容量為20 GiB,剩餘容量為19 GiB,平均延時約為67 ms。

NAS儲存監控使用樣本

重要

使用NAS儲存監控,NAS容量指標的PV需要滿足以下條件:

  • 使用CNFS託管的NAS檔案系統,並且NAS檔案系統為容量型執行個體。

  • PV為通過StorageClass建立的動態磁碟區。

  1. 向NAS儲存卷掛載目錄寫入測試資料。

    1. 執行以下命令查看掛載NAS儲存卷的應用程式名稱。

      kubectl get pod

      預期輸出:

      NAME                                   READY    STATUS    RESTARTS   AGE
      cnfs-nas-deployment-84f6cdf6cc-wvjjq   1/1      Running   0          20m
    2. 執行以下命令進入掛載NAS儲存卷的應用。

      kubectl exec cnfs-nas-deployment-84f6cdf6cc-wvjjq -ti sh
    3. 執行以下命令向NAS儲存卷掛載目錄/data寫入20 GiB資料。

      cd /data
      /usr/bin/fio -direct=1 -iodepth=256 -rw=randwrite -ioengine=libaio -bs=4k -numjobs=1 -runtime=100 -group_reporting -name=Rand_Write_Testing -filename=./test -size=20G
  2. 登入Container Service管理主控台,在左側導覽列選擇叢集

  3. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇營運管理 > Prometheus 監控

  4. Prometheus監控頁面單擊儲存監控,然後單擊CSI儲存群組件監控-節點維度頁簽。

  5. 選擇NAS儲存卷所在的StorageTypeNamespace及PVC名稱後,在Total Capacity地區可查看NAS儲存卷當前容量。

    本樣本StorageType選擇為nasNamespace選擇為defaultPVCcnfs-nas-pvcNAS儲存監控資源從上圖可得,寫入的IOPS約為15 k,吞吐率從10 MB/S增長到60 MB/s,平均延時約為15 ms。

相關文檔