본문으로 바로가기
본문으로 바로가기

관리형 ClickStack 시작하기

Beta feature. Learn more.

가장 쉽게 시작하는 방법은 ClickHouse Cloud에서 Managed ClickStack을 배포하는 것입니다. 이렇게 하면 완전 관리형이고 보안이 강화된 백엔드를 제공하면서도 수집, 스키마, 관측성 워크플로우에 대한 완전한 제어를 유지할 수 있습니다. 사용자가 직접 ClickHouse를 운영할 필요가 없어지며, 다음과 같은 다양한 이점이 제공됩니다:

  • 스토리지와 독립적인 컴퓨팅 자동 확장
  • 객체 스토리지를 기반으로 한 저비용 및 사실상 무제한 보존
  • 웨어하우스를 통해 읽기 및 쓰기 워크로드를 서로 독립적으로 분리할 수 있는 기능
  • 통합 인증
  • 자동화된 백업
  • 보안 및 규정 준수 기능
  • 원활한 업그레이드

ClickHouse Cloud 가입

ClickHouse Cloud에 Managed ClickStack 서비스를 생성하려면 먼저 ClickHouse Cloud 빠른 시작 가이드첫 번째 단계를 완료하십시오.

Scale vs Enterprise

대부분의 ClickStack 워크로드에는 이 Scale 티어를 권장합니다. SAML, CMEK, HIPAA 컴플라이언스와 같은 고급 보안 기능이 필요하다면 Enterprise 티어를 선택하십시오. Enterprise 티어는 매우 대규모 ClickStack 배포를 위한 맞춤형 하드웨어 프로필도 제공합니다. 이러한 경우에는 지원팀에 문의하시기 바랍니다.

Cloud 공급자와 리전을 선택합니다.

리소스 선택기

CPU와 메모리를 지정할 때에는 예상 ClickStack 수집 처리량을 기준으로 산정하십시오. 아래 표는 이러한 리소스 규모를 결정하는 데 참고할 수 있는 가이드를 제공합니다.

월별 수집량권장 컴퓨트 리소스
< 10 TB / month2 vCPU × 3 레플리카
10–50 TB / month4 vCPU × 3 레플리카
50–100 TB / month8 vCPU × 3 레플리카
100–500 TB / month30 vCPU × 3 레플리카
1 PB+ / month59 vCPU × 3 레플리카

이 권장 사항은 다음과 같은 가정을 기반으로 합니다.

  • 데이터 볼륨은 한 달 기준 압축되지 않은 수집량을 의미하며, 로그와 트레이스 모두에 적용됩니다.
  • 쿼리 패턴은 관측성 사용 사례에서 일반적인 형태이며, 대부분의 쿼리는 보통 최근 24시간과 같은 최신 데이터를 대상으로 합니다.
  • 수집은 한 달 동안 비교적 균일하게 발생한다고 가정합니다. 버스트 트래픽이나 스파이크가 예상된다면 추가 여유 용량을 확보해야 합니다.
  • 스토리지는 ClickHouse Cloud 객체 스토리지를 통해 별도로 처리되며, 보존 기간을 제한하는 요소가 아닙니다. 장기간 보존되는 데이터는 드물게 조회된다고 가정합니다.

더 긴 기간을 자주 조회하거나, 무거운 집계 작업을 수행하거나, 동시 접속 사용자가 많은 액세스 패턴을 지원하려면 더 많은 컴퓨트 리소스가 필요할 수 있습니다.

두 개의 레플리카로도 주어진 수집 처리량에 필요한 CPU와 메모리 요구 사항을 충족할 수 있지만, 가능한 경우에는 동일한 총 용량을 유지하면서 서비스 중복성을 높이기 위해 세 개의 레플리카 사용을 권장합니다.

참고

이 값들은 추정치일 뿐이며 초기 기준선으로만 사용해야 합니다. 실제 요구 사항은 쿼리 복잡도, 동시성, 보존 정책, 수집 처리량 변동에 따라 달라집니다. 리소스 사용량을 항상 모니터링하고 필요에 따라 확장하십시오.

요구 사항을 지정한 후 Managed ClickStack 서비스가 프로비저닝되는 데 몇 분 정도 소요됩니다. 프로비저닝을 기다리는 동안 ClickHouse Cloud 콘솔의 다른 부분을 탐색하십시오.

프로비저닝이 완료되면 왼쪽 메뉴의 'ClickStack' 옵션이 활성화됩니다.

수집 설정

서비스가 프로비저닝되면 해당 서비스가 선택되어 있는지 확인한 후 왼쪽 메뉴에서 "ClickStack"을 클릭합니다.

수집 시작

「Start Ingestion」을 선택하면 수집 소스를 선택하라는 메시지가 표시됩니다. Managed ClickStack은 주요 수집 소스로 OpenTelemetry와 Vector를 지원합니다. 또한 사용자는 ClickHouse Cloud support integrations를 사용해 자체 스키마로 데이터를 ClickHouse에 직접 전송할 수도 있습니다.

소스 선택
OpenTelemetry 권장

수집 포맷으로 OpenTelemetry를 사용하는 것을 강력히 권장합니다. 가장 간단하고 최적화된 사용 경험을 제공하며, ClickStack과 효율적으로 동작하도록 특별히 설계된 기본 제공 스키마를 제공합니다.

Managed ClickStack로 OpenTelemetry 데이터를 보내기 위해서는 OpenTelemetry Collector 사용이 권장됩니다. Collector는 애플리케이션(및 다른 collector)에서 OpenTelemetry 데이터를 수신하고 이를 ClickHouse Cloud로 전달하는 게이트웨이 역할을 합니다.

Collector가 이미 실행 중이 아니라면 아래 단계를 따라 collector를 시작하십시오. 이미 collector가 있는 경우를 위해 구성 예제도 제공됩니다.

Collector 시작

다음 내용은 OpenTelemetry Collector의 ClickStack 배포판 사용을 권장하는 경로를 전제로 합니다. 이 배포판에는 추가 처리 기능이 포함되어 있으며 ClickHouse Cloud에 특화되어 최적화되어 있습니다. 자체 OpenTelemetry Collector를 사용하려는 경우 "기존 collector 구성"을 참고하십시오.

빠르게 시작하려면 표시된 Docker 명령을 복사하여 실행하십시오.

OTel collector 소스

이 명령에는 연결 자격 증명이 미리 채워져 있어야 합니다.

프로덕션 배포

이 명령은 Managed ClickStack에 연결하기 위해 default 사용자를 사용하지만, 프로덕션으로 전환할 때는 전용 사용자를 생성하고 구성을 수정하는 것이 좋습니다.

이 단일 명령을 실행하면 OTLP 엔드포인트를 포트 4317(gRPC)과 4318(HTTP)에 노출하는 ClickStack collector가 시작됩니다. 이미 OpenTelemetry 계측 및 에이전트가 있다면, 즉시 이 엔드포인트로 텔레메트리 데이터를 전송할 수 있습니다.

기존 collector 구성

기존 OpenTelemetry Collector를 구성하거나 자체 배포판을 사용하는 것도 가능합니다.

ClickHouse exporter 필요

예를 들어 contrib 이미지와 같은 자체 배포판을 사용하는 경우, 해당 이미지에 ClickHouse exporter가 포함되어 있는지 확인하십시오.

이를 위해 ClickHouse exporter를 적절한 설정과 함께 사용하고 OTLP 리시버를 노출하는 예제 OpenTelemetry Collector 구성이 제공됩니다. 이 구성은 ClickStack 배포판에서 기대하는 인터페이스와 동작에 맞춰져 있습니다.

아래는 이 구성의 예시입니다(UI에서 복사하면 환경 변수가 미리 입력됩니다).

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 collector 구성에 대한 자세한 내용은 "OpenTelemetry를 사용한 수집"을 참고하십시오.

수집 시작(선택 사항)

OpenTelemetry로 계측할 기존 애플리케이션이나 인프라가 있는 경우, UI에서 연결된 관련 가이드로 이동하십시오.

애플리케이션을 계측하여 트레이스와 로그를 수집하려면, 데이터를 OpenTelemetry Collector로 전송하는 지원 언어 SDKs를 사용하십시오. 이 Collector는 Managed ClickStack으로의 수집을 위한 게이트웨이 역할을 합니다.

로그는 에이전트 모드로 실행되며 동일한 collector로 데이터를 전달하는 OpenTelemetry Collector를 사용해 수집할 수 있습니다. Kubernetes 모니터링의 경우 전용 가이드를 따르십시오. 다른 통합에 대해서는 빠른 시작 가이드를 참고하십시오.

데모 데이터

또는 기존 데이터가 없다면 샘플 데이터셋 중 하나를 사용해 보십시오.

  • 예제 데이터셋 - 공개 데모에서 예제 데이터셋을 로드하여 간단한 문제를 진단해 보십시오.
  • 로컬 파일 및 메트릭 - 로컬 OTel collector를 사용하여 OSX 또는 Linux에서 로컬 파일을 로드하고 시스템을 모니터링합니다.

'Launch ClickStack'를 선택하여 ClickStack UI(HyperDX)에 액세스합니다. 자동으로 인증된 후 리디렉션됩니다.

OpenTelemetry 데이터에 대해서는 데이터 소스가 미리 생성되어 있습니다.

ClickStack UI

이것으로 모든 준비가 완료되었습니다. 🎉

이제 ClickStack을 탐색해 보십시오. 로그와 트레이스를 검색하고, 로그·트레이스·메트릭이 실시간으로 어떻게 연관되는지 확인하며, 대시보드를 구성하고, 서비스 맵을 탐색하고, 이벤트 델타와 패턴을 분석하고, 경보를 설정하여 문제를 선제적으로 감지하십시오.

다음 단계

기본 자격 증명 기록

위 단계에서 기본 자격 증명을 기록하지 않았다면 서비스로 이동하여 Connect를 선택하고, 비밀번호와 HTTP/네이티브 엔드포인트를 기록하십시오. 이러한 관리자 자격 증명은 안전하게 보관하고, 이후 가이드에서 다시 사용할 수 있습니다.

서비스 연결

새 사용자를 프로비저닝하거나 추가 데이터 소스를 연결하는 등의 작업을 수행하려면 Managed ClickStack 배포 가이드를 참조하십시오.