使用適用於 Prometheus 的 Azure 監視器受控服務作為使用受控系統身分識別的 Grafana 資料來源

適用於 Prometheus 的 Azure 監視器受控服務,可讓您使用與 Prometheus 相容的監視解決方案大規模收集和分析計量。 分析和呈現 Prometheus 資料最常見的方式是使用 Grafana 儀表板。 本文說明如何使用受控系統身分識別驗證,將 Prometheus 設定為在 Azure 虛擬機器中執行的 Azure 受控 Grafana自我裝載 Grafana 的資料來源。

如需搭配 Active Directory 使用 Grafana 的詳細資訊,請參閱設定自控 Grafana 以搭配 Microsoft Entra ID 使用 Azure 受控的 Prometheus

Azure 受控 Grafana

下列各節說明如何將適用於 Prometheus 的 Azure 監視器受控服務設定為 Azure 受控 Grafana 的資料來源。

重要

本節說明將適用於 Prometheus 資料來源的 Azure 監視器受管理的服務新增至 Azure Managed Grafana 的手動程序。 您可以如連結 Grafana 工作區中所述,連結 Azure 監視器工作區和 Grafana 工作區,來實現相同的功能。

設定系統身分識別

Grafana 工作區需要下列設定:

  • 已啟用系統受控識別
  • 監視 Azure 監視器工作區的資料讀取者角色

當您建立 Grafana 工作區,並將其連結至 Azure 監視器工作區時,預設會進行這兩項設定。 在 Grafana 工作區的 [身分識別] 頁面上確認這些設定。

Screenshot of Identity page for Azure Managed Grafana.

從 Grafana 工作區進行設定
使用下列步驟來允許存取資源群組或訂用帳戶中的所有 Azure 監視器工作區:

  1. 在 Azure 入口網站中開啟 Grafana 工作區的 [身分識別] 頁面。

  2. 如果 [狀態] 為 [否],請將其變更為 [是]

  3. 選取 [Azure 角色指派],以檢閱訂用帳戶中的現有存取權。

  4. 如果訂用帳戶或資源群組未列出監視資料讀取器

    1. 選取 [+ 新增角色指派]

    2. 針對 [範圍],選取 [訂用帳戶] 或 [資源群組]

    3. 針對 [角色],選取 [監視資料讀取器]

    4. 選取 [儲存]。

從 Azure 監視器工作區進行設定
使用下列步驟只允許存取特定的 Azure 監視器工作區:

  1. 在 Azure 入口網站中開啟 Azure 監視器工作區的 [存取控制 (IAM)] 頁面。

  2. 選取 [新增角色指派]

  3. 選取 [監視資料讀取器],然後選取 [下一步]

  4. 針對 [存取權指派對象為],選取 [受控識別]

  5. 選取 + 選取成員

  6. 針對 [受控識別],選取 [Azure 受控 Grafana]

  7. 選取 Grafana 工作區,然後選取 [選取]

  8. 選取 [檢閱 + 指派] 以儲存設定。

建立 Prometheus 資料來源

Azure 受控 Grafana 預設支援 Azure 驗證。

  1. 在 Azure 入口網站中開啟 Azure 監視器工作區的 [概觀] 頁面。

  2. 複製您在下列步驟中所需的查詢端點

  3. 在 Azure 入口網站中開啟 Azure 受控 Grafana 工作區。

  4. 選取 [端點] 以檢視 Grafana 工作區。

  5. 選取 [設定],然後選取 [資料來源]

  6. 依序選取 [新增資料來源]、[Prometheus]

  7. 針對 URL,貼上 Azure 監視器工作區的查詢端點。

  8. 選取 [Azure 驗證] 將其開啟。

  9. 針對 [Azure 驗證] 下的 [驗證],選取 [受控識別]

  10. 捲動到頁面底部,然後選取 [儲存與測試]

Screenshot of configuration for Prometheus data source.

自我管理 Grafana

下列各節說明如何將適用於 Prometheus 的 Azure 監視器受控服務設定作為 Azure 虛擬機器上自控 Grafana 的資料來源。

設定系統身分識別

Azure 虛擬機器同時支援系統指派的和使用者指派的身分識別。 下列步驟會設定系統指派的身分識別。

從 Azure 虛擬機器設定
使用下列步驟來允許存取資源群組或訂用帳戶中的所有 Azure 監視器工作區:

  1. 在 Azure 入口網站中開啟虛擬機器的 [身分識別] 頁面。

  2. 如果 [狀態] 為 [否],請將其變更為 [是]

  3. 選取 [儲存]。

  4. 選取 [Azure 角色指派],以檢閱訂用帳戶中的現有存取權。

  5. 如果訂用帳戶或資源群組未列出監視資料讀取器

    1. 選取 [+ 新增角色指派]

    2. 針對 [範圍],選取 [訂用帳戶] 或 [資源群組]

    3. 針對 [角色],選取 [監視資料讀取器]

    4. 選取 [儲存]。

從 Azure 監視器工作區進行設定
使用下列步驟只允許存取特定的 Azure 監視器工作區:

  1. 在 Azure 入口網站中開啟 Azure 監視器工作區的 [存取控制 (IAM)] 頁面。

  2. 選取 [新增角色指派]

  3. 選取 [監視資料讀取器],然後選取 [下一步]

  4. 針對 [存取權指派對象為],選取 [受控識別]

  5. 選取 + 選取成員

  6. 針對 [受控識別],選取 [虛擬機器]

  7. 選取 Grafana 工作區,然後按一下 [選取]

  8. 選取 [檢閱 + 指派] 以儲存設定。

建立 Prometheus 資料來源

9.x 版和更新版本的 Grafana 支援 Azure 驗證,但預設不會啟用。 若要啟用這項功能,您必須更新 Grafana 設定。 若要判斷 Grafana.ini 檔案的位置,以及如何編輯 Grafana 設定,請檢閱 Grafana 實驗室的設定 Grafana (英文) 文件。 一旦您知道設定檔在 VM 上的位置後,請進行下列更新:

  1. 找出並開啟虛擬機器上的 Grafana.ini 檔案。

  2. 在設定檔的 [auth] 區段下,將 azure_auth_enabled 設定變更為 true

  3. 在設定檔的 [azure] 區段下,將 managed_identity_enabled 設定變更為 true

  4. 在 Azure 入口網站中開啟 Azure 監視器工作區的 [概觀] 頁面。

  5. 複製您在下列步驟中所需的查詢端點

  6. 在 Azure 入口網站中開啟 Azure 受控 Grafana 工作區。

  7. 按一下 [端點] 以檢視 Grafana 工作區。

  8. 選取 [設定],然後選取 [資料來源]

  9. 依序按一下 [新增資料來源]、[Prometheus]

  10. 針對 URL,貼上 Azure 監視器工作區的查詢端點。

  11. 選取 [Azure 驗證] 將其開啟。

  12. 針對 [Azure 驗證] 下的 [驗證],選取 [受控識別]

  13. 捲動到頁面底部,然後按一下 [儲存與測試]

Screenshot of configuration for Prometheus data source.

常見問題集

本節提供常見問題的答案。

我遺漏所有或部分計量。 如何進行疑難排解?

您可以使用這裡的疑難排解指南,從受控代理程式擷取 Prometheus 計量。

為什麼我遺漏的計量有兩個相同名稱但大小寫不同的標籤?

Azure 受控 Prometheus 是不區分大小寫的系統。 如果字串 (例如計量名稱、標籤名稱或標籤值) 與其他時間序列的區別只有字串的大小寫不同,則系統會將這些字串視為相同的時間序列。 如需詳細資訊,請參閱 Prometheus 計量概觀

我發現計量資料有一些差距,為什麼會發生此狀況?

在節點更新期間,對於從我們的叢集層級收集器所收集的計量,計量資料可能會出現 1 分鐘到 2 分鐘的差距。 發生此差距是因為在正常更新程序中,執行資料的節點正在更新中。 此更新程序會影響整個叢集的目標,例如 kube-state-metrics 和指定的自訂應用程式目標。 手動或透過自動更新來更新您的叢集時,就會發生這種情況。 這是預期的行為,發生的原因是其執行所在的節點正在更新。 此行為不會影響任何建議的警示規則。

下一步