5.1 Grafana 是什麼
Grafana 是一個功能強大的工具,用於將指標視覺化,它被廣泛用於創建自定義的 dashboard 和實時分析數據。在這堂課中,我們將探討如何配置 Grafana 與 Prometheus 一起使用,以及如何創建用於視覺化 Docker 容器指標的 dashboard。
5.2 在 Windows 上安裝 Grafana
要在 Windows 上安裝 Grafana,請按以下步驟操作:
1. 下載安裝檔案
前往 Grafana 的官方網站並下載適用於 Windows 的安裝檔:https://grafana.com/grafana/download。
# 安裝檔通常叫做 grafana-installer-x.x.x.exe
2. 安裝 Grafana
啟動安裝檔案,並根據安裝程式的指示進行操作。你可以選擇作為 Windows 服務來安裝,以便自動啟動。
3. 啟動 Grafana
完成安裝後,你可以將 Grafana 作為服務啟動,或者通過桌面上的快捷方式啟動。在瀏覽器中打開並訪問地址 http://localhost:3000
。
5.3 在 macOS 上安裝 Grafana
要在 macOS 上安裝 Grafana,請按照以下步驟操作:
1. 安裝 Homebrew
如果還沒有安裝 Homebrew,請執行以下命令:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
2. 安裝 Grafana
brew update
brew install grafana
3. 啟動 Grafana
以服務的方式啟動 Grafana:
brew services start grafana
在瀏覽器中打開網址 http://localhost:3000
。
5.4 在 Linux 上安裝 Grafana
要在 Linux 上安裝 Grafana,按以下步驟操作:
1. 添加 Grafana 的存儲庫
添加官方的 Grafana 存儲庫:
sudo apt-get install -y software-properties-common
sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
sudo apt-get update
2. 安裝 Grafana
sudo apt-get install grafana
3. 運行 Grafana
啟動並設置 Grafana 開機自動啟動:
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
在瀏覽器中轉到地址 http://localhost:3000
。
5.5 設定 Grafana
1. 訪問 Grafana 的網頁介面
打開網頁瀏覽器,進入 http://localhost:3000。使用預設的登入名和密碼登入系統:(admin/admin)。
2. 新增 Prometheus 的資料來源
- 進入 "Configuration" → "Data Sources"。
- 點擊 "Add data source"。
- 選擇 "Prometheus"。
- 輸入你的 Prometheus 伺服器的 URL(例如:http://localhost:9090)。
- 點擊 "Save & Test" 來測試連接。
5.6 在 Grafana 中建立儀表板
1. 創建新的儀表板
- 進入 "Create" → "Dashboard".
- 點擊 "Add new panel".
2. 新增面板 (Panel)
- 在 "Query" 區段選擇數據來源 Prometheus。
- 輸入 PromQL 查詢來獲取指標。例如,要使用 CPU:
- 選擇圖表類型(例如 "Graph")。
- 配置面板(例如名稱、圖例、軸等)。
- 點擊 "Apply" 以保存面板。
rate(container_cpu_usage_seconds_total[1m])
3. 創建其他面板
重複步驟以創建其他指標的面板,例如記憶體、網絡和磁碟。查詢示例:
記憶體使用量:
container_memory_usage_bytes
網絡流量:
rate(container_network_receive_bytes_total[1m])
磁碟操作:
rate(container_fs_reads_total[1m])
5.7 創建面板的範例
範例 1: CPU 面板
查詢:
rate(container_cpu_usage_seconds_total[1m])
圖表類型: Graph
面板設定: 將標題設為 "CPU Usage" 並配置坐標軸。
範例 2: 記憶體面板
查詢:
container_memory_usage_bytes
圖表類型: Graph
面板設定: 將標題設為 "Memory Usage" 並配置坐標軸。
範例 3: 網路流量面板
查詢:
rate(container_network_receive_bytes_total[1m])
圖表類型: Graph
面板設定: 將標題設為 "Network Traffic" 並配置坐標軸。
5.8 儀表板設定
1. 時間區間設定
在儀表板的頂部選擇顯示指標的時間區間(例如,最近 5 分鐘,最近 1 小時等)。
2. 儲存儀表板
- 點擊上方選單中的 "Save dashboard" 按鈕。
- 輸入儀表板名稱以及(如有必要)描述。
- 點擊 "Save"。
3. 面板組織
你可以拖動面板,改變它們的大小,並按照自己的需求組織它們在儀表板上的位置。這樣可以幫助你創建更方便且資訊豐富的儀表板。
完整儀表板範例
建立包含 CPU、記憶體、網路流量以及磁碟操作面板的儀表板,可以讓你全面了解 Docker 容器的狀態。
- 建立新的儀表板,然後新增所有重要指標的面板。
- 為每個圖表設定 對應的 PromQL 查詢及顯示設定。
- 組織面板 在儀表板上使重要指標能夠輕鬆查看。
GO TO FULL VERSION