Docker Compose
Все компоненты ClickStack распределены отдельно в виде индивидуальных Docker-образов:
- ClickHouse
- HyperDX
- OpenTelemetry (OTel) collector
- MongoDB
Эти образы можно комбинировать и развертывать локально с использованием Docker Compose.
Docker Compose открывает дополнительные порты для мониторинга и приема данных на основании настроек по умолчанию otel-collector
:
13133
: Точка проверки состояния для расширенияhealth_check
24225
: Получатель Fluentd для приема логов4317
: Получатель OTLP gRPC (стандарт для трасс, логов и метрик)4318
: Получатель OTLP HTTP (альтернатива gRPC)8888
: Точка доступа метрик Prometheus для мониторинга самого collector
Эти порты позволяют интегрироваться с различными источниками телеметрии и делают OpenTelemetry collector готовым к использованию в производственной среде для разнообразных потребностей в приеме данных.
Подходящее для
- Локальное тестирование
- Доказательства концепции
- Производственные развертывания, где отказоустойчивость не требуется и одного сервера достаточно для размещения всех данных ClickHouse
- При развертывании ClickStack, но с отдельным размещением ClickHouse, например, используя ClickHouse Cloud.
Шаги развертывания
Клонирование репозитория
Чтобы развернуть с помощью Docker Compose, клонируйте репозиторий HyperDX, перейдите в каталог и выполните команду docker-compose up
:
Переход к интерфейсу HyperDX
Перейдите по адресу http://localhost:8080, чтобы получить доступ к интерфейсу HyperDX.
Создайте пользователя, указав имя пользователя и пароль, соответствующий требованиям.
При нажатии на кнопку Создать
будут созданы источники данных для экземпляра ClickHouse, развернутого с помощью Helm chart.
Вы можете переопределить подключение к интегрированному экземпляру ClickHouse. Для получения дополнительной информации смотрите "Использование ClickHouse Cloud".

Для примера использования альтернативного экземпляра ClickHouse смотрите "Создать подключение к ClickHouse Cloud".
Завершение деталей подключения
Чтобы подключиться к развернутому экземпляру ClickHouse, просто нажмите Создать и примите настройки по умолчанию.
Если вы предпочитаете подключиться к вашему собственному внешнему кластеру ClickHouse, например, ClickHouse Cloud, вы можете вручную ввести ваши учетные данные подключения.
Если вас попросят создать источник, сохраните все значения по умолчанию и заполните поле Table
значением otel_logs
. Все остальные настройки должны быть автоматически определены, что позволит вам нажать Сохранить новый источник
.

Изменение настроек компоновки
Пользователи могут изменять настройки для стека, такие как используемая версия, через файл переменных окружения:
Конфигурирование OpenTelemetry collector
Конфигурацию OTel collector можно изменить при необходимости - смотрите "Изменение конфигурации".
Использование ClickHouse Cloud
Это распределение можно использовать с ClickHouse Cloud. Пользователи должны:
- Удалить службу ClickHouse из файла
docker-compose.yaml
. Это необязательно, если вы тестируете, так как развернутый экземпляр ClickHouse просто будет проигнорирован - хотя и будет расходовать локальные ресурсы. Если удаляете службу, убедитесь, что все ссылки на службу, такие какdepends_on
, удалены. - Изменить OTel collector для использования экземпляра ClickHouse Cloud, установив переменные окружения
CLICKHOUSE_ENDPOINT
,CLICKHOUSE_USER
иCLICKHOUSE_PASSWORD
в файле компоновки. В частности, добавьте переменные окружения в службу OTel collector:
CLICKHOUSE_ENDPOINT
должен быть HTTPS-эндпоинтом ClickHouse Cloud, включая порт 8443
, например, https://mxl4k3ul6a.us-east-2.aws.clickhouse.com:8443
- При подключении к интерфейсу HyperDX и создании подключения к ClickHouse используйте свои облачные учетные данные.
Поддержка типа JSON
ClickStack имеет бета-поддержку типа JSON с версии 2.0.4
.
Для получения преимуществ этого типа смотрите Преимущества типа JSON.
Чтобы включить поддержку типа JSON, пользователи должны установить следующие переменные окружения:
OTEL_AGENT_FEATURE_GATE_ARG='--feature-gates=clickhouse.json'
- включает поддержку в OTel collector, гарантируя, что схемы создаются с использованием типа JSON.BETA_CH_OTEL_JSON_SCHEMA_ENABLED=true
- включает поддержку в приложении HyperDX, позволяя запрашивать данные в формате JSON.
Чтобы установить их, измените соответствующие службы в docker-compose.yaml
: