分享方式:


適用於 Prometheus 的 Azure 監視器受管理服務

適用於 Prometheus 的 Azure 監視器受控服務是 Azure 監視器計量的元件,其對於您可使用 Azure 監視器來收集和分析計量資料類型,提供額外的彈性。 分析工具 (例如搭配 PromQL 的 Azure 監視器計量瀏覽器) 和開放原始碼工具 (例如 PromQLGrafana) 支援 Prometheus 計量。

適用於 Prometheus 的 Azure 監視器受控服務可讓您根據 Cloud Native Computing Foundation 的 Prometheus 專案,使用與 Prometheus 相容的監視解決方案大規模地收集和分析計量。 此完全受控的服務可讓您使用 Prometheus 查詢語言 (PromQL),分析和警示受監視基礎結構和工作負載的效能,而不需操作基礎結構。

重要

適用於 Prometheus 的 Azure 監視器受控服務旨在儲存客戶機器和應用程式的服務健康情況相關資訊。 其不適用於儲存任何分類為個人識別資訊 (PII) 或使用者識別資訊 (EUII) 的資料。 強烈建議您不要將任何敏感性資訊 (使用者名稱、信用卡號碼等) 傳送至適用於 Prometheus 的 Azure 監視器受控服務欄位,例如計量名稱、標籤名稱或標籤值。

資料來源

適用於 Prometheus 的 Azure 監視器受控服務目前可從下列任何資料來源收集資料:

  • Azure Kubernetes Service (AKS)
  • 已啟用 Azure Arc 的 Kubernetes

啟用

啟用適用於 Prometheus 的 Azure 監視器受控服務的唯一需求是建立 Azure 監視器工作區,也就是 Prometheus 計量的儲存位置。 建立此工作區之後,您即可將收集 Prometheus 計量的服務上線。

遠端寫入

除了適用於 Prometheus 的受管理服務之外,您也可以使用自我管理 Prometheus 和遠端寫入來收集計量,並將其儲存在 Azure 監視器工作區中。

Kubernetes 服務

從 Kubernetes 叢集上的自我管理 Prometheus 傳送計量。 如需遠端寫入至 Kubernetes 服務 Azure 監視器工作區的詳細資訊,請參閱下列文章:

虛擬機器與虛擬機器擴展集

從虛擬機器和虛擬機器擴展集上的自我管理 Prometheus 傳送資料。 伺服器可以位於 Azure 管理的環境或內部部署環境中。 如需詳細資訊,請參閱將 Prometheus 計量從虛擬機器傳送至 Azure 監視器工作區 (部分機器翻譯)。

搭配 PromQL 的 Azure 監視器計量瀏覽器

搭配 PromQL 的計量瀏覽器可讓您分析及視覺化平台計量,並使用 Prometheus 查詢語言 (PromQL) 來查詢 Prometheus 和其他儲存在 Azure 監視器工作區中的計量。 搭配 PromQL 的計量瀏覽器可從 Azure 入口網站中任意 Azure 監視器工作區的 [計量] 功能表項目存取。 如需詳細資訊,請參閱搭配 PromQL 的計量瀏覽器

Grafana 整合

視覺化 Prometheus 計量的主要方法是 Azure Managed Grafana將 Azure 監視器工作區連線至 Grafana 工作區,使其可作為 Grafana 儀表板中的資料來源。 然後,您可存取多個使用 Prometheus 計量的預先建置儀表板,而且能夠建立任意數目的自訂儀表板。

規則和警示

適用於 Prometheus 的 Azure 監視器受控服務支援使用 PromQL 查詢的記錄規則和警示規則。 記錄規則所記錄的計量會儲存在 Azure 監視器工作區中,而且可由儀表板或其他規則查詢。 您可使用 Azure 受控 Prometheus 規則群組來建立和管理警示規則和記錄規則。 針對 AKS 叢集,提供一組預先定義的 Prometheus 警示規則記錄規則,以便快速入門。

警示規則所引發的警示可以觸發動作或通知,如針對警示規則設定的動作群組所定義。 您也可以在 Azure 入口網站中檢視已引發和解決的 Prometheus 警示,以及其他警示類型。

服務限制與配額

Azure 監視器適用於 Prometheus 的受管理服務具有預設的擷取限制和配額。 當您達到擷取限制時,可能會發生節流。 您可以要求增加這些上限。 如需節流和要求增加限制的詳細資訊,請參閱監視計量限制 (部分機器翻譯)。 如需 Prometheus 計量限制的資訊,請參閱 Azure 監視器服務限制 (部分機器翻譯)。

限制/已知問題 - 適用於 Prometheus 的 Azure 監視器受控服務

  • 不支援以小於 1 秒的頻率抓取和儲存計量。
  • 支援透過支援啟用由實體隔離斷網雲端運作的 Azure Microsoft。 請連絡支援人員,以針對適用於實體隔離斷網雲端的 Prometheus 將 Azure 監視器受控服務上線。
  • 若要監視叢集中的 Windows 節點和 Pod,請參閱啟用 Azure Kubernetes Service (AKS) 叢集的監視 (部分機器翻譯)。
  • Azure 受控 Grafana 目前無法在 Azure 美國政府雲端中使用。
  • 使用計量 (Azure 監視器工作區 Metrics 功能表下的計量) - 美國政府雲端尚未提供 Azure 監視器工作區的擷取配額限制和目前使用量。
  • 在節點更新期間,您可能會在叢集層級收集器的某些計量集合中遇到持續 1 到 2 分鐘的差距。 此差距是因為 Azure Kubernetes Service 會進行一般動作以更新叢集中的節點。 這是預期的行為,發生的原因是其執行所在的節點正在更新。 此行為不會影響任何建議的警示規則。

區分大小寫

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

注意

此行為與開放原始碼 Prometheus 不同,這是區分大小寫的系統。

在 Azure 受控 Prometheus 中,下列時間序列視為相同:

diskSize(cluster="eastus", node="node1", filesystem="usr_mnt")
diskSize(cluster="eastus", node="node1", filesystem="usr_MNT")

上述範例是時間序列資料庫中的單一時間序列。

  • 針對這些時間序列擷取的任何樣本也將儲存,如同針對單一時間序列抓取/擷取的樣本相同。
  • 如果上述範例是以相同時間戳記擷取,則會隨機卸除其中一個樣本。
  • 時間序列資料庫中儲存並由查詢傳回的大小寫無法預測。 相同時間序列可能在不同時間傳回不同的大小寫。
  • 查詢中的計量名稱或標籤名稱/值比對器,將透過進行不區分大小寫的比較以自時間序列資料庫擷取。 如果查詢中有區分大小寫的比對器,則在進行字串比較時,便會自動將其視為不區分大小寫的比對器。

這是最佳做法,確保使用單一一致大小寫產生或抓取時間序列。

在開放原始碼 Prometheus 中,上述時間序列會視為兩個不同時間序列。 針對時間序列抓取/擷取的樣本將個別儲存。

Prometheus 參考

以下是 Prometheus 文件的連結。

常見問題集

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

如何擷取 Prometheus 計量?

所有資料都是使用 Prometheus 查詢語言 (PromQL) 所撰寫的查詢,從 Azure 監視器工作區擷取所得。 您可以撰寫自己的查詢、使用開放原始碼社群的查詢,以及使用包含 PromQL 查詢的 Grafana 儀表板。 請參閱 Prometheus 專案

我可以在 Azure 監視器計量瀏覽器中檢視我的 Prometheus 計量嗎?

搭配 PromQL 的計量瀏覽器支援使用 PromQL 將 Prometheus 計量資料視覺化。 若要使用搭配 PromQL 的計量瀏覽器支援,請從 Azure 入口網站中的任意 Azure 監視器工作區選取 [計量] 功能表項。 如需詳細資訊,請參閱搭配 PromQL 的計量瀏覽器 (預覽) (部分機器翻譯)。

使用適用於 Prometheus 的受管理服務時,我可以在 Azure 監視器工作區中儲存多個叢集的資料嗎?

是。 適用於 Prometheus 的受管理服務旨在可讓您在單一 Azure 監視器工作區中儲存數個 Azure Kubernetes Service 叢集的資料。 請參閱 Azure 監視器工作區概觀

哪些類型的資源可以將 Prometheus 計量傳送至適用於 Prometheus 的受管理服務?

我們的代理程式可用於 Azure Kubernetes Service 叢集和已啟用 Azure Arc 的 Kubernetes 叢集。 此代理程式針對 AKS 叢集以受控附加元件安裝,針對已啟用 Azure Arc 的 Kubernetes 叢集以延伸模組安裝,您可以進行設定以收集所要資料。 您也可以依照啟用遠端寫入的指示,在 Azure、另一個雲端或內部部署執行的 Kubernetes 叢集上設定遠端寫入。

如果您使用 Azure 入口網站以啟用 Prometheus 計量集合並從叢集的深入解析頁面安裝 AKS 附加元件或已啟用 Azure Arc 的 Kubernetes 延伸模組,則會將記錄集合啟用至 Log Analytics 並將 Prometheus 計量集合啟用至適用於 Prometheus 的受管理服務。 如需詳細資訊,請參閱資料來源

如何監視服務限制和配額?

Azure 監視器適用於 Prometheus 的受管理服務具有預設的擷取限制和配額。 如需 Prometheus 計量限制的資訊,請參閱 Azure 監視器服務限制 (部分機器翻譯)。 當您達到擷取限制時,可能會發生節流。 為了避免節流,您可以在 Azure 監視器工作區擷取限制上監視和設定警示。

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 監視器工作區,然後選取 [監視] 區段下的 [計量]
  2. 選取 [Azure 監視器工作區] 以作為範圍。 在 [計量] 下拉式清單中,選取 [檢視具有建立器的標準計量]
  3. 在 [計量] 下拉式清單中,選取 [啟用時間序列百分比使用率] 和 [每分鐘事件擷取百分比使用率],並確認兩者都低於 100%。

螢幕擷取畫面:顯示如何為 Azure 監視器工作區的擷取限制建立警示規則。

  1. 您可以設定 Azure 警示來監視使用率,並在使用率大於特定閾值時引發警示。 選取 [新增警示規則] 來建立 Azure 警示。

螢幕擷取畫面:顯示如何建立 Azure 監視器工作區限制警示。

如果引發警示,也就是擷取使用率超過閾值,您可以藉由建立支援票證來要求增加這些限制。

  1. 在 Azure 入口網站中,瀏覽至您的 Azure 監視器工作區,按一下 [支援 + 疑難排解]
  2. 輸入例如「服務和訂用帳戶限制 (配額)」的問題,然後選取 [服務和訂用帳戶限制 (配額)],並選取 [下一步]

螢幕擷取畫面:顯示如何建立限制增加的支援票證。

  1. 在下一個畫面中,選取您的訂用帳戶,然後針對 [配額類型] 選取 [Managed Prometheus]
  2. 提供其他詳細資料以建立支援票證。

下一步