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


Azure Monitor и Prometheus

Prometheus — это популярное решение для мониторинга и оповещения с открытым кодом, которое широко используется в облачной экосистеме. Azure Monitor предоставляет полностью управляемую службу для Prometheus, которая позволяет собирать, хранить и анализировать метрики Prometheus без поддержки собственного сервера Prometheus. Эту управляемую службу можно использовать для сбора метрик Prometheus из кластеров и виртуальных машин Kubernetes или интеграции с ней с управляемых серверов Prometheus.

Управляемая служба Azure Monitor для Prometheus

Управляемая служба Azure Monitor для Prometheus предоставляет полностью управляемую и масштабируемую среду для запуска Prometheus. Это упрощает развертывание, управление и масштабирование Prometheus в AKS и Kubernetes с поддержкой Azure Arc, чтобы сосредоточиться на мониторинге приложений и инфраструктуры. В качестве полностью управляемой службы она обеспечивает высокий уровень доступности, гарантии соглашения об уровне обслуживания , автоматическое обновление программного обеспечения и хранилище высокомасштабируемых метрик, которое сохраняет данные до 18 месяцев.

Управляемая служба Azure Monitor для Prometheus предоставляет предварительно настроенные оповещения, правила и панели мониторинга. Он полностью поддерживает язык запросов Prometheus (PromQL) и предоставляет средства на портале Azure для интерактивного запроса и визуализации метрик Prometheus. С помощью рекомендуемых панелей мониторинга из сообщества Prometheus и собственной интеграции Grafana вы можете немедленно выполнить комплексный мониторинг. Он интегрируется с Azure Managed Grafana, предоставляет бесшовный источник данных для панелей мониторинга Azure Monitor с Grafana (предварительная версия), а также может предоставлять данные для вашей существующей самообслуживаемой среды Grafana.

Схема, на которой показаны общие сведения об управляемых средствах Prometheus и Azure Monitor, которые используют его.

Преимущества управляемой службы Azure Monitor для Prometheus

К ключевым преимуществам управляемой службы Azure Monitor для Prometheus относятся:

Pricing

Для управляемой службы Azure Monitor для Prometheus или создания рабочей области Azure Monitor не существует прямых затрат. Цены основаны на приеме и запросе собранных данных. Дополнительные сведения см. на вкладке "Метрики" в ценах Azure Monitor .

Сбор данных

В настоящее время управляемая служба Azure Monitor для Prometheus собирает данные непосредственно из AKS и Kubernetes с поддержкой Azure Arc. Azure Monitor предоставляет процесс подключения, который устанавливает агент Azure Monitor в вашем кластере и создает правило сбора данных (DCR) для определения процесса сбора данных и направления их в соответствующую рабочую область. Вы можете использовать шаблоны Azure, CLI, PowerShell и ARM/Bicep, чтобы легко включить и настроить мониторинг или напрямую работать с ConfigMap и DCR для более сложных сценариев.

Подробнее о включении Управляемого Prometheus в вашем кластере см. в разделе Включение мониторинга для кластеров Kubernetes. Чтобы включить управляемый сервис Prometheus для изолированных облаков Microsoft Azure, обратитесь в службу поддержки.

Хранилище данных

Единственное требование включить управляемую службу Azure Monitor для Prometheus — создать рабочую область Azure Monitor , которая предоставляет хранилище для метрик Prometheus. Добавьте рабочие области Azure Monitor, чтобы разделить данные для различных регионов, сред или команд. Подключение к ресурсам мониторинга, таким как кластеры Службы Azure Kubernetes (AKS), помогут вам создать новую рабочую область Azure Monitor или подключиться к существующей. Данные хранятся в течение 18 месяцев без дополнительных затрат.

Интеграция с самообслуживанием Prometheus

Управляемая служба Azure Monitor для Prometheus предназначена для замены самостоятельно управляемого Prometheus, поэтому вам не нужно управлять сервером Prometheus в кластерах Kubernetes. Вы можете столкнуться с ситуациями, когда вы хотите продолжать использовать самоуправляемый Prometheus в ваших кластерах Kubernetes, одновременно отправляя данные в управляемый Prometheus для долгосрочного хранения данных и создания централизованного представления по вашим кластерам. Это может быть временным решением при миграции на Managed Prometheus или долгосрочное решение, если у вас есть конкретные требования к поддержанию существующей среды.

Remote_write — это функция в Prometheus, которая позволяет отправлять метрики из локального экземпляра Prometheus в удаленное хранилище или в другой экземпляр Prometheus. Используйте эту функцию для отправки метрик из самоуправляемого Prometheus, работающего в кластере Kubernetes или виртуальных машинах, в рабочую область Azure Monitor, используемую Управляемым Prometheus.

На следующей схеме показана эта стратегия. Правило сбора данных (DCR) в Azure Monitor предоставляет конечную точку для отправки метрик от самоуправляемого Prometheus и определяет рабочую область Azure Monitor, в которую будут отправляться данные.

Схема, показывающая использование удаленной записи для отправки метрик из локального Prometheus в Managed Prometheus.

Чтобы настроить удаленную запись для сбора данных с самоуправляемого сервера Prometheus, см. Подключите самоуправляемый Prometheus к управляемой службе Azure Monitor для Prometheus.

Запросы и анализирование метрик Prometheus

Azure Monitor предоставляет несколько средств для запроса и анализа метрик Prometheus, хранящихся в рабочей области Azure Monitor. Вы можете написать собственные запросы с помощью PromQL, использовать запросы из сообщества с открытым кодом и использовать и создавать панели мониторинга Grafana. В следующей таблице описываются средства, доступные для запроса и анализа метрик Prometheus, хранящихся в рабочей области Azure Monitor.

Tool Description
Аналитика контейнеров Аналитика контейнеров предоставляет различные интерактивные представления для анализа метрик Prometheus для кластера Kubernetes. Просматривайте метрики высокого уровня для вашего кластера или углубляйтесь в анализ детальных метрик компонентов кластера, включая узлы, контроллеры и контейнеры. См . статью "Анализ данных кластера Kubernetes с помощью аналитики контейнеров".
Обозреватель метрик Azure Monitor с помощью PromQL Используйте обозреватель метрик с PromQL (предварительная версия) для анализа и визуализации платформы и метрик Prometheus на портале Azure. См. обозреватель метрик Azure Monitor с помощью PromQL.
Рабочие таблицы Azure Monitor Создавайте диаграммы и панели мониторинга на основе управляемой службы Azure Monitor для Prometheus, используя рабочие книги Azure и запросы PromQL. См. запрос метрик Prometheus с помощью рабочих книг Azure.
Grafana Визуализация метрик Prometheus с помощью панелей мониторинга Grafana является общим решением для визуализации данных Prometheus, и доступны различные панели мониторинга сообщества. Панели мониторинга Azure Monitor с Grafana (предварительная версия) предоставляют встроенный интерфейс без затрат. Используйте Azure Managed Grafana для комбинирования данных из разных источников на панелях мониторинга. См. Используйте Grafana для визуализации.
API запросов Prometheus Используйте PromQL с REST API для запроса метрик Prometheus, хранящихся в рабочей области Azure Monitor. Дополнительные сведения см. в разделе "Метрики запроса Prometheus" с помощью API и PromQL.

Правила и оповещения

Правила записи в Prometheus позволяют предварительно компютировать значения, хранящиеся в временных рядах, а правила генерации оповещений предоставляют упреждающее уведомление о предопределенных условиях в собранных метриках. Управляемая служба Azure Monitor для Prometheus автоматически развертывает предопределенный набор правил записи, а аналитика контейнеров позволяет легко включить набор общих правил генерации оповещений для кластеров Kubernetes.

Правила записи и оповещения хранятся в рабочей области Azure Monitor, и вы можете легко управлять существующими правилами и вручную создавать пользовательские правила с помощью различных методов, таких как портал Azure, CLI, Bicep и ARM. См. управляемую службу Azure Monitor для групп правил Prometheus для получения подробной информации.