共用方式為


使用 Prometheus 的受控服務收集 Elasticsearch 計量

Elasticsearch 是彈性堆疊核心的分散式搜尋和分析引擎。 這是索引編製、搜尋和分析發生的位置。

本文說明如何使用 Azure Kubernetes Service (AKS) 和已啟用 Azure Arc 的 Kubernetes 來設定 適用於 Prometheus 的 Azure 監視器受控服務,以透過擷取 Prometheus 計量來監視 Elasticsearch 叢集。

必要條件

  • 在 AKS 或已啟用 Azure Arc 的 Kubernetes 上執行的 Elasticsearch 叢集
  • 叢集上已啟用適用於 Prometheus 的受控服務。 如需詳細資訊,請參閱 啟用 Prometheus 和 Grafana

安裝 Elasticsearch 匯出工具

使用 Helm 圖表安裝 Prometheus Elasticsearch 匯出工具

helm install azmon-elasticsearch-exporter --version 5.7.0 prometheus-community/prometheus-elasticsearch-exporter --set es.uri="https://username:password@elasticsearch-service.namespace:9200" --set podMonitor.enabled=true --set podMonitor.apiVersion=azmonitoring.coreos.com/v1

您可以使用 來設定 Elasticsearch 匯出工具 Helm 圖表。 指定可連線 Elasticsearch 伺服器的正確伺服器位址。

根據您的組態,設定用來向 Elasticsearch 伺服器進行驗證的使用者名稱、密碼或憑證。 使用 自變數 es.uri設定 Elasticsearch 可連線的位址。

附註

只有 Helm 圖表版本 5.7.0 或更新版本才支援使用 Helm 圖表安裝的受控 Prometheus 服務/Pod 監視設定。

您可以使用服務監視器,而不是使用 Pod 監視器,這可以通過使用 --set serviceMonitor.enabled=true Helm 圖表參數來實現。 請務必使用 Prometheus 所支援的受控服務 API 版本,並使用參數serviceMonitor.apiVersion=azmonitoring.coreos.com/v1

如果您想要設定任何其他服務或 Pod 監視器,請遵循 這些指示

部署規則

  1. 請下載這些檔案以設定錄製規則。

    下載這些檔案以取得警示規則:

  2. 在參數檔案中編輯下列值。

    參數 價值
    azureMonitorWorkspace Azure 監視器工作區的資源識別碼。 從 Azure Monitor 工作區的 概觀 頁面上的 JSON 檢視 中擷取它。
    location Azure 監視器工作區的位置。 從 Azure Monitor 工作區的 概觀 頁面上的 JSON 檢視 中擷取它。
    clusterName 叢集的名稱。 在叢集的概觀頁面上從JSON 檢視擷取它。
    actionGroupId 警示動作群組的資源識別碼。 從概觀頁面的JSON 檢視中擷取動作群組的相關資訊。 深入瞭解動作群組
  3. 使用任何標準方法安裝 Azure Resource Manager 範本來部署範本。 如需指引,請參閱 Azure 監視器的 Resource Manager 範例

  4. 部署範本之後,您可以在 Azure 入口網站中檢視規則,如 檢視 Prometheus 規則群組中所述。 檢閱警示閾值,以確定它們符合您的叢集和工作負載。 請根據需求更新臨界值。

    附註

    規則的範圍不限於叢集。 如果您想要將規則範圍設定為特定叢集,請參閱 將規則限製為特定叢集

您可以 深入瞭解 Prometheus 警示。 如果您想要使用任何其他開放原始碼 Prometheus 警示/錄製規則,請使用 az-prom-rules-converter 來建立 Azure 對等的 Prometheus 規則。

匯入 Grafana 儀表板

若要使用標識碼或 JSON 匯入下列 Grafana 儀錶板,請使用 從 Grafana Labs 匯入儀錶板中的指示:

疑難排解

當服務監視器成功套用時,如果您想要確定附加元件確實偵測到服務監視器目標,請遵循 這些指示