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

Интеграция с 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 для базовой аутентификации:

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

Метки метрик

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

LabelОписание
clickhouse_orgID организации
clickhouse_serviceID услуги
clickhouse_service_nameИмя услуги

Информационные метрики

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

LabelОписание
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 Agent. Его можно использовать как сборщик, он развертывается в вашей собственной инфраструктуре и совместим с любой конечной точкой Prometheus.

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

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

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

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


Grafana Cloud с Alloy

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


Это должно настроить 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 с самоуправлением и Alloy

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

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


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

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

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