요구사항
요구사항
Skuber+ Observability를 설치하기 전에 필요한 시스템 요구사항을 확인합니다.
시스템 요구사항
개요
Skuber+ Observability는 3-Tier 아키텍처로 구성됩니다:
| 구성 요소 | 역할 | 필요 수 |
|---|---|---|
| Host Cluster | 중앙 수집 서버 (UI, OTel Gateway) | 1개 |
| ClickHouse Server | 데이터 저장소 (별도 VM) | 1개 이상 |
| Agent Cluster | 모니터링 대상 클러스터 | 1개 이상 |
Host Cluster 요구사항
하드웨어 요구사항
| 항목 | 최소 사양 | 권장 사양 | 대규모 환경 |
|---|---|---|---|
| 노드 수 | 1개 | 2개 | 3개 |
| 노드당 CPU | 4 cores | 8 cores | 8 cores |
| 노드당 메모리 | 8GB | 16GB | 16GB |
| 스토리지 | 50GB SSD | 100GB SSD | 100GB SSD |
Host Cluster는 데이터를 저장하지 않으며, 모든 데이터는 외부 ClickHouse 서버에 저장됩니다.
Host Cluster에 설치되는 컴포넌트:
| 컴포넌트 | 유형 | 역할 |
|---|---|---|
| o11y-hub | StatefulSet | UI + API 서버 |
| o11y-core | Deployment | 백엔드 쿼리 서비스 |
| OTel Collector Gateway | Deployment | 텔레메트리 데이터 수집/라우팅 |
| Schema Migrator | Job | DB 스키마 마이그레이션 (설치 시 1회 실행) |
총 3~4개의 Pod만 상시 실행됩니다 (Schema Migrator는 설치 시에만 실행).
소프트웨어 요구사항
| 항목 | 요구사항 |
|---|---|
| Kubernetes 버전 | 1.28 이상 (권장: 1.32+) |
| Helm 버전 | 3.10 이상 |
| kubectl | Kubernetes 버전과 호환 |
네트워크 요구사항
| 포트 | 프로토콜 | 용도 | 접근 출처 |
|---|---|---|---|
| 4317 | gRPC | OTLP 수신 (메트릭, 로그, 트레이스) | Agent Clusters |
| 4318 | HTTP | OTLP HTTP 수신 | Agent Clusters |
| 8080 | HTTP | UI 접근 (LoadBalancer) | 사용자 / Skuber+ Client |
| 9000 | TCP | ClickHouse 연결 | 내부 → ClickHouse Server (로드밸런서 또는 직접 연결) |
ClickHouse Server 요구사항
ClickHouse는 외부 별도 VM에 구축되며, Host Cluster 내부가 아닌 독립 서버입니다.
소프트웨어 요구사항
| 항목 | 요구사항 |
|---|---|
| ClickHouse 버전 | 24.1.8.22 (고정) |
| ClickHouse Keeper | ClickHouse 패키지에 포함 |
| OS | Ubuntu 22.04 LTS 이상 |
하드웨어 요구사항
| 항목 | 최소 사양 | 권장 사양 |
|---|---|---|
| ClickHouse VM | 1개 | 1개 |
| CPU | 8 vCPU | 16 vCPU |
| 메모리 | 32GB RAM | 64GB RAM |
| OS | Ubuntu 22.04 LTS 이상 | Ubuntu 22.04 LTS 이상 |
| Root Volume | 100GB gp3 | 100GB gp3 |
| Data Volume | 500GB SSD (gp3) | 1TB+ SSD (gp3) |
| 스토리지 IOPS | 3,000 | 10,000+ |
| Keeper VM | 1개 | 1개 |
Data Volume은
/var/lib/clickhouse경로에 마운트하는 것을 권장합니다.단일 노드 구성은 데이터 복제가 없어 노드 장애 시 데이터 손실 위험이 있습니다. S3 Cold Backup 설정을 권장합니다.
고가용성 클러스터 구성이 필요한 경우 별도 문의하세요. (sales@skuberplus.com)
스토리지 산정 기준
| 데이터 유형 | 일일 예상 용량 (중규모) | 보존 기간 7일 | 보존 기간 30일 |
|---|---|---|---|
| 메트릭 | 10~20 GB | 70~140 GB | 300~600 GB |
| 로그 | 20~50 GB | 140~350 GB | 600~1,500 GB |
| 트레이스 | 5~15 GB | 35~105 GB | 150~450 GB |
| 합계 | 35~85 GB | 245~595 GB | 1,050~2,550 GB |
실제 용량은 서비스 수, 트래픽 양, 로그 레벨에 따라 크게 달라질 수 있습니다.
S3 Warm 스토리지를 사용하면 로컬 디스크 사용량을 크게 줄일 수 있습니다. 자세한 내용은 데이터 보존 문서를 참조하세요.
VM 접근 요구사항
설치 도구(skuberplus-observability-db)가 SSH로 VM에 접속하여 ClickHouse와 에이전트를 설치합니다.
| 항목 | 요구사항 |
|---|---|
| SSH 접근 | 22 포트 오픈 (설치 담당자 IP에서 접근 가능) |
| SSH 인증 | 키 기반 인증 (비밀번호 인증도 지원) |
| sudo 권한 | 필수 (패키지 설치, 서비스 관리) |
네트워크 요구사항
| 포트 | 프로토콜 | 용도 | 접근 출처 |
|---|---|---|---|
| 9000 | TCP | ClickHouse Native | Host Cluster (로드밸런서 경유) |
| 8123 | HTTP | ClickHouse HTTP (옵션) | 관리용 |
| 9009 | TCP | 인터서버 복제 | ClickHouse 노드 간 (클러스터 구성 시) |
| 9181 | TCP | Keeper 통신 | Keeper 노드 간 |
| 9234 | TCP | Keeper Raft 합의 | Keeper 노드 간 (클러스터 구성 시) |
| 22 | TCP | SSH | 설치 담당자 IP |
Agent Cluster 요구사항
Agent Cluster는 가벼운 수집 에이전트만 설치되므로 최소한의 추가 리소스만 필요합니다.
Agent Cluster에 설치되는 컴포넌트:
| 컴포넌트 | 유형 | 역할 |
|---|---|---|
| OTel Collector Agent | DaemonSet | 노드별 텔레메트리 수집 (메트릭, 로그) |
| OTel Collector Deployment | Deployment | 클러스터 레벨 데이터 처리 + Host로 전송 |
| APM Agent (Beyla) | DaemonSet | eBPF 기반 자동 계측 (트레이스) |
| APM Cache | Deployment | APM Agent 메타데이터 캐시 |
| kube-state-metrics | Deployment | Kubernetes 오브젝트 메트릭 수집 |
| OTel Operator | Deployment | 자동 계측 Webhook 관리 |
노드당 DaemonSet 2개(OTel Agent + APM Agent)가 실행되며, 나머지는 클러스터당 1개씩 실행됩니다.
하드웨어 요구사항
| 항목 | 추가 요구사항 | 설명 |
|---|---|---|
| 노드당 CPU | +0.5 cores | OTel Collector + APM Agent |
| 노드당 메모리 | +512MB | OTel Collector + APM Agent |
| 스토리지 | 최소 요구 없음 | 버퍼링만 사용 |
컴포넌트별 리소스 사용량
| 컴포넌트 | CPU (request/limit) | 메모리 (request/limit) |
|---|---|---|
| OTel Collector (DaemonSet) | 100m / 500m | 128Mi / 512Mi |
| APM Agent (DaemonSet) | 100m / 500m | 128Mi / 512Mi |
| kube-state-metrics | 10m / 100m | 32Mi / 128Mi |
| OTel Operator | 10m / 100m | 64Mi / 128Mi |
소프트웨어 요구사항
| 항목 | 요구사항 |
|---|---|
| Kubernetes 버전 | 1.28 이상 |
| Linux 커널 | 5.8 이상 (eBPF 자동 계측 지원) |
| 컨테이너 런타임 | containerd 1.6+ 또는 CRI-O 1.24+ |
커널 버전 확인
APM Agent는 eBPF를 사용하므로 Linux 커널 5.8 이상이 필요합니다:
uname -r
출력 예: 5.15.0-91-generic (5.8 이상이면 호환)네트워크 요구사항
| 포트 | 프로토콜 | 용도 | 접근 대상 |
|---|---|---|---|
| 4317 | gRPC | OTLP 전송 (메트릭, 로그, 트레이스) | Host Cluster Gateway |
| 4318 | HTTP | OTLP HTTP 전송 | Host Cluster Gateway |
| 요구사항 | 설명 |
|---|---|
| 내부 DNS | Kubernetes Service Discovery 사용 |
| Egress 허용 | Host Cluster의 Gateway IP로 아웃바운드 허용 |
외부 네트워크 요구사항
Host Cluster와 Agent Cluster 모두 아래 외부 엔드포인트에 접근할 수 있어야 합니다.
| 대상 | 포트 | 프로토콜 | 용도 | 필요 시점 |
|---|---|---|---|---|
| registry.skuberplus.com | 443 | HTTPS | 컨테이너 이미지 Pull | 상시 |
폐쇄망 환경에서는 내부 레지스트리에 이미지를 미러링한 후 사용할 수 있습니다.
지원 플랫폼
Kubernetes 배포판
| 플랫폼 | 지원 상태 | 비고 |
|---|---|---|
| EKS (AWS) | 지원 | 완전 지원 |
| GKE (Google Cloud) | 지원 | 완전 지원 |
| AKS (Azure) | 지원 | 완전 지원 |
| NKS (Naver Cloud) | 지원 | 완전 지원 |
컨테이너 런타임
| 런타임 | 지원 상태 |
|---|---|
| containerd | 지원 (권장) |
| CRI-O | 지원 |
CPU 아키텍처
| 아키텍처 | 지원 상태 |
|---|---|
| amd64 (x86_64) | 지원 |
| arm64 | 지원 |
사전 점검 목록
Host Cluster
- Kubernetes 1.28+ 버전 확인
- kubectl 접근 권한 확인
- Helm 3.10+ 설치 확인
- LoadBalancer 또는 Ingress 설정 가능 여부
- ClickHouse 서버로 네트워크 연결 확인 (로드밸런서 또는 직접 연결, TCP 9000)
ClickHouse Server
- 서버 스펙 확인 (8 vCPU, 32GB RAM 이상)
- SSD 스토리지 500GB 이상 확인
- Data Volume 마운트 완료 (
/var/lib/clickhouse) - SSH 접속 가능 (설치 담당자 IP에서)
- sudo 권한 확인
Agent Cluster
- Kubernetes 1.28+ 버전 확인
- kubectl 접근 권한 확인
- 커널 버전 5.8+ 확인 (APM Agent용)
- Host Cluster Gateway IP로 네트워크 연결 확인
네트워크 점검
Agent Cluster에서 Host Cluster Gateway 연결 테스트:
kubectl run test --rm -it --image=busybox -- \
nc -zv <host-gateway-ip> 4317Host Cluster에서 ClickHouse 연결 테스트 (로드밸런서 또는 직접 연결):
kubectl run test --rm -it --image=busybox -- \
nc -zv <clickhouse-lb-or-ip> 9000다음 단계
요구사항 확인이 완료되면 다음 순서로 진행합니다:
- AWS 인프라 구성 가이드 — 로드밸런서, Security Group, IAM, 방화벽 설정
- 설치 가이드 — 설치 가이드
- Host 클러스터 설치 — 중앙 수집 서버 설치
- Agent 클러스터 설치 — 모니터링 대상 클러스터 설치
문의
기술 지원 문의: sales@skuberplus.com