Grafana是開源的數據可視化平臺,可以生成各種可視化儀表,簡化監控的復雜度。本文介紹如何使用Grafana查看SLO相關指標。

操作步驟

您可以通過Grafana控制臺導入儀表盤數據,查看SLO相關指標。

  1. 執行以下命令,在ACK集群中安裝Grafana應用。
    # 添加倉庫信息。
    helm repo add grafana https://grafana.github.io/helm-charts
    helm repo update
    # 安裝Grafana應用。
    helm install -n monitoring asm-grafana grafana/grafana
  2. 執行以下命令,獲取Grafana控制臺的登錄密碼。
    kubectl get secret --namespace monitoring asm-grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
  3. 執行以下命令,將asm-grafana服務轉發到本地端口。
    kubectl --namespace monitoring port-forward svc/asm-grafana 3000:80
  4. 單擊https://localhost:9093,訪問Grafana控制臺。
    登錄時,用戶名為admin,登錄密碼由步驟2獲取。
  5. 在Grafana控制臺左側導航欄,單擊設置圖標,在Configuration頁面的Data sources頁簽,單擊Add data source
  6. Settings頁簽的HTTP區域,配置URLhttp://ack-prometheus-operator-prometheus:9090,其他配置項保持默認,然后單擊Save。
    HTTP
  7. 在左側導航欄,單擊Dashboard > Import,將儀表盤模板內容粘貼到Import via panel json文本框,然后單擊Load
    Import
    示例效果如下。關于SLO的相關概念,請參見服務等級目標SLO概述示例效果
    • 在區域①,可以查看當前正在貢獻燃燒率的SLO。
    • 在區域②,可以查看所有燃燒率大于1的SLO的燃燒率變化情況。
    • 在區域③,可以查看配置的SLO信息。
      指標 說明
      Objective 目標值為99%。
      Current burning budget % 當前燃燒率為50%。錯誤率為(1 - 99%) * 50% = 0.5%。
      Remaining error budget(month) 剩余錯誤預算百分比(以自然月計算)為93.3%。
      Remaining error budget (30d window) 剩余錯誤預算百分比(30天滾動窗口)為-243%。

      錯誤預算為負,說明在此滾動窗口內服務不滿足SLO。服務最終是否滿足SLO,以合規期最后一天的剩余錯誤預算為準。

      Warning alert 是否觸發了警告級別的告警。本文為已觸發(FIRING)。
      Critical alert 是否觸發了緊急級別的告警。本文為未觸發(OK)。
      說明 剩余錯誤預算百分比由異常時間段和正常時間段計算比率得到。上圖中兩個錯誤預算剩余百分比相差較大,是因為兩者在計算指標平均值時采用了不同的大小窗口做平均。前者是1小時而后者是5分鐘,后者分割的時間段更多。在正常環境下,不同分割方法的正常時間段和異常時間段是等比增加的,但在本示例中測試請求主要都是異常請求,其他時間基本無請求。無請求的時間段不參與平均,導致只有異常時間段增加。在正常環境下兩者數值相近。
    • 在區域④,可以查看SLI的變化曲線、月度錯誤預算的變化曲線和燃燒率水平變化。