啟用 Azure Monitor 中監控虛擬機和 Kubernetes 叢集的私有連結

Azure Private Link 可讓您使用私人端點,將 Azure 平台即服務 (PaaS) 資源存取至虛擬網路。 Azure 監視器私人連結範圍 (AMPLS) 會將私人端點連線至一組 Azure 監視器資源,以定義監視網路的界限。

本文說明如何設定現有 Azure Monitor 私有連結範圍(AMPLS)來監控您的虛擬機(VM)與 Kubernetes 叢集。

先決條件

概念概觀

由 Azure Monitor 監控的 VM 和 Kubernetes 叢集都會使用 Azure Monitor 代理 來監控,所以它們的私有連結設定是類似的。 根據設定不同,每個平台都會將指標傳送到 Azure Monitor 工作區,或日誌到 Log Analytics 工作區。

在虛擬機或叢集上執行的 Azure Monitor 代理需要具備以下操作的連線能力:

  • 從 Azure Monitor 取得設定。 這包括與代理人相關的 資料收集規則(DCR ),定義應收集哪些日誌與指標資料,以及該傳送至何處。
  • 將資料傳送到 Azure Monitor 工作區和 Log Analytics 工作區。
  • 查詢 Azure Monitor 工作區和 Log Analytics 工作區的資料。

備註

虛擬機只有在已遷移至 OpenTelemetry 指標時,才會將指標傳送到 Azure Monitor 工作空間,詳見 《遷移到 VM 洞察》(OpenTelemetry (preview)中所述。 如果沒有,他們會將指標儲存在 Log Analytics 工作區中。 本文同樣的指引也適用於尚未遷移到 OpenTelemetry 指標的虛擬機,但只需設定 Log Analytics 工作區。

資料收集端點(DCE)在使用 Azure Monitor 的私有連結時用於 AMPLS 資源中描述的不同功能。 你會根據需求組合現有與新建立的 DCE。

啟用代理設定

虛擬機與叢集都需要 AMPLS 中的 資料收集端點(DCE )透過私有連結從 Azure Monitor 取得設定。 虛擬機或叢集只需一個 DCE 即可擷取其設定。 若同時啟用記錄與計量,系統會使用此 DCE 來擷取兩者的 DCR。 任何與虛擬機或叢集同一區域的 DCE 都可以使用,但通常最好還是用現有的 DCE。

如果你用的是 Azure Monitor 工作區來管理指標,那你可以使用該工作區自動建立的 DCE。 如果你沒有使用 Azure Monitor 工作區,或你的虛擬機或叢集與 Azure Monitor 工作區不同,那麼你需要在與虛擬機或叢集相同的區域建立一個新的 DCE。 如有需要,請依照 「建立資料收集端點 」的指引,在與虛擬機或叢集相同區域建立新的 DCE。

將虛擬機或叢集與 DCE 關聯

建立虛擬機或叢集與 DCE 之間的關聯,讓虛擬機/叢集能使用 DCE 從 Azure Monitor 取得設定。 每個虛擬機或叢集只能與單一 DCE 建立關聯,因此如果你建立另一個關聯,現有的關聯就會被替換。

如果你使用的是 Azure Monitor 工作區建立的 DCE,請從 Azure 入口網站的 概覽 頁面辨識它。

Azure Monitor 工作區的 DCE 截圖顯示。

在 Azure 入口網站的 監控 選單中,選擇 資料收集端點。 選擇 DCE,然後選擇 資源 標籤。點選 新增 並選擇叢集來建立關聯。

顯示 DCE 資源的截圖。

將 DCE 加入 AMPLS

每個為配置存取所建立的 DCE 都需要加入 AMPLS。 這包括由 Azure Monitor 工作區建立的 DCE,以及為不同區域叢集新建立的任何 DCE。

在 Azure 入口網站的監控選單中,選擇 Azure Monitor 私有連結範圍。 選擇你的 AMPLS,然後選擇 Azure Monitor 資源 標籤。點選 新增 並選擇 DCE 將其加入 AMPLS。

截圖示範如何將 DCE 加入 AMPLS。

啟用資料擷取

虛擬機或叢集需要在 AMPLS 中設置 DCE,才能透過私有連結將資料傳送到 Azure Monitor 工作區。 由於日誌分析工作區是直接加入 AMPLS,因此無需 DCE 即可將日誌資料傳送至 Log Analytics 工作區。

設定 Azure 監控工作區

啟用 Prometheus 指標時,每個叢集會自動建立一個 DCE。 此 DCE 的名稱將類似於 MSProm-<region>-<cluster>,並用於從叢集進行數據擷取。 只需要將它新增至 AMPLS。

在 Azure 入口網站的監控選單中,選擇 Azure Monitor 私有連結範圍。 選擇你的 AMPLS,然後選擇 Azure Monitor 資源 標籤。按 新增,然後選擇 DCE 以將其加入 AMPLS。

截圖示範如何將 DCE 加入 AMPLS。

配置日誌分析工作空間

不需要 DCE 來擷取至 Log Analytics 工作區,因為它會如 AMPLS 資源中所述直接新增至 AMPLS。 在 AMPLS 中新增 Log Analytics 工作區,以支援從連接的 VNet 叢集和虛擬機擷取資料。

在 Azure 入口網站的監控選單中,選擇 Azure Monitor 私有連結範圍。 選擇你的 AMPLS,然後選擇 Azure Monitor 資源 標籤。點 選新增 ,選擇日誌分析工作區將其加入 AMPLS。

截圖示範如何將 Log Analytics 工作區加入 AMPLS。

為 Azure 監視器工作區啟用查詢。

需要額外的私人端點來支援透過私有連結查詢 Azure Monitor 工作空間。 這類似於為 AMPLS 建立的私有端點,但此私有端點是專為 Azure Monitor 工作空間設計,以支援透過私有連結進行查詢。 關於此私人端點及其建立的 DNS 紀錄,請參閱 「Use Private Endpoints for Managed Prometheus and Azure Monitor workspace」。

請依照 Connect AMPLS to a Private Endpoint 的相同指引建立新的私有端點連線,但請使用以下設定來連接該資源:

截圖顯示建立私有端點連線。

房產 Description
Subscription 包含你的 AMPLS 的訂閱。
資源類型 Microsoft.Monitor/accounts
Resource 連結名稱
目標子資源 普羅米修斯指標

從私人 AKS 叢集擷取

如果您選擇使用 Azure 防火牆來限制叢集的輸出,您可以實作下列其中一項:

  • 開啟公用擷取端點的路徑。 使用下列兩個端點更新路由表:
    • *.handler.control.monitor.azure.com
    • *.ingest.monitor.azure.com
  • 啟用 Azure 防火牆以存取用於資料擷取的 Azure 監視器 Private Link 範圍和 DCE。

請依照以下步驟,透過私有連結虛擬網路和 AMPLS 為 Kubernetes 叢集設定遠端寫入 Prometheus 指標。

  1. 設定內部部署叢集,以使用 VPN 閘道或具有私人對等互連的 ExpressRoutes 連線到 Azure VNET。
  2. 將 AMPLS 連接到本地叢集所使用的虛擬網路中的私有端點。 此私人端點可用來存取您的 DCE。
  3. 在 Azure 入口網站的 Azure Monitor 工作區 總覽 頁面中,點選 資料收集端點
  4. 選取 DCE 的 [網路隔離] 頁面。
  5. 點選 新增 並選擇你的 AMPLS。 等幾分鐘讓設定自動傳播,然後你本地的 AKS 叢集資料會透過私有連結匯入你的 Azure Monitor 工作區。

確認資料擷取

有多種方法可以驗證資料是否透過私有連結從叢集被匯入。 一種方法是查看你叢集或虛擬機的 監控 選單。 你應該會看到正在收集的指標和事件。

截圖顯示監控叢集以驗證資料收集。

後續步驟