Перейти к основному содержимому
Перейти к основному содержимому

Интеграция с Prometheus

Функция поддерживает интеграцию с Prometheus для мониторинга служб ClickHouse Cloud. Доступ к метрикам Prometheus предоставляется через конечную точку ClickHouse Cloud API, которая позволяет пользователям безопасно подключаться и экспортировать метрики в свой сборщик метрик Prometheus. Эти метрики могут быть интегрированы с панелями мониторинга, такими как Grafana, Datadog для визуализации.

Чтобы начать, создайте API-ключ.

API конечной точки Prometheus для получения метрик ClickHouse Cloud

Справочник API

МетодПутьОписание
GEThttps://api.clickhouse.cloud/v1/organizations/:organizationId/services/:serviceId/prometheus?filtered_metrics=[true | false]Возвращает метрики для конкретной службы
GEThttps://api.clickhouse.cloud/v1/organizations/:organizationId/prometheus?filtered_metrics=[true | false]Возвращает метрики для всех служб в организации

Параметры запроса

НазваниеРасположениеТип
Organization IDАдрес конечной точкиuuid
Service IDАдрес конечной точкиuuid (необязательно)
filtered_metricsПараметр запросаboolean (необязательно)

Аутентификация

Используйте свой API-ключ ClickHouse Cloud для базовой аутентификации:

Пример ответа

Метки метрик

Все метрики имеют следующие метки:

МеткаОписание
clickhouse_orgID организации
clickhouse_serviceID службы
clickhouse_service_nameИмя службы

Метрики информации

ClickHouse Cloud предоставляет специальную метрику ClickHouse_ServiceInfo, которая является gauge и всегда имеет значение 1. Эта метрика содержит все Метки метрик а также следующие метки:

МеткаОписание
clickhouse_cluster_statusСтатус службы. Может быть одним из следующих: [awaking | running | degraded | idle | stopped]
clickhouse_versionВерсия сервера ClickHouse, на которой работает служба
scrapeУказывает статус последнего сбора. Может быть либо full, либо partial
fullУказывает, что во время последнего сбора метрик не было ошибок
partialУказывает, что во время последнего сбора метрик были некоторые ошибки, и была возвращена только метрика ClickHouse_ServiceInfo.

Запросы на получение метрик не возобновят неактивную службу. Если служба находится в состоянии idle, будет возвращена только метрика ClickHouse_ServiceInfo.

Настройка Prometheus

Сервер Prometheus собирает метрики с заданных целей через определенные интервалы. Ниже приведен пример конфигурации для сервера Prometheus с использованием конечной точки Prometheus ClickHouse Cloud:

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

Интеграция с Grafana

У пользователей есть два основных способа интеграции с Grafana:

  • Конечная точка метрик – Этот подход имеет преимущество в том, что не требует дополнительных компонентов или инфраструктуры. Это предложение ограничено Grafana Cloud и требует только URL конечной точки Prometheus ClickHouse Cloud и учетных данных.
  • Grafana Alloy - Grafana Alloy является независимым от поставщиков дистрибутивом OpenTelemetry (OTel) Collector, заменяющим агент Grafana. Это может использоваться в качестве сборщика, разворачивается в вашей собственной инфраструктуре и совместимо с любой конечной точкой Prometheus.

Мы предоставляем инструкции по использованию этих вариантов ниже, сосредотачиваясь на деталях, специфичных для конечной точки Prometheus ClickHouse Cloud.

Grafana Cloud с конечной точкой метрик

  • Войдите в свой аккаунт Grafana Cloud
  • Добавьте новое подключение, выбрав Конечную точку метрик
  • Настройте URL сбора, чтобы указать на конечную точку Prometheus и используйте базовую аутентификацию для настройки подключения с API-ключом/секретом
  • Протестируйте подключение, чтобы убедиться, что вы можете подключиться
Настройка конечной точки метрик Grafana

После настройки вы должны увидеть метрики в выпадающем меню, которые вы можете выбрать для настройки панелей мониторинга:

Выпадающее меню для исследователя метрик Grafana
График исследователя метрик Grafana

Grafana Cloud с Alloy

Если вы используете Grafana Cloud, Alloy можно установить, перейдя в меню Alloy в Grafana и следуя инструкциям на экране:

Grafana Alloy

Это должно настроить Alloy с компонентом prometheus.remote_write для отправки данных в конечную точку Grafana Cloud с токеном аутентификации. Пользователям затем нужно только изменить конфигурацию Alloy (которая находится в /etc/alloy/config.alloy для Linux), чтобы включить скрепер для конечной точки Prometheus ClickHouse Cloud.

Ниже приведен пример конфигурации для Alloy с компонентом prometheus.scrape для сбора метрик из конечной точки ClickHouse Cloud, а также автоматически сконфигурированным компонентом prometheus.remote_write. Обратите внимание, что компонент конфигурации basic_auth содержит наш ID ключа API Cloud и секрет в качестве имени пользователя и пароля соответственно.

Обратите внимание, что параметр конфигурации honor_labels должен быть установлен в значение true, чтобы метка экземпляра была правильно заполнена.

Grafana self-managed с Alloy

Пользователи, управляющие Grafana самостоятельно, могут найти инструкции по установке агента Alloy здесь. Мы предполагаем, что пользователи настроили Alloy для отправки метрик Prometheus в желаемое место назначения. Компонент prometheus.scrape ниже заставляет Alloy собирать метрики с конечной точки ClickHouse Cloud. Мы предполагаем, что prometheus.remote_write получает собранные метрики. Измените ключ forward_to на целевое место назначения, если это не произойдет.

После настройки вы должны увидеть метрики, связанные с ClickHouse, в своем исследователе метрик:

Исследователь метрик Grafana

Обратите внимание, что параметр конфигурации honor_labels должен быть установлен в значение true, чтобы метка экземпляра была правильно заполнена.

Интеграция с Datadog

Вы можете использовать Agent и интеграцию OpenMetrics Datadog для сбора метрик с конечной точки ClickHouse Cloud. Ниже приведен простой пример конфигурации для этого агента и интеграции. Обратите внимание, что вы можете выбрать только те метрики, которые вам наиболее важны. Пример, приведенный ниже, экспортирует множество тысяч комбинаций метрик и экземпляров, которые Datadog будет считать пользовательскими метриками.


Интеграция Prometheus с Datadog