ClickHouse 서버
최종 수정: 2026. 1. 23.
ClickHouse 서버 설치
외부 VM 서버에 ClickHouse를 설치하는 방법을 안내합니다.
📋 업데이트 예정
알림: ClickHouse 서버 설치 스크립트(
o11y-db-install.sh)는 현재 개발 중입니다.
이 문서는 스크립트 완성 후 업데이트될 예정입니다.
개요
Skuber+ Observability는 3-Tier 아키텍처를 사용합니다. ClickHouse는 Host Cluster 내부가 아닌 별도의 외부 VM 서버에 설치됩니다.
환경 규모에 따라 두 가지 구성 옵션을 선택할 수 있습니다.
구성 옵션
옵션 1: 단일 노드 구성 (소규모 환경)
개발, 테스트, 소규모 프로덕션 환경에 적합합니다.
특징:
- ClickHouse 노드 1개
- ClickHouse Keeper 불필요
- 설치 및 관리 간단
- 데이터 복제 없음 (정기 백업 필수)
적합한 환경:
- 개발/테스트 환경
- 일일 데이터 50GB 이하
- Agent 클러스터 1~5개
옵션 2: 클러스터 구성 (대규모 환경)
고가용성과 데이터 복제가 필요한 프로덕션 환경에 적합합니다.
특징:
- ClickHouse 노드 2개 이상
- ClickHouse Keeper 클러스터 필수 (3개 노드)
- 데이터 자동 복제 (고가용성)
- 노드 장애 시에도 서비스 지속
적합한 환경:
- 프로덕션 환경
- 일일 데이터 50GB 이상
- Agent 클러스터 5개 이상
- SLA 요구사항이 있는 경우
하드웨어 요구사항
옵션 1: 단일 노드
| 항목 | 최소 사양 | 권장 사양 |
|---|---|---|
| VM 수 | 1개 | 1개 |
| CPU | 8 vCPU | 16 vCPU |
| 메모리 | 32GB RAM | 64GB RAM |
| 스토리지 | 500GB SSD | 1TB+ SSD |
| 스토리지 IOPS | 3,000 | 10,000+ |
옵션 2: 클러스터
ClickHouse 서버 (노드당)
| 항목 | 최소 사양 | 권장 사양 |
|---|---|---|
| VM 수 | 2개 | 2개 이상 |
| CPU | 8 vCPU | 16 vCPU |
| 메모리 | 32GB RAM | 64GB RAM |
| 스토리지 | 500GB SSD | 1TB+ SSD |
| 스토리지 IOPS | 3,000 | 10,000+ |
ClickHouse Keeper
| 항목 | 요구사항 |
|---|---|
| CPU | 2 vCPU |
| 메모리 | 4GB RAM |
| 노드 수 | 3개 (홀수 필수) |
| 배치 | 별도 VM 또는 ClickHouse 노드에 함께 배치 가능 |
참고: Keeper를 ClickHouse 노드와 같은 VM에 배치하면 VM 수를 줄일 수 있지만, 고성능 환경에서는 별도 VM을 권장합니다.
스토리지 산정 기준
| 데이터 유형 | 일일 예상 용량 (중규모) | 보존 기간 7일 |
|---|---|---|
| 메트릭 | 10-20 GB | 70-140 GB |
| 로그 | 20-50 GB | 140-350 GB |
| 트레이스 | 5-15 GB | 35-105 GB |
| 합계 | 35-85 GB | 245-595 GB |
네트워크 요구사항
| 포트 | 프로토콜 | 용도 | 접근 출처 |
|---|---|---|---|
| 9000 | TCP | ClickHouse Native | Host Cluster |
| 8123 | HTTP | ClickHouse HTTP (옵션) | 관리용 |
| 9181 | TCP | Keeper 통신 | Keeper 노드 간 |
설치 방법 (예정)
설치 스크립트 (개발 중)
# 🚧 개발 중 - 향후 제공 예정
# 옵션 1: 단일 노드
./o11y-db-install.sh \
--mode single \
--host <clickhouse-vm-ip> \
--ssh-user <ssh-username> \
--ssh-key <path-to-ssh-key>
# 옵션 2: 클러스터
./o11y-db-install.sh \
--mode cluster \
--hosts <clickhouse-vm-ip-1>,<clickhouse-vm-ip-2> \
--ssh-user <ssh-username> \
--ssh-key <path-to-ssh-key> \
--keeper-nodes <keeper-ip-1>,<keeper-ip-2>,<keeper-ip-3>수동 설치 (임시)
스크립트가 준비되기 전까지 수동으로 설치할 수 있습니다.
옵션 1: 단일 노드 설치
Step 1: ClickHouse 설치
# Ubuntu/Debian
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg
curl -fsSL 'https://packages.clickhouse.com/rpm/lts/repodata/repomd.xml.key' | \
sudo gpg --dearmor -o /usr/share/keyrings/clickhouse-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/clickhouse-keyring.gpg] \
https://packages.clickhouse.com/deb stable main" | \
sudo tee /etc/apt/sources.list.d/clickhouse.list
sudo apt-get update
sudo apt-get install -y clickhouse-server clickhouse-clientStep 2: 외부 접속 허용
sudo vi /etc/clickhouse-server/config.d/listen.xml<clickhouse>
<listen_host>0.0.0.0</listen_host>
</clickhouse>Step 3: 서비스 시작
sudo systemctl start clickhouse-server
sudo systemctl enable clickhouse-serverStep 4: 연결 테스트
clickhouse-client --host localhost --query "SELECT 1"옵션 2: 클러스터 설치
클러스터 구성은 ClickHouse 공식 문서를 참조하세요:
구성 선택 가이드
| 기준 | 옵션 1 (단일 노드) | 옵션 2 (클러스터) |
|---|---|---|
| 환경 | 개발/테스트/소규모 | 프로덕션/대규모 |
| 일일 데이터 | 50GB 이하 | 50GB 이상 |
| Agent 클러스터 | 1~5개 | 5개 이상 |
| 가용성 | 단일 장애점 | 고가용성 |
| 데이터 복제 | 없음 | 자동 복제 |
| Keeper | 불필요 | 필수 (3개 노드) |
| 관리 복잡도 | 낮음 | 중간 |
| 비용 | VM 1개 | VM 2개 + Keeper |
다음 단계
ClickHouse 서버 설치가 완료되면:
- Host 클러스터 설치 - ClickHouse 연결 정보로 Host 설치
- Agent 클러스터 설치 - 모니터링 대상 클러스터 설치