Elasticsearch 是位于 Elastic Stack 核心的分布式搜索和分析引擎。 建立索引、搜索和分析都在这里进行。
本文介绍如何配置 Azure Monitor 适用于 Prometheus 的托管服务与 Azure Kubernetes 服务 (AKS) 以及已启用 Azure Arc 的 Kubernetes,以便通过抓取 Prometheus 指标来监控 Elasticsearch 集群。
- 在已启用 AKS 或已启用 Azure Arc 的 Kubernetes 上运行 Elasticsearch 群集
- 已在群集上启用适用于 Prometheus 的托管服务。 有关详细信息,请参阅启用 Prometheus 和 Grafana。
使用 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
可以使用 values 来配置 Elasticsearch 导出程序 Helm 图表。 指定可访问 Elasticsearch 服务器的正确服务器地址。
根据配置来设置用于在 Elasticsearch 服务器进行身份验证的用户名、密码或证书。 使用参数 es.uri
设置可访问 Elasticsearch 的地址。
备注
只有 Helm 图表版本 5.7.0 或更高版本支持通过 Helm 图表安装进行托管 Prometheus 服务/Pod 监视器配置。
也可以使用 --set serviceMonitor.enabled=true
Helm 图表参数,通过服务监视器而非 Pod 监视器来进行监视。 务必使用适用于 Prometheus 的托管服务支持的 API 版本,可通过参数 serviceMonitor.apiVersion=azmonitoring.coreos.com/v1
来设置。
如果你要配置任何其他服务或 Pod 监视器,请按照以下说明操作。
下载以下文件以记录规则:
- 模板文件
- 参数文件
下载以下文件以获取警报规则:
- 模板文件
- 参数文件
编辑参数文件中的以下值。
参数 价值 azureMonitorWorkspace
Azure Monitor 工作区的资源 ID。 在 Azure Monitor 工作区的“概述”页上的“JSON 视图”中检索。 location
Azure Monitor 工作区的位置。 在 Azure Monitor 工作区的“概述”页上的“JSON 视图”中检索。 clusterName
群集的名称。 从群集概述页面的“JSON 视图”中检索。 actionGroupId
警报操作组的资源 ID。 从群集概述页面的“JSON 视图”中检索。 详细了解操作组。 使用用于安装 Azure 资源管理器模板的任何标准方法部署模板。 有关指导,请参阅用于 Azure Monitor 的资源管理器模板示例。
如果你想使用任何其他开源 Prometheus 警报/记录规则,请使用 az-prom-rules-converter 来创建与 Azure 等效的 Prometheus 规则。
要使用 ID 或 JSON 导入以下 Grafana 仪表板,请按照从 Grafana Labs 导入仪表板中的说明进行操作:
成功应用服务监视器后,如果你想确保该附加组件已选取服务监视器目标,请遵循这些说明。