Поделиться через


Собирайте метрики Elasticsearch, используя управляемую службу для Prometheus.

Elasticsearch — это распределенный движок поиска и аналитики в центре Elastic Stack. Здесь происходят индексация, поиск и анализ.

Эта статья описывает, как настроить функцию управляемого сервиса Azure Monitor для Prometheus с помощью Azure Kubernetes Service (AKS) и Kubernetes, включенного в Azure Arc, для мониторинга кластеров Elasticsearch путем сбора метрик Prometheus.

Предпосылки

  • Кластер Elasticsearch, работающий на AKS или Kubernetes с поддержкой Azure Arc
  • Управляемая услуга для Prometheus включена на кластере. Для получения дополнительной информации, см. Enable Prometheus and Grafana.

Установите Elasticsearch Exporter

Установите Prometheus Elasticsearch Exporter, используя Helm chart:

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

Вы можете настроить Helm чарт Elasticsearch Exporter с помощью values. Укажите правильные адреса серверов, по которым можно подключиться к серверам Elasticsearch.

В соответствии с вашей конфигурацией задайте имя пользователя, пароль или сертификаты, используемые для аутентификации на сервере Elasticsearch. Установите адрес, по которому Elasticsearch доступен, используя аргумент es.uri.

Примечание

Конфигурация управляемого сервиса Prometheus/мониторинга pod с установкой с помощью Helm chart поддерживается только с версией Helm chart 5.7.0 или выше.

Вы также можете использовать мониторинг сервиса вместо мониторинга подов, используя параметр схемы Helm --set serviceMonitor.enabled=true. Убедитесь, что вы используете версию API, поддерживаемую управляемым сервисом для Prometheus, с помощью параметра serviceMonitor.apiVersion=azmonitoring.coreos.com/v1.

Если вы хотите настроить любые другие сервисы или мониторы подов, следуйте этим инструкциям.

Применить правила

  1. Скачайте эти файлы для правил записи:

    Скачайте эти файлы для правил оповещения:

  2. Измените следующие значения в файлах параметров.

    Параметр Ценность
    azureMonitorWorkspace Идентификатор ресурса для рабочей области Azure Monitor. Получите это из представления JSON на странице Обзор для рабочей области Azure Monitor.
    location Расположение рабочей области Azure Monitor. Получите это из представления JSON на странице Обзор для рабочей области Azure Monitor.
    clusterName Имя кластера. Извлеките это из JSON view на странице Обзор для кластера.
    actionGroupId Идентификатор ресурса для группы действий оповещения. Извлеките её из представления JSON на странице Обзор для группы действий. Узнайте больше о группах действий.
  3. Разверните шаблон, используя любой стандартный метод для установки шаблонов Azure Resource Manager. Для получения рекомендаций см. Примеры шаблонов Resource Manager для Azure Monitor.

  4. После развертывания шаблона вы можете просмотреть правила в портале Azure, как описано в View Prometheus rule groups. Проверьте пороги оповещения, чтобы убедиться, что они соответствуют вашему кластеру и рабочим нагрузкам. Обновите соответствующие пороговые значения.

    Примечание

    Правила не привязаны к кластеру. Если вы хотите ограничить правила для определенного кластера, см. Ограничение правил для определенного кластера.

Вы можете узнать больше о предупреждениях Prometheus. Если вы хотите использовать другие open-source правила оповещения/записи Prometheus, используйте az-prom-rules-converter для создания эквивалентных Azure-правил Prometheus.

Импортируйте панели мониторинга Grafana

Чтобы импортировать следующие панели Grafana с помощью ID или JSON, используйте инструкции из раздела Импорт панели из Grafana Labs:

Устранение неполадок

Когда мониторинг службы успешно применяется, если вы хотите убедиться, что дополнение подхватывает цели монитора службы, следуйте этим инструкциям.