在 Grafana 中監視 Azure 服務
您可以使用 Grafana 以及包含在內的 Azure 監視器資料來源外掛程式,監視 Azure 服務和應用程式。 外掛程式會從下列 Azure 服務擷取資料:
Azure 資源中數值時間序列資料的 Azure 監視器計量。
適用於 Azure 資源的記錄和效能資料的 Azure 監視器記錄,可讓您使用功能強大的 Kusto 查詢語言 (KQL) 進行查詢。 您可以使用 Application Insights 記錄查詢來擷取 Application Insights 記錄型計量。
- Application Insights 記錄型計量 可讓您分析受監視應用程式的健康情況。 您可以使用 Grafana 中的 Application Insights 記錄查詢來使用 Application Insights 記錄計量資料。
Azure 監視器追蹤 可從 Application Insights 查詢和可視化分散式追蹤數據。
Azure Resource Graph 可跨訂用帳戶快速查詢和識別 Azure 資源。
然後,您可以在 Grafana 儀表板上顯示此效能及可用性資料。
使用下列步驟設定 Grafana 伺服器,並為 Azure 監視器中的計量和記錄建置儀表板。
設定 Grafana
若要設定 Grafana,請遵循下列步驟。
設定 Azure 受控 Grafana
Azure 受控 Grafana 已針對 Azure 環境最佳化,並可順暢地與 Azure 監視器搭配運作。 您可以:
- 使用 Microsoft Entra 身分識別來管理使用者驗證和存取控制。
- 將圖表從 Azure 入口網站直接釘選至 Azure 受控 Grafana 儀表板。
使用此快速入門指南,來使用 Azure 入口網站建立 Azure 受控 Grafana 工作區。
在本機設定 Grafana
若要設定本機的 Grafana 伺服器,請在您的本機環境中下載並安裝 Grafana。
登入 Grafana
重要
Internet Explorer 和較舊的 Microsoft Edge 瀏覽器無法與 Grafana 相容。 您必須使用以 Chromium 為基礎的瀏覽器,包括 Microsoft Edge。 如需詳細資訊,請參閱 Grafana 支援的網頁瀏覽器。
使用 Azure 受控 Grafana 工作區的端點 URL 或您伺服器的 IP 位址來登入 Grafana。
設定 Azure 監視器資料來源外掛程式
Azure 受控 Grafana 包含 Azure 監視器資料來源外掛程式。 根據預設,外掛程式會預先設定受控識別,其可查詢和視覺化來自部署 Grafana 工作區之訂用帳戶中所有資源的監視資料。 直接跳到<建置 Grafana 儀表板>一節。
您可以藉由設定其他權限,將包含的受控識別指派給其他訂用帳戶或資源上的監視讀者角色,來擴充 Azure 受控 Grafana 工作區可檢視的資源。
如果您使用非 Azure 受控 Grafana 的執行個體,則必須設定 Azure 監視器資料來源。
如果您要在自己的 Azure 虛擬機器或已啟用受控識別的 Azure App Service 執行個體上裝載 Grafana,您可以使用此方法進行驗證。 不過,如果您的 Grafana 實例未載入於 Azure 上,或未啟用受控識別,您必須使用應用程式註冊搭配 Azure 服務主體來設定驗證。
使用受控識別
在您的 VM 或 App Service 執行個體上啟用受控識別,並將 Grafana 伺服器受控識別支援設定變更為 [true]。
裝載用 VM 或 App Service 執行個體的受控識別必須獲派訂用帳戶、資源群組或感興趣資源的監視讀者角色。
您也需要更新 Grafana 伺服器組態中的設定
managed_identity_enabled = true
。如需詳細資訊,請參閱 Grafana 設定。 完成這兩個步驟之後,您就可以儲存和測試存取權。
選取 [ 儲存和測試 ],然後選取 [Grafana] 以測試認證。 您應該會看見類似下方的訊息。
使用應用程式註冊
建立服務主體。 Grafana 會使用 Microsoft Entra 服務主體來連線到 Azure 監視器 API 並收集資料。 您必須建立或使用現有的服務主體來管理對 Azure 資源的存取:
請參閱在入口網站中建立 Microsoft Entra 應用程式和服務主體來建立服務主體。 複製並儲存您的租用戶識別碼 (目錄識別碼)、用戶端識別碼 (應用程式識別碼) 和用戶端密碼 (應用程式機碼值)。
檢視 [將應用程式指派至角色],以將監視讀者角色指派給要監視的訂用帳戶、資源群組或資源上的 AMicrosoft Entra 應用程式。
提供您想要使用的連線詳細資料:
- 當您設定外掛程式時,您可以指出您想要外掛程式監視的 Azure 雲端:公用、Azure 美國政府、Azure 德國或由 21Vianet 營運的 Microsoft Azure。
注意
某些資料來源欄位的命名方式,與其相互關聯的 Azure 設定不同:
- 租用戶識別碼是 Azure Directory 識別碼。
- 用戶端識別碼是 Microsoft Entra 應用程式識別碼。
- 用戶端密碼是 Microsoft Entra Application 金鑰值。
- 當您設定外掛程式時,您可以指出您想要外掛程式監視的 Azure 雲端:公用、Azure 美國政府、Azure 德國或由 21Vianet 營運的 Microsoft Azure。
選取 [ 儲存和測試 ],然後選取 [Grafana] 以測試認證。 您應該會看見類似下方的訊息。
使用現成可用的儀表板
Azure 監視器包含現成可用的儀表板,可與 Azure 受控 Grafana 和 Azure 監視器外掛程式搭配使用。 您可以在 Grafana Labs 上找到所有可用儀錶板的清單。
Azure 監視器也支援現成可用的儀表板,可與適用於 Prometheus 的 Azure 監視器受管理服務緊密整合。 當連結至適用於 Prometheus 的 Azure 監視器受管理服務時,這些儀表板會自動部署到 Azure 受控 Grafana。
建置 Grafana 儀表板
移至 Grafana 首頁,然後選取 [新增儀表板]。
在新儀錶板中,選取 [新增視覺效果 ],然後選擇 [Azure 監視器 ] 數據源。 您可以嘗試其他圖表選項,但本文使用 時間序列 作為範例。
儀錶板上會顯示空 的時間序列面板 。
編輯 面板以設定您的查詢。
將 Azure 監視器計量資料可視化:選取器清單會顯示,您可以在此圖表中選取要監視的服務和資源。 若要從 VM 檢視計量,請保留預設 的 [計量 ] 選取專案、選取 [資源 ] 以選擇 VM、使用提供的下拉式清單來選擇命名空間、計量和匯總。 選取 VM 和計量之後,您就可以開始檢視儀錶板中的數據。
將 Azure 監視器記錄資料可視化:選取 服務下拉式清單中的 [記錄 ]。 選取您想要查詢的資源或工作區,將 [時間範圍] 切換為 [儀錶板],然後設定查詢文字。 您可以在此複製已有的任何記錄查詢,或建立一個新的記錄查詢。 當您輸入查詢時,IntelliSense 會建議自動完成選項。 選取視覺效果類型:[時間序列]>[資料表],然後執行查詢。
注意
外掛程式也可以使用 時間巨集,例如
$__timeFilter()
和$__interval
。 當您放大圖表的一部分時,這些巨集允許 Grafana 動態計算時間範圍和時間資料粒度。 您可以移除這些巨集並使用標準時間篩選條件,例如TimeGenerated > ago(1h)
,但這表示圖形不支援縮放功能。下列儀表板有兩個圖表。 左邊的這份顯示兩個 VM 的 CPU 百分比。 右側的圖表依交易 API 類型細分,顯示 Azure 儲存體帳戶中的交易。
將圖表從 Azure 入口網站釘選至 Azure 受控 Grafana
除了在 Grafana 中組建面板之外,您也可以直接從 Azure 監視器將面板新增至 Grafana 儀表板,以快速將 Azure 監視器視覺效果從 Azure 入口網站釘選至新的或現有的 Grafana 儀表板。 移至資源的計量。 建立圖表,然後選取 [儲存到儀表板],後面接著 [釘選到 Grafana]。 選擇工作區和儀表板,然後選取 [釘選] 以完成作業。
Grafana 11 支援的功能
Azure 受控 Grafana 包含 Grafana 11 的支援(預覽),其引進基本記錄的功能,以及搭配 Azure 使用 示範 。
必要條件
基本記錄
基本記錄可讓您根據數據使用量切換不同的數據表計劃,以提供符合成本效益的方式來管理數據記憶體,請參閱 根據Log Analytics工作區中的數據使用量來選取數據表計劃。
啟用基本記錄
- 在 Grafana 中,移至 [連線>數據源>][Azure 監視器]。
- 在 [設定] 索引標籤上,將 [啟用基本記錄] 切換至右側(藍色為 [開啟]。
使用基本記錄
- 建立新的儀錶板。
- 在空白圖表下方的 [Azure 監視器] 底下,將 [服務] 切換為 [記錄]。
- 針對 [ 資源],選取Log Analytics工作區。
- 您現在可以將 [記錄] 從 [分析 ] 切換為 [基本]。
注意
切換至基本記錄檔具有限制:
- 時間範圍 將是 儀錶板 時間。 將時間範圍切換回查詢無法使用。
- 基本記錄會產生每個查詢成本,請參閱 根據Log Analytics工作區中的數據使用量來選取數據表計劃。
搭配 Azure 使用示範
在 Grafana 11 中, 範例 可以直接連結到 Application Insights 中的追蹤數據。 此整合可讓您將 Prometheus 計量數據與詳細的追蹤連線,以提供更完整的系統效能和行為檢視。 如需 Grafana 中追蹤檢視的詳細資訊,請參閱 探索中的追蹤。
設定示範以指向 Azure
- 在 Grafana 中,移至 [連線>數據源>Prometheus]。
- 在 [範例] 下的 [設定] 索引標籤上,選取 [+ 新增]。
- 將 [內部] 鏈接切換開關切換至右側(藍色為 [開啟]。
- 從下拉式清單中選取 [Azure ]。
- 選擇性:新增 URL 標籤。
- 儲存並測試 您的變更。
注意
您可以 + 新增其他範例,例如 開放原始碼 ZIPKIN 或 Jaeger 等追蹤平臺。
使用 Azure 檢視示範
- 在 Grafana 中,移至 [ 探索]。
- 在 [計量] 底下,選取 Prometheus 數據源。
- 執行查詢 以填入圖形。
- 在 [選項] 列中,將 [示範] 切換至右側(藍色為 [開啟]。 這會在圖形的 X 軸上新增顯示為黃色方塊的數據點。
- 將滑鼠停留在數據點上,以查看內容功能表,其中顯示 traceID、Value 等詳細數據。
- 在操作功能表中,選取 [Azure ] 或您提供範例的 [URL 卷標 ]。 這會開啟您目前 Prometheus 面板旁的 Azure 面板,其中包含 Grafana 查看器中的追蹤資訊。
Grafana 進階功能
Grafana 提供進階功能:
- Azure 監視器外掛程式變數 - Azure 監視器範本變數 |Grafana 檔
- 儀錶板播放清單 - 管理播放清單 |Grafana Cloud 檔
選擇性:監視相同 Grafana 儀表板中的其他資料來源
有許多資料來源外掛程式可將這些計量結合在儀表板中。
以下是如何使用 Telegraf、InfluxDB、適用於 Prometheus 的 Azure 監視器受管理服務和 Docker 的良好參考文章:
- 如何針對 Azure 受控 Grafana 設定資料來源
- 使用適用於 Prometheus 的 Azure 監視器受管理服務作為使用受控系統身分識別的 Grafana 資料來源
- 如何在 Ubuntu 16.04 上使用刻度堆疊監視系統計量
- A monitoring solution for Docker hosts, containers, and containerized services (Docker 主機、容器和容器化服務的監視解決方案)
以下是完整 Grafana 儀錶板的影像,其中包含已結合 Azure 監視器計量、記錄和追蹤的計量。
清除資源
如果您在 Azure 上設定 Grafana 環境,則會在資源執行時向您收取費用,無論您是否使用它們。 為避免產生額外費用,請清除依本文建立的資源群組。
- 在 Azure 入口網站的左側功能表上,選取 [資源群組]>[Grafana]。
- 在資源群組頁面上,選取 [刪除],在文字方塊中輸入 Grafana,然後選取 [刪除]。