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

Начало работы с Managed ClickStack

Beta feature. Learn more.

Самый простой способ начать — развернуть Managed ClickStack в ClickHouse Cloud, что обеспечивает полностью управляемый, безопасный бекенд при сохранении полного контроля над ингестией, схемой и обсервабилити-процессами. Это устраняет необходимость самостоятельной эксплуатации ClickHouse и даёт ряд преимуществ:

  • Автоматическое масштабирование вычислительных ресурсов независимо от хранилища
  • Низкая стоимость и практически неограниченный срок хранения на основе объектного хранилища
  • Возможность независимо изолировать нагрузки чтения и записи с помощью warehouses
  • Интегрированная аутентификация
  • Автоматизированные резервные копии
  • Функции безопасности и соответствия требованиям
  • Бесшовные обновления

Зарегистрируйтесь в ClickHouse Cloud

Чтобы создать сервис Managed ClickStack в ClickHouse Cloud, сначала выполните первый шаг из руководства по быстрому старту ClickHouse Cloud.

Scale vs Enterprise

Мы рекомендуем этот тариф Scale для большинства нагрузок ClickStack. Выберите тариф Enterprise, если вам требуются расширенные функции безопасности, такие как SAML, CMEK или соответствие требованиям HIPAA. Он также предлагает индивидуальные профили оборудования для очень крупных развертываний ClickStack. В таких случаях мы рекомендуем связаться со службой поддержки.

Выберите поставщика Cloud и регион.

Resource selector

При указании CPU и памяти оценивайте их исходя из ожидаемой пропускной способности ingesтa ClickStack. Таблица ниже предоставляет рекомендации по размеру этих ресурсов.

Monthly ingest volumeRecommended compute
< 10 TB / month2 vCPU × 3 replicas
10–50 TB / month4 vCPU × 3 replicas
50–100 TB / month8 vCPU × 3 replicas
100–500 TB / month30 vCPU × 3 replicas
1 PB+ / month59 vCPU × 3 replicas

Эти рекомендации основаны на следующих предположениях:

  • Объём данных относится к несжатому объёму_ingest_ в месяц и применяется как к логам, так и к трассировкам.
  • Шаблоны запросов типичны для сценариев observability, при этом большинство запросов ориентированы на свежие данные, обычно за последние 24 часа.
  • Ингестия относительно равномерна в течение месяца. Если вы ожидаете всплески трафика или пики нагрузки, следует предусмотреть дополнительный запас.
  • Хранилище обрабатывается отдельно через объектное хранилище ClickHouse Cloud и не является ограничивающим фактором для удержания данных. Предполагается, что данные, хранимые дольше, запрашиваются редко.

Для шаблонов доступа, которые регулярно запрашивают более длительные периоды, выполняют тяжёлые агрегации или обслуживают большое число одновременных пользователей, может потребоваться больше вычислительных ресурсов.

Хотя две реплики могут соответствовать требованиям по CPU и памяти для заданной пропускной способности ingesтa, мы рекомендуем по возможности использовать три реплики, чтобы обеспечить ту же общую ёмкость и повысить отказоустойчивость сервиса.

Примечание

Эти значения являются только оценками и должны использоваться как начальная база. Фактические требования зависят от сложности запросов, уровня параллелизма, политик хранения и вариаций пропускной способности ingesтa. Всегда мониторьте использование ресурсов и масштабируйте по мере необходимости.

После того как вы укажете требования, ваш управляемый сервис ClickStack будет подготовлен в течение нескольких минут. Пока идёт подготовка, вы можете изучить остальную часть ClickHouse Cloud console.

После завершения подготовки опция "ClickStack" в левом меню будет доступна.

Настройте ингестию

После того как ваш сервис будет создан, убедитесь, что этот сервис выбран, и нажмите «ClickStack» в левом меню.

Начать ингестию

Выберите "Начать ингестию", после чего вам будет предложено выбрать источник ингестии. Управляемый ClickStack поддерживает OpenTelemetry и Vector как основные источники ингестии. Однако пользователи также могут отправлять данные напрямую в ClickHouse в собственной схеме, используя любую из интеграций, поддерживаемых ClickHouse Cloud.

Выбор источника
Рекомендуется OpenTelemetry

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

Для отправки данных OpenTelemetry в управляемый ClickStack рекомендуется использовать OpenTelemetry Collector. Коллектор действует как шлюз, принимающий данные OpenTelemetry от ваших приложений (и других коллекторов) и передающий их в ClickHouse Cloud.

Если у вас еще не запущен коллектор, запустите его, выполнив приведенные ниже шаги. Если у вас уже есть работающие коллекторы, также предоставлен пример конфигурации.

Запустите коллектор

Далее предполагается рекомендуемый подход с использованием дистрибутива OpenTelemetry Collector от ClickStack, который включает дополнительную обработку и оптимизирован специально для ClickHouse Cloud. Если вы планируете использовать собственный OpenTelemetry Collector, см. раздел "Настройка существующих коллекторов."

Чтобы быстро начать работу, скопируйте и выполните показанную команду Docker.

Источник данных OTel collector

Эта команда будет содержать предварительно заполненные учетные данные для подключения.

Развертывание в production

Хотя эта команда использует пользователя default для подключения к Managed ClickStack, при переходе в production следует создать отдельного пользователя и изменить конфигурацию.

Выполнение этой команды запускает коллектор ClickStack с конечными точками OTLP, доступными на портах 4317 (gRPC) и 4318 (HTTP). Если у вас уже настроены инструментация и агенты OpenTelemetry, вы можете сразу начать отправку телеметрических данных на эти конечные точки.

Настройте существующие коллекторы

Также можно настроить собственные существующие коллекторы OpenTelemetry или использовать собственный дистрибутив коллектора.

Требуется экспортер ClickHouse

Если вы используете собственный дистрибутив, например contrib-образ, убедитесь, что он включает экспортер ClickHouse.

Для этого предоставлен пример конфигурации OpenTelemetry Collector, использующий экспортер ClickHouse с соответствующими настройками и предоставляющий OTLP-приемники. Данная конфигурация соответствует интерфейсам и поведению, ожидаемым дистрибутивом ClickStack.

Пример этой конфигурации приведён ниже (переменные окружения будут предзаполнены при копировании из интерфейса пользователя):

receivers:
  otlp/hyperdx:
    protocols:
      grpc:
        include_metadata: true
        endpoint: "0.0.0.0:4317"
      http:
        cors:
          allowed_origins: ["*"]
          allowed_headers: ["*"]
        include_metadata: true
        endpoint: "0.0.0.0:4318"
processors:
  batch:
  memory_limiter:
    # 80% of maximum memory up to 2G, adjust for low memory environments
    limit_mib: 1500
    # 25% of limit up to 2G, adjust for low memory environments
    spike_limit_mib: 512
    check_interval: 5s
connectors:
  routing/logs:
    default_pipelines: [logs/out-default]
    error_mode: ignore
    table:
      - context: log
        statement: route() where IsMatch(attributes["rr-web.event"], ".*")
        pipelines: [logs/out-rrweb]
exporters:
  debug:
    verbosity: detailed
    sampling_initial: 5
    sampling_thereafter: 200
  clickhouse/rrweb:
    database: default
    endpoint: <clickhouse_cloud_endpoint>
    password: <your_password_here>
    username: default
    ttl: 720h
    logs_table_name: hyperdx_sessions
    timeout: 5s
    retry_on_failure:
      enabled: true
      initial_interval: 5s
      max_interval: 30s
      max_elapsed_time: 300s
  clickhouse:
    database: default
    endpoint: <clickhouse_cloud_endpoint>
    password: <your_password_here>
    username: default
    ttl: 720h
    timeout: 5s
    retry_on_failure:
      enabled: true
      initial_interval: 5s
      max_interval: 30s
      max_elapsed_time: 300s

service:
  pipelines:
    traces:
      receivers: [otlp/hyperdx]
      processors: [memory_limiter, batch]
      exporters: [clickhouse]
    metrics:
      receivers: [otlp/hyperdx]
      processors: [memory_limiter, batch]
      exporters: [clickhouse]
    logs/in:
      receivers: [otlp/hyperdx]
      exporters: [routing/logs]
    logs/out-default:
      receivers: [routing/logs]
      processors: [memory_limiter, batch]
      exporters: [clickhouse]
    logs/out-rrweb:
      receivers: [routing/logs]
      processors: [memory_limiter, batch]
      exporters: [clickhouse/rrweb]

Расширенный источник данных для OTel collector

Для получения дополнительной информации по настройке коллекторов OpenTelemetry см. раздел "Ingesting with OpenTelemetry."

Запустите процесс ингестии (необязательно)

Если у вас есть существующие приложения или инфраструктура, которые нужно инструментировать с помощью OpenTelemetry, перейдите к соответствующим руководствам, на которые есть ссылки в UI.

Чтобы инструментировать приложения для сбора трассировок и логов, используйте поддерживаемые языковые SDKs, которые отправляют данные в ваш OpenTelemetry Collector, выступающий шлюзом для приёма данных в Managed ClickStack.

Логи можно собирать с помощью OpenTelemetry Collectors, запущенных в режиме агента и перенаправляющих данные в тот же коллектор. Для мониторинга Kubernetes используйте специальное руководство. Для других интеграций см. наши руководства по быстрому старту.

Демонстрационные данные

В качестве альтернативы, если у вас нет существующих данных, попробуйте один из наших тестовых наборов данных.

  • Пример набора данных — загрузите пример набора данных из нашего публичного демо и продиагностируйте простую проблему.
  • Локальные файлы и метрики — загрузите локальные файлы и отслеживайте состояние системы под управлением OSX или Linux, используя локальный OTel collector.

Выберите 'Launch ClickStack', чтобы открыть UI ClickStack (HyperDX). Вы будете автоматически аутентифицированы и перенаправлены.

Источники данных будут предварительно созданы для любых данных OpenTelemetry.

ClickStack UI

Вот и всё — вы готовы к работе. 🎉

Исследуйте ClickStack: начинайте поиск по логам и трейсам, смотрите, как логи, трейсы и метрики коррелируют в режиме реального времени, создавайте дашборды, изучайте карты сервисов, выявляйте дельты и паттерны событий и настраивайте алерты, чтобы опережать инциденты.

Дальнейшие шаги

Запишите учётные данные по умолчанию

Если вы не записали свои учётные данные по умолчанию на предыдущих шагах, перейдите к сервису и выберите Connect, зафиксировав пароль и HTTP- и native-эндпоинты. Сохраните эти административные учётные данные в надёжном месте — их можно будет повторно использовать в следующих руководствах.

Подключение к сервису

Для выполнения задач, таких как создание новых пользователей или добавление дополнительных источников данных, см. руководство по развёртыванию Managed ClickStack.