前言

為了能夠監控 Harbor 的執行狀態,我們可以透過設定 metrics 服務來收集其性能數據,並將這些數據導入 Prometheus,再使用 Grafana 設計 dashboard 進行可視化監控。本文將介紹如何在 Harbor 中啟用 metrics,並簡單說明其各項指標。





啟用 Harbor 的 Metrics 功能

Harbor 的 metrics 是通過內建的 /metrics API 提供的,它基於 Prometheus 格式。因此,我們可以直接從 Harbor 中取得 metrics 資料,並將其導入至 Prometheus 進行分析和視覺化。

步驟 1. 修改 Harbor 設定文件:如同前面系列文章介紹,我們需要修改設定檔案 harbor.yml。開啟 harbor.yml 文件,找到 metrics 部分,參考設定如下 (移除註解並將 enabled 設定為 true)


步驟 2. 安裝完成後,請透過 ./prepare 指令將設定啟用



步驟 3. 設定啟用後重新上下服務

docker-compose down -v
docker-compose up -d



步驟 4. 測試 Metrics 是否啟用並正常運作,由於是 API,您可以 curl 指令進行測試 (或直接瀏覽器打開網址)

curl http://<Harbor-Host>:9090/metrics






舉一些指標作為例子:
1. harbor_project_total : 所有 Project 數量
2. harbor_project_repo_total : 所有 Repository 數量
3. harbor_project_quota_byte : Project 所設定的容量配額
4. harbor_health : 目前 Harbor 健康狀態
5. harbor_up : 目前啟動的元件







後記

透過上述設定,我們成功地啟用 Harbor 的 metrics,後續只需要將資料導入至 Prometheus 並在 Grafana 中進行可視化呈現,即可完整監控 Harbor 狀態而無須連線至 Harbor 查詢。這樣的設置可以幫助管理員監控 Harbor 的效能和資源使用情況,及早發現潛在的問題。透過 Grafana 提供的圖表和指標,能更直觀地掌握 Harbor 的運行情況,提升整體的監控效率。