UCP Dashboard Shows 'No Data'?

之前曾經處理過一個關於容器平台監控儀表板的問題,寫在這邊作爲記錄並分享。 具體問題狀況:在一個 UCP 叢集環境下,共安裝設定了 10 個節點,包含 UCP manager 以及 UCP worker,而且爲了支持 HA,設定有 3 個 UCP manager,確保高可用性,作爲監控管理用途。所使用的 UCP 版本是 v3.1.1. 運行經過一段時間,其中一個 UCP manager 節點的儀表板無 metrics 資料顯示,如下圖標示: 其他兩個 UCP manager 節點儀表板顯示正常。 另外通過 docker ps 命令檢查每個節點的 ucp containers 狀態, 發現 ucp proxy 等 agents 用途的 containers 狀態是健康的,節點之間的 TLS 連線應不是問題, 用 docker logs 命令檢查 UCP controller 的日誌內容,如下截圖, 試着以 docker restart 命令重新啓動 UCP controller containers ,但是問題仍然存在沒有解決。 接下來試着看 UCP metrics containers 的情況,在 UCP v3.1.1 由 ucp-metrics 來負責, 這部分實際上是以 Prometheus 為功能基礎來輔助達到 UCP 儀表板監控功能, 在 UCP v3.1.1 的 Prometheus 監控是以 Kubernetes deployment 的方式來佈署, 定義成一個 daemonset 指定運行在 Docker EE 容器平台上的每個 UCP manager 節點。 Prometheus 使用 TSDB 格式,通過 volume 機制在本地端儲存 metrics 資料,對應的本地路徑為 /var/lib/docker/volumes/ucp-metrics-data/_data/wal/ 這路徑保存時間序列的 metrics 資料庫。如果這個路徑有問題,則需要重建。 註:WAL 的全名是 Write Ahead Log. 通過下面命令重設 ucp-metrics (註:要先設定好 ucp bundles): $ kubectl -n kube-system delete da...