Helm
На этой странице описан Helm-чарт v2.x на основе подчартов. Если вы все еще используете чарт v1.x с inline-template, см. руководство по Helm для v1.x. Инструкции по миграции см. в руководстве по обновлению.
Helm-чарт для ClickStack доступен здесь и является рекомендуемым способом для промышленных развертываний.
Чарт v2.x использует двухэтапную установку. Сначала через чарт clickstack-operators устанавливаются операторы и CRD, затем — основной чарт clickstack, который создает пользовательские ресурсы под управлением операторов для ClickHouse, MongoDB и OpenTelemetry Collector.
По умолчанию Helm-чарт разворачивает все основные компоненты, включая:
- ClickHouse — управляется ClickHouse Operator через пользовательские ресурсы
ClickHouseClusterиKeeperCluster - HyperDX — UI и API для обсервабилити
- OpenTelemetry (OTel) collector — развертывается через официальный Helm-чарт OpenTelemetry Collector как подчарт
- MongoDB — управляется MongoDB Kubernetes Operator (MCK) через пользовательский ресурс
MongoDBCommunity
Однако его можно легко настроить для интеграции с существующим развертыванием ClickHouse — например, размещенным в ClickHouse Cloud.
Чарт поддерживает стандартные лучшие практики Kubernetes, включая:
- Конфигурацию для разных сред через
values.yaml - Ограничения ресурсов и масштабирование на уровне подов
- Настройку TLS и входного шлюза
- Управление секретами и настройку аутентификации
- Дополнительные манифесты для развертывания произвольных объектов Kubernetes (NetworkPolicy, HPA, ALB Входной шлюз и т. д.) вместе с чартом
Подходит для
- Пилотных проектов
- Продуктивной среды
Этапы развертывания
Установите операторы
Сначала установите чарт оператора. Это зарегистрирует CRD, необходимые для основного чарта:
Подождите, пока поды оператора будут готовы, прежде чем продолжить:
Проброс портов
Проброс портов позволяет получить доступ к HyperDX и настроить его. Если вы развёртываете систему в production, вместо этого следует открыть доступ к сервису через входной шлюз или балансировщик нагрузки, чтобы обеспечить корректный сетевой доступ, терминацию TLS и масштабируемость. Проброс портов лучше всего подходит для локальной разработки или разовых административных задач, но не для долгосрочной эксплуатации и не для сред с высокой доступностью.
Для рабочих развертываний настройте Входной шлюз с TLS вместо проброса портов. Подробные инструкции см. в руководстве по настройке входного шлюза.
Перейдите в интерфейс
Откройте http://localhost:8080, чтобы перейти в интерфейс HyperDX.
Создайте пользователя, указав имя пользователя и пароль, соответствующие требованиям.

После нажатия Create будут созданы источники данных для экземпляра ClickHouse, развернутого с помощью Helm-чарта.
Вы можете переопределить подключение по умолчанию к встроенному экземпляру ClickHouse. Подробнее см. в разделе "Использование ClickHouse Cloud".
Настройка значений (необязательно)
Вы можете изменить настройки с помощью флагов --set. Например:
Или отредактируйте values.yaml. Чтобы получить значения по умолчанию:
Пример конфигурации:
Использование секретов (необязательно)
Чарт v2.x использует единый секрет (clickstack-secret), который заполняется из hyperdx.secrets в файле values. Все конфиденциальные переменные окружения — включая пароли ClickHouse, пароли MongoDB и API-ключ HyperDX — передаются через этот секрет.
Чтобы переопределить значения секрета:
Для внешнего управления секретами (например, с помощью оператора для секретов) можно сослаться на уже существующий секрет Kubernetes:
Подробные инструкции по настройке API-ключей, включая несколько способов конфигурации и процедуры перезапуска подов, см. в руководстве по настройке API-ключей.
Использование ClickHouse Cloud
При использовании ClickHouse Cloud отключите встроенный экземпляр ClickHouse и укажите учетные данные Cloud:
Отдельно создайте секрет подключения:
Для продакшен-развертываний с конфигурацией через секреты, внешними OTel collector или минимальной установкой см. руководство по вариантам развертывания.
Примечания для продакшена
По умолчанию этот чарт устанавливает ClickHouse, MongoDB и OTel collector. Для продакшена рекомендуется управлять ClickHouse и OTel collector отдельно.
Чтобы отключить ClickHouse и OTel collector:
Для production-развертываний, включая настройку высокой доступности, управление ресурсами, настройку Входного шлюза/TLS и конфигурации для облачных платформ (GKE, EKS, AKS), см.:
- Руководство по конфигурации - Входной шлюз, TLS и управление секретами
- Развертывания в облаке - Настройки для облачных платформ и контрольный список для production
Конфигурация задач
По умолчанию в конфигурации чарта определена одна задача в виде CronJob, которая отвечает за проверку того, должны ли сработать оповещения. В v2.x конфигурация задач перенесена в hyperdx.tasks:
| Параметр | Описание | По умолчанию |
|---|---|---|
hyperdx.tasks.enabled | Включает или отключает cron-задачи в кластере. По умолчанию образ HyperDX выполняет cron-задачи в рамках процесса. Установите true, если хотите использовать отдельную cron-задачу в кластере. | false |
hyperdx.tasks.checkAlerts.schedule | Cron-расписание для задачи check-alerts | */1 * * * * |
hyperdx.tasks.checkAlerts.resources | Запросы и лимиты ресурсов для задачи check-alerts | См. values.yaml |
Обновление чарта
Чтобы перейти на более новую версию:
Чтобы проверить доступные версии чарта:
Если вы переходите с chart inline-template версии v1.x, инструкции по миграции см. в руководстве по обновлению. Это несовместимое изменение — обновление с помощью helm upgrade на месте не поддерживается.
Удаление ClickStack
Выполните удаление в обратном порядке:
Примечание: Объекты PersistentVolumeClaim, созданные операторами MongoDB и ClickHouse, не удаляются командой helm uninstall. Это сделано намеренно, чтобы предотвратить случайную потерю данных. Чтобы удалить PVC, см.:
Устранение неполадок
Проверка логов
Отладка установки, завершившейся с ошибкой
Проверка развертывания
По вопросам, связанным с Входным шлюзом, TLS или устранением неполадок при развертывании в Cloud, см.:
- Устранение неполадок Входного шлюза - Отдача ресурсов, переписывание путей, проблемы в браузере
- Развертывания в Cloud - Проблемы с GKE OpAMP и специфические проблемы Cloud
Выбор schema: Map или JSON
По умолчанию ClickStack хранит атрибуты в столбцах Map(LowCardinality(String), String). Это рекомендуемая schema для рабочих нагрузок обсервабилити. В сочетании с бакетизированной сериализацией Map и текстовыми индексами по ключам и значениям Map она обеспечивает выборочный поиск без накладных расходов на приём данных для каждого ключа, характерных для динамических JSON-подстолбцов.
Schema с типом JSON доступна в статусе бета для оценки на рабочих нагрузках с небольшим стабильным набором ключей атрибутов. Она не рекомендуется в качестве schema по умолчанию. Полное сравнение и список переменных окружения, необходимых для включения поддержки JSON, см. в разделе Map vs JSON type.
Сопутствующая документация
Руководства по развертыванию
- Варианты развертывания - Внешний ClickHouse, OTel collector и минимальное развертывание
- руководство по конфигурации - API-ключи, секреты и настройка входного шлюза
- Развертывания в Cloud - Конфигурации GKE, EKS и AKS, а также лучшие практики для промышленной эксплуатации
- Руководство по обновлению - Миграция с v1.x на v2.x
- Дополнительные манифесты - Развертывание пользовательских объектов Kubernetes вместе с чартом
Документация v1.x
- Helm (v1.x) - руководство по развертыванию для v1.x
- Конфигурация (v1.x) - конфигурация для v1.x
- Варианты развертывания (v1.x) - варианты развертывания для v1.x
- Развертывания в Cloud (v1.x) - конфигурации Cloud для v1.x
Дополнительные ресурсы
- Руководство по началу работы с ClickStack - Введение в ClickStack
- Репозиторий Helm-чартов ClickStack - Исходный код чартов и справочник по параметрам values
- Документация Kubernetes - Справочник по Kubernetes
- Документация Helm - Справочник по Helm