64 KiB
전체 차트 리소스 정의
개요
DIP 카탈로그의 모든 35개 Helm 차트에 대한 상세한 리소스 요구사항을 정리한 완전한 가이드입니다. 각 차트별로 Small, Medium, Large 티어의 CPU, 메모리, 볼륨 할당량을 제공합니다.
1. airflow
Apache Airflow - 워크플로우 오케스트레이션
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Scheduler | 250m/512Mi → 1000m/1Gi | 500m/1Gi → 2000m/2Gi | 1000m/2Gi → 4000m/4Gi |
| Workers | 500m/1Gi → 2000m/2Gi | 1000m/2Gi → 4000m/4Gi | 2000m/4Gi → 8000m/8Gi |
| Webserver | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Redis | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 10Gi | 50Gi | 200Gi |
| Redis Data | 1Gi | 5Gi | 20Gi |
| Logs Volume | 5Gi | 20Gi | 100Gi |
| DAGs Volume | 1Gi | 5Gi | 20Gi |
권장 사용 시나리오:
- Small: 개발/테스트, 소규모 워크플로우 (< 10 DAGs)
- Medium: 스테이징, 중간 규모 워크플로우 (10-50 DAGs)
- Large: 프로덕션, 대규모 워크플로우 (50+ DAGs)
custom-values.yaml 설정
worker:
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
scheduler:
replicas: 1
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
webserver:
replicas: 1
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
dags:
persistence:
enabled: true
size: 5Gi
storageClassName: "longhorn"
logs:
persistence:
enabled: true
size: 5Gi
storageClassName: longhorn
redis:
persistence:
# Enable persistent volumes
enabled: true
size: 1Gi
storageClassName: "longhorn"
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
postgresql:
primary:
persistence:
enabled: true
size: 8Gi # airflow에서 사용하는 DB의 볼륨 사이즈 설정
storageClass: "longhorn"
resources: {}
# limits:
# memory: 512Mi
# cpu: 500m
# requests:
# memory: 256Mi
# cpu: 250m
2. argo-cd
ArgoCD - GitOps 지속적 배포
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Server | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Controller | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Repo Server | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Redis | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| Dex | 50m/96Mi → 100m/144Mi | 100m/144Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi |
| ApplicationSet Controller | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| Notifications | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
볼륨 사이즈 권장사항: 필요 사항인지 검토 필요
- 현재 배포 시 볼륨 없이 배포.
컴포넌트 Small Medium Large Redis Data 1Gi 5Gi 20Gi Repository Cache 2Gi 10Gi 50Gi
권장 사용 시나리오:
- Small: 개발팀, 소규모 애플리케이션 (< 20개)
- Medium: 중간 규모 조직 (20-100개 애플리케이션)
- Large: 대규모 엔터프라이즈 (100+ 애플리케이션)
custom-values.yaml 설정
controller:
resources: {}
# limits:
# cpu: 500m
# memory: 512Mi
# requests:
# cpu: 250m
# memory: 256Mi
dex:
resources: {}
# requests:
# cpu: 5m
# memory: 96Mi
# limits:
# cpu: 10m
# memory: 144Mi
redis:
resources: {}
# limits:
# cpu: 200m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 64Mi
server:
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 50m
# memory: 64Mi
repoServer:
resources: {}
# limits:
# cpu: 50m
# memory: 128Mi
# requests:
# cpu: 10m
# memory: 64Mi
applicationSet:
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
notifications:
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
3. cert-manager
인증서 관리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Controller | 100m/256Mi → 250m/512Mi | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| Webhook | 50m/128Mi → 100m/256Mi | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi |
| CA Injector | 50m/128Mi → 100m/256Mi | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Certificate Storage | 1Gi | 2Gi | 5Gi |
권장 사용 시나리오:
- Small: 소규모 클러스터 (< 50개 인증서)
- Medium: 중간 규모 클러스터 (50-200개 인증서)
- Large: 대규모 클러스터 (200+ 인증서)
custom-values.yaml 설정
# controller 리소스 설정
resources: {}
# requests:
# cpu: 10m
# memory: 32Mi
webhook:
resources: {}
# requests:
# cpu: 10m
# memory: 32Mi
cainjector:
resources: {}
# requests:
# cpu: 10m
# memory: 32Mi
4. dnsup
DNS 업데이트 유틸리티
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| DNS Updater | 10m/32Mi → 20m/128Mi | 20m/64Mi → 50m/256Mi | 50m/128Mi → 100m/512Mi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Config Storage | 100Mi | 500Mi | 1Gi |
권장 사용 시나리오:
- Small: 단일 도메인 관리
- Medium: 다중 도메인 관리
- Large: 대규모 DNS 레코드 관리
custom-values.yaml 설정
resources: {}
# requests:
# cpu: 10m
# memory: 32Mi
# limits:
# cpu: 20m
# memory: 64Mi
5. flowise
AI 워크플로우 빌더
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| API Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Database | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Database Data | 5Gi | 20Gi | 100Gi |
| Flow Storage | 2Gi | 10Gi | 50Gi |
권장 사용 시나리오:
- Small: 개발/프로토타이핑
- Medium: 소규모 프로덕션
- Large: 대규모 AI 워크플로우
custom-values.yaml 설정
resources: {}
# requests:
# cpu: 500m
# memory: 1Gi
# limits:
# cpu: 1000m
# memory: 2Gi
persistence:
enabled: true
size: 2Gi
storageClass: longhorn
worker:
resources: {}
# requests:
# cpu: 100m
# memory: 128Mi
# limits:
# cpu: 100m
# memory: 128Mi
postgresql:
enabled: true
primary:
persistence:
enabled: true
storageClass: "longhorn"
size: 5Gi
resources: {}
# limits:
# memory: 512Mi
# cpu: 500m
# requests:
# memory: 256Mi
# cpu: 250m
6. gitea
Git 서버
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Gitea | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Git Repositories | 10Gi | 100Gi | 500Gi |
| PostgreSQL Data | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 개인/소규모 팀 (< 10 사용자)
- Medium: 중간 규모 팀 (10-50 사용자)
- Large: 대규모 조직 (50+ 사용자)
custom-values.yaml 설정
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
persistence:
size: 10Gi
storageClass: "longhorn"
postgresql:
persistence:
size: 5Gi
resources:
requests:
memory: 256Mi
cpu: 250m
7. harbor
컨테이너 레지스트리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Core | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Registry | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Portal | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| JobService | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Database | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Redis | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Trivy | 200m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi | 2000m/2Gi → 4000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Registry Storage | 50Gi | 500Gi | 2Ti |
| Database Data | 10Gi | 50Gi | 200Gi |
| Redis Data | 1Gi | 5Gi | 20Gi |
| Trivy Cache | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 개발팀 (< 100 이미지)
- Medium: 중간 규모 조직 (100-1000 이미지)
- Large: 엔터프라이즈 (1000+ 이미지)
custom-values.yaml 설정
portal:
resources: {}
# requests:
# memory: 256Mi
# cpu: 100m
core:
resources: {}
# requests:
# memory: 256Mi
# cpu: 100m
jobservice:
# resources:
# requests:
# memory: 256Mi
# cpu: 100m
registry:
registry:
resources:
requests:
memory: 256Mi
cpu: 100m
controller:
resources:
requests:
memory: 256Mi
cpu: 100m
trivy:
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 1
memory: 1Gi
database:
shmSizeLimit: 512Mi
# resources:
# requests:
# memory: 256Mi
# cpu: 100m
8. kafka (사용 안함)
분산 스트리밍 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Kafka Brokers | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Zookeeper | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Kafka Data | 20Gi | 200Gi | 1Ti |
| Kafka Logs | 10Gi | 50Gi | 200Gi |
| Zookeeper Data | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 개발/테스트 (< 10 토픽)
- Medium: 중간 처리량 (10-100 토픽)
- Large: 고처리량 (100+ 토픽)
9. kafka-ui
Kafka 관리 UI
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| UI Server | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
권장 사용 시나리오:
- Small: 소규모 Kafka 클러스터 모니터링
- Medium: 중간 규모 클러스터 관리
- Large: 대규모 클러스터 관리
custom-values.yaml 설정
resources: {}
# limits:
# cpu: 200m
# memory: 512Mi
# requests:
# cpu: 200m
# memory: 256Mi
10. keycloak
인증 및 권한 관리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Keycloak | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 소규모 조직 (< 100 사용자)
- Medium: 중간 규모 조직 (100-1000 사용자)
- Large: 대규모 엔터프라이즈 (1000+ 사용자)
custom-values.yaml 설정
resources: {}
# requests:
# cpu: "500m"
# memory: "1024Mi"
# limits:
# cpu: "500m"
# memory: "1024Mi"
# 내부 postgresql 사용시 설정
postgresql:
persistence:
enabled: true
size: 5Gi # airflow에서 사용하는 DB의 볼륨 사이즈 설정
storageClass: "longhorn"
resources: {}
# limits:
# memory: 512Mi
# cpu: 500m
# requests:
# memory: 256Mi
# cpu: 250m
11. kong
API 게이트웨이
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Kong Proxy | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Kong Ingress Controller | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 소규모 API (< 10 서비스)
- Medium: 중간 규모 API (10-50 서비스)
- Large: 대규모 마이크로서비스 (50+ 서비스)
custom-values.yaml 설정
# proxy 서버 자원 설정(initContainer도 설정을 공유)
resources: {}
# limits:
# cpu: 1
# memory: 2G
# requests:
# cpu: 1
# memory: 2G
ingressController:
resources: {}
# Example reasonable setting for "resources":
# resources:
# limits:
# cpu: 100m
# memory: 256Mi
# requests:
# cpu: 50m
# memory: 128Mi
postgresql:
resources: {}
# limits:
# memory: 512Mi
# cpu: 500m
# requests:
# memory: 256Mi
# cpu: 250m
12. kserve
ML 모델 서빙
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Inference Service | 2000m/4Gi + 1GPU → 4000m/8Gi + 1GPU | 4000m/8Gi + 1GPU → 8000m/16Gi + 2GPU | 8000m/16Gi + 2GPU → 16000m/32Gi + 4GPU |
권장 사용 시나리오:
- Small: 소형 모델 서빙
- Medium: 중간 규모 모델 서빙
- Large: 대형 모델 또는 고처리량 서빙
custom-values.yaml 설정
inferenceService:
resources:
limits:
cpu: "8"
memory: 16Gi
nvidia.com/gpu: "1"
requests:
cpu: "4"
memory: 8Gi
nvidia.com/gpu: "1"
13. kubeflow : kustomize 배포, 추가 검토 필요
ML 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Central Dashboard | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Jupyter Controller | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Katib Controller | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Pipeline | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi | 8000m/16Gi → 16000m/32Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Pipeline Storage | 20Gi | 100Gi | 500Gi |
| Notebook Storage | 10Gi | 50Gi | 200Gi |
| Artifacts | 10Gi | 100Gi | 500Gi |
권장 사용 시나리오:
- Small: 개발/실험 환경
- Medium: 소규모 ML 팀
- Large: 대규모 ML 조직
14. kyverno
정책 엔진
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Admission Controller | 200m/512Mi → 500m/1Gi | 500m/1Gi → 800m/1.5Gi | 1000m/2Gi → 2000m/4Gi |
| Background Controller | 200m/512Mi → 400m/1Gi | 400m/1Gi → 700m/1.5Gi | 1000m/2Gi → 1500m/3Gi |
| Cleanup Controller | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| Reports Controller | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
권장 사용 시나리오:
- Small: 소규모 클러스터 (< 50 정책)
- Medium: 중간 규모 클러스터 (50-200 정책)
- Large: 대규모 클러스터 (200+ 정책)
custom-values.yaml 설정
admissionController:
container:
resources:
# -- Pod resource limits
limits:
memory: 384Mi
# -- Pod resource requests
requests:
cpu: 100m
memory: 128Mi
backgroundController:
resources:
# -- Pod resource limits
limits:
memory: 128Mi
# -- Pod resource requests
requests:
cpu: 100m
memory: 64Mi
cleanupController:
resources:
# -- Pod resource limits
limits:
memory: 128Mi
# -- Pod resource requests
requests:
cpu: 100m
memory: 64Mi
reportsController:
resources:
# -- Pod resource limits
limits:
memory: 128Mi
# -- Pod resource requests
requests:
cpu: 100m
memory: 64Mi
15. langflow-ide
AI 워크플로우 IDE
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Frontend | 300m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Backend | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 5Gi | 20Gi | 100Gi |
| Backend Storage | 10Gi | 50Gi | 200Gi |
| Flow Files | 2Gi | 10Gi | 50Gi |
권장 사용 시나리오:
- Small: 개인 개발자
- Medium: 소규모 팀
- Large: 대규모 AI 개발팀
custom-values.yaml 설정
langflow:
backend:
resources:
requests:
cpu: 0.5
memory: 1Gi
# limits:
# cpu: 0.5
# memory: 1Gi
frontend:
resources:
requests:
cpu: 0.3
memory: 512Mi
# limits:
# cpu: 0.3
# memory: 512Mi
postgresql:
primary:
persistence:
size: 5Gi
storageClass: "longhorn"
resources: {}
# limits:
# memory: 512Mi
# cpu: 500m
# requests:
# memory: 256Mi
# cpu: 250m
16. langfuse
LLM 추적 및 분석
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Web Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Worker | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Valkey (Redis) | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| ClickHouse | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| ZooKeeper | 250m/512Gi → 375m/384Mi | 500m/512Mi → 750m/768Mi | 2000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 10Gi | 50Gi | 200Gi |
| Valkey Data | 8Gi | 20Gi | 100Gi |
| ClickHouse Data | 8Gi | 50Gi | 500Gi |
권장 사용 시나리오:
- Small: 소규모 LLM 애플리케이션
- Medium: 중간 규모 추적
- Large: 대규모 LLM 서비스
custom-values.yaml 설정
langfuse:
web:
resources: {}
worker:
resources: {}
# Valkey (Redis) 설정 - 기본값 참조
redis:
primary:
resources: {}
persistence:
enabled: true
size: 8Gi # 기본값
storageClass: ""
postgresql:
primary:
persistence:
enabled: true
storageClass: "longhorn"
size: 10Gi
resources: {}
# ClickHouse 설정 - 기본값 참조
clickhouse:
resources: {}
persistence:
enabled: true
size: 8Gi # 기본값
storageClass: ""
# Zookeeper 설정 (ClickHouse 클러스터링용)
zookeeper:
enabled: true
resources: {}
참고) langfuse 자원 설정
- langfuse 차트에서는 resoucePreset을 사용하여 자원을 설정.
- resource를 설정 시 Preset은 무시됨.
{{- $presets := dict
"nano" (dict
"requests" (dict "cpu" "100m" "memory" "128Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "150m" "memory" "192Mi" "ephemeral-storage" "2Gi")
)
"micro" (dict
"requests" (dict "cpu" "250m" "memory" "256Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "375m" "memory" "384Mi" "ephemeral-storage" "2Gi")
)
"small" (dict
"requests" (dict "cpu" "500m" "memory" "512Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "750m" "memory" "768Mi" "ephemeral-storage" "2Gi")
)
"medium" (dict
"requests" (dict "cpu" "500m" "memory" "1024Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "750m" "memory" "1536Mi" "ephemeral-storage" "2Gi")
)
"large" (dict
"requests" (dict "cpu" "1.0" "memory" "2048Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "1.5" "memory" "3072Mi" "ephemeral-storage" "2Gi")
)
"xlarge" (dict
"requests" (dict "cpu" "1.0" "memory" "3072Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "3.0" "memory" "6144Mi" "ephemeral-storage" "2Gi")
)
"2xlarge" (dict
"requests" (dict "cpu" "1.0" "memory" "3072Mi" "ephemeral-storage" "50Mi")
"limits" (dict "cpu" "6.0" "memory" "12288Mi" "ephemeral-storage" "2Gi")
)
}}
17. litellm
LLM 프록시
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Proxy Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Database | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Database Data | 5Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 개발/테스트
- Medium: 소규모 프로덕션
- Large: 고처리량 프록시
custom-values.yaml 설정
resources: {}
postgresql:
primary:
resources: {}
persistence:
storageClass: ""
size: 5Gi
18. mlflow
ML 실험 추적
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Tracking Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Run Container | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| MinIO | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 5Gi | 20Gi | 100Gi |
| MinIO Storage | 20Gi | 200Gi | 1Ti |
| Artifacts | 10Gi | 100Gi | 500Gi |
권장 사용 시나리오:
- Small: 개인 연구자
- Medium: 소규모 ML 팀
- Large: 대규모 ML 조직
custom-values.yaml 설정
tracking:
resources: {}
run:
resources: {}
postgresql:
primary:
resources: {}
persistence:
storageClass: ""
size: 5Gi
19. model-registry : kustomize 배포, kubeflow 최신 버전에 이미 통합
ML 모델 레지스트리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Registry Server | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Database | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Model Storage | 50Gi | 500Gi | 2Ti |
| Database Data | 10Gi | 50Gi | 200Gi |
권장 사용 시나리오:
- Small: 소규모 모델 관리
- Medium: 중간 규모 모델 레지스트리
- Large: 엔터프라이즈 모델 관리
20. nemo
NVIDIA NeMo 마이크로서비스 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Data Store | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Data Store PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Customizer | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Customizer PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Evaluator | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Evaluator PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Evaluator Milvus | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Argo Workflows Server | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Argo Workflows Controller | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Guardrails | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Entity Store | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Entity Store PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| NeMo Operator - Manager | 512m/1Gi → 1024m/2Gi | 1024m/2Gi → 2048m/4Gi | 2048m/4Gi → 4096m/8Gi |
| NeMo Operator - Kube RBAC Proxy | 5m/64Mi → 500m/128Mi | 100m/128Mi → 250m/256Mi | 250m/256Mi → 500m/512Mi |
| NIM Operator | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Deployment Management | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| NIM Proxy | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Volcano Scheduler | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Volcano Controller | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| Volcano Admission | 100m/128Mi → 300m/300Mi | 300m/300Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Data Store Storage | 1Gi | 10Gi | 100Gi |
| Data Store PostgreSQL | 1Gi | 10Gi | 100Gi |
| Customizer Models Storage | 20Gi | 100Gi | 500Gi |
| Customizer Training PVC | 10Gi | 50Gi | 200Gi |
| Customizer PostgreSQL | 5Gi | 20Gi | 100Gi |
| Evaluator PostgreSQL | 5Gi | 20Gi | 100Gi |
| Evaluator Milvus | 10Gi | 50Gi | 200Gi |
| Entity Store PostgreSQL | 5Gi | 20Gi | 100Gi |
| NIM Model Storage (선택적) | 50Gi | 200Gi | 1Ti |
권장 사용 시나리오:
- Small: 개발/테스트 환경, 소규모 AI 워크플로우
- Medium: 스테이징 환경, 중간 규모 모델 개발
- Large: 프로덕션 환경, 대규모 AI/ML 파이프라인
custom-values.yaml 설정
# 기본 설정 (현재 custom-values.yaml 기반)
data-store:
enabled: true
persistence:
enabled: true
size: 1Gi # 기본값
storageClass: ""
resources: {} # 기본값 사용
postgresql:
primary:
persistence:
storageClass: "longhorn"
size: 1Gi
resources: {}
customizer:
enabled: true
modelsStorage:
enabled: true
size: 20Gi # 기본값
storageClassName: ""
postgresql:
primary:
persistence:
storageClass: "longhorn"
size: 5Gi
resources: {}
evaluator:
enabled: true
argoWorkflows:
enabled: true
crds:
install: false # DIP 환경에서는 ArgoCD가 선행 설치됨
resources: {}
argoWorkflows:
controller:
resources: {}
server:
resources: {}
milvus:
standalone:
resources: {}
persistence:
persistentVolumeClaim:
storageClass: ""
size: 10Gi
postgresql:
primary:
persistence:
storageClass: "longhorn"
size: 5Gi
resources: {}
guardrails:
enabled: true
resources: {}
entity-store:
enabled: true
postgresql:
primary:
persistence:
storageClass: "longhorn"
size: 5Gi
resources: {}
nemo-operator:
enabled: true
controllerManager:
kubeRbacProxy:
resources:
requests:
cpu: 5m
memory: 64Mi
limits:
cpu: 500m
memory: 128Mi
manager:
resources:
requests:
cpu: 512m
memory: 1Gi
limits:
cpu: 1024m
memory: 2Gi
nim-operator:
enabled: true
operator:
resources:
limits:
cpu: "1"
memory: 256Mi
requests:
cpu: 500m
memory: 128Mi
deployment-management:
enabled: true
resources: {}
nim-proxy:
enabled: true
resources: {}
volcano:
enabled: true
custom:
admission_enable: true
admission_replicas: 1
controller_enable: true
controller_replicas: 1
scheduler_enable: true
scheduler_replicas: 1
admission_resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 300m
memory: 300Mi
scheduler_resources:
requests:
cpu: 200m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
controller_resources:
requests:
cpu: 200m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
21. nim
NVIDIA Inference Microservice
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Inference Server | 4000m/8Gi + 1GPU → 8000m/16Gi + 1GPU | 8000m/16Gi + 2GPU → 16000m/32Gi + 2GPU | 16000m/32Gi + 4GPU → 32000m/64Gi + 4GPU |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Model Storage | 20Gi | 100Gi | 500Gi |
권장 사용 시나리오:
- Small: 소형 모델 추론
- Medium: 중간 처리량 추론
- Large: 고처리량 추론
custom-values.yaml 설정
nimService:
resources:
requests:
cpu: 4
memory: 8Gi
nvidia.com/gpu: 1
limits:
cpu: 8
memory: 16Gi
nvidia.com/gpu: 1
storage:
pvc:
storageClass: longhorn
size: 20Gi
volumeAccessMode: ReadWriteMany
22. ollama
로컬 LLM 서빙
| 컴포넌트 | Small (CPU) | Medium (GPU) | Large (Multi-GPU) |
|---|---|---|---|
| Model Server | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi + 1GPU → 8000m/16Gi + 1GPU | 8000m/16Gi + 2GPU → 16000m/32Gi + 2GPU |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Model Storage | 30Gi | 100Gi | 500Gi |
권장 사용 시나리오:
- Small: CPU 기반 소형 모델
- Medium: GPU 기반 중간 모델
- Large: 다중 GPU 대형 모델
custom-values.yaml 설정
persistentVolume:
enabled: true
size: "30Gi"
storageClass: longhorn
resources:
requests:
memory: 4096Mi
cpu: 2000m
limits:
memory: 8192Mi
cpu: 4000m
23. open-webui
LLM 웹 인터페이스
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Web Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Data Storage | 2Gi | 10Gi | 50Gi |
| Upload Storage | 1Gi | 5Gi | 20Gi |
권장 사용 시나리오:
- Small: 개인 사용
- Medium: 소규모 팀
- Large: 대규모 사용자
custom-values.yaml 설정
resources: {}
persistence:
enabled: true
size: 2Gi
accessModes:
- ReadWriteOnce
storageClass: ""
24. postgresql-ha
고가용성 PostgreSQL
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL (Repmgr) | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Pgpool | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Primary Data | 20Gi | 100Gi | 500Gi |
| Replica Data | 20Gi | 100Gi | 500Gi |
| WAL Archive | 10Gi | 50Gi | 200Gi |
권장 사용 시나리오:
- Small: 소규모 애플리케이션
- Medium: 중간 규모 데이터베이스
- Large: 고가용성 엔터프라이즈 DB
custom-values.yaml 설정
postgresql:
replicaCount: 3
resources:
requests:
cpu: 100m
memory: 512Mi
limits:
cpu: 500m
memory: 1024Mi
pgpool:
resources: {}
# requests:
# cpu: 100m
# memory: 128Mi
# limits:
# cpu: 200m
# memory: 256Mi
persistence:
enabled: true
size: 8Gi
storageClass: ""
volumePermissions:
enabled: true
podSecurityContext:
runAsUser: 0
25. qdrant
벡터 데이터베이스
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Qdrant Server | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Qdrant Storage | 10Gi | 100Gi | 1Ti |
권장 사용 시나리오:
- Small: 소규모 벡터 검색
- Medium: 중간 규모 임베딩
- Large: 대규모 벡터 데이터베이스
custom-values.yaml 설정
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
persistence:
accessModes: ["ReadWriteOnce"]
size: 10Gi
storageClassName: ""
26. ragflow
RAGFlow - AI 기반 문서 검색 및 RAG 시스템
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| RAGFlow | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Infinity | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| MinIO | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| MySQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Redis | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Infinity Storage | 5Gi | 20Gi | 100Gi |
| MinIO Storage | 5Gi | 50Gi | 200Gi |
| MySQL Storage | 5Gi | 20Gi | 100Gi |
| Redis Storage | 5Gi | 10Gi | 50Gi |
권장 사용 시나리오:
- Small: 개발/테스트, 소규모 문서 처리 (< 1000개 문서)
- Medium: 중간 규모 RAG 시스템 (1000-10000개 문서)
- Large: 대규모 지식 베이스 (10000+ 개 문서)
custom-values.yaml 설정
ragflow:
deployment:
resources: {}
# limits:
# cpu: 1000m
# memory: 2Gi
# requests:
# cpu: 500m
# memory: 1Gi
infinity:
storage:
className: "longhorn"
capacity: 5Gi
deployment:
resources: {}
# limits:
# cpu: 1000m
# memory: 2Gi
# requests:
# cpu: 500m
# memory: 1Gi
minio:
storage:
className: "longhorn"
capacity: 5Gi
deployment:
resources: {}
# limits:
# cpu: 500m
# memory: 1Gi
# requests:
# cpu: 200m
# memory: 512Mi
mysql:
storage:
className: "longhorn"
capacity: 5Gi
deployment:
resources: {}
# limits:
# cpu: 500m
# memory: 1Gi
# requests:
# cpu: 250m
# memory: 512Mi
redis:
storage:
className: "longhorn"
capacity: 5Gi
deployment:
resources: {}
# limits:
# cpu: 200m
# memory: 512Mi
# requests:
# cpu: 100m
# memory: 256Mi
27. rancher
Kubernetes 관리 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Rancher Server | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
권장 사용 시나리오:
- Small: 소규모 클러스터 관리 (< 5 클러스터)
- Medium: 중간 규모 관리 (5-20 클러스터)
- Large: 대규모 멀티 클러스터 (20+ 클러스터)
custom-values.yaml 설정
resources:
requests:
cpu: 100m
memory: 500Mi
limits:
cpu: 1000m
memory: 1000Mi
28. rancher-monitoring
Rancher 모니터링 스택 - Prometheus Operator 기반 모니터링
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Prometheus | 250m/100Mi → 1000m/2Gi | 500m/1Gi → 2000m/4Gi | 1000m/2Gi → 4000m/8Gi |
| Grafana | 100m/100Mi → 200m/200Mi | 200m/200Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| AlertManager | 100m/100Mi → 1000m/500Mi | 200m/200Mi → 1500m/1Gi | 500m/500Mi → 2000m/2Gi |
| Prometheus Operator | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| Node Exporter | 50m/64Mi → 100m/128Mi | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi |
| Kube State Metrics | 100m/128Mi → 200m/256Mi | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Prometheus Storage | 10Gi | 50Gi | 200Gi |
| Grafana Storage | 1Gi | 5Gi | 20Gi |
| AlertManager Storage | 1Gi | 5Gi | 20Gi |
권장 사용 시나리오:
- Small: 소규모 클러스터 (< 10 노드, 기본 모니터링)
- Medium: 중간 규모 클러스터 (10-50 노드, 상세 모니터링)
- Large: 대규모 클러스터 (50+ 노드, 멀티 클러스터 모니터링)
custom-values.yaml 설정
grafana:
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: 200m
memory: 200Mi
prometheusOperator:
resources: {}
prometheus:
prometheusSpec:
resources:
requests:
cpu: 250m
memory: 100Mi
limits:
cpu: 1000m
memory: 2000Mi
# 메트릭 수집 주기
scrapeInterval: 1m
# 알림 평가 주기
evaluationInterval: 1m
# 메트릭 보관 기간
retention: 30d
# 메트릭 보관 용량 (볼륨 크기보다 작게 설정)
retentionSize: 10GB
# Prometheus 데이터 저장소 설정
storageSpec:
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: longhorn
volumeMode: Filesystem
alertmanager:
alertmanagerSpec:
resources:
requests:
cpu: 100m
memory: 100Mi
limits:
cpu: 1000m
memory: 500Mi
nodeExporter:
resources: {}
kube-state-metrics:
resources: {}
29. rancher-monitoring-crd : crd만 배포
Rancher 모니터링 CRD
30. spark-operator
Apache Spark Operator - Kubernetes에서 Spark 애플리케이션 관리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Controller | 100m/300Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| Webhook | 50m/128Mi → 100m/256Mi | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Spark Event Logs | 5Gi | 20Gi | 100Gi |
| Spark History Server | 10Gi | 50Gi | 200Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (< 10개 동시 Spark 작업)
- Medium: 스테이징/중간 규모 (10-50개 동시 Spark 작업)
- Large: 프로덕션/대규모 환경 (50+ 개 동시 Spark 작업)
custom-values.yaml 설정
controller:
resources: {}
# limits:
# cpu: 200m
# memory: 512Mi
# requests:
# cpu: 100m
# memory: 300Mi
webhook:
resources: {}
# limits:
# cpu: 100m
# memory: 256Mi
# requests:
# cpu: 50m
# memory: 128Mi
31. starrocks
실시간 분석 데이터베이스
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Frontend (FE) | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Compute Node (CN) | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi | 8000m/16Gi → 16000m/32Gi |
| FE Proxy | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| FE Metadata | 10Gi | 50Gi | 200Gi |
| FE Logs | 5Gi | 20Gi | 100Gi |
| CN Data | 100Gi | 1Ti | 10Ti |
| CN Logs | 20Gi | 100Gi | 500Gi |
| CN Spill | 10Gi | 50Gi | 200Gi |
권장 사용 시나리오:
- Small: 소규모 분석 워크로드 (< 1TB 데이터)
- Medium: 중간 규모 실시간 분석 (1-10TB 데이터)
- Large: 대규모 데이터 웨어하우스 (10TB+ 데이터)
아키텍처별 배포:
- Shared-Nothing: FE + BE (전통적 아키텍처)
- Shared-Data: FE + CN + 외부 스토리지 (클라우드 네이티브)
custom-values.yaml 설정
# Shared-Data 아키텍처 (권장)
starrocksCluster:
enabledBe: false
enabledCn: true
starrocksFESpec:
replicas: 3
resources:
requests:
cpu: 1000m
memory: 2Gi
limits:
cpu: 2000m
memory: 4Gi
storageSpec:
name: fe
storageClassName: "longhorn"
storageSize: 10Gi
logStorageSize: 5Gi
starrocksCnSpec:
replicas: 3
resources:
requests:
cpu: 2000m
memory: 4Gi
limits:
cpu: 4000m
memory: 8Gi
storageSpec:
name: cn
storageClassName: "longhorn"
storageSize: 100Gi # default: 1Ti
logStorageSize: 20Gi # default: 20Gi
spillStorageSize: 10Gi # default: 0Gi
autoScalingPolicy:
minReplicas: 1
maxReplicas: 10
starrocksFeProxySpec:
enabled: true
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 2Gi
resolver: "rke2-coredns-rke2-coredns.kube-system.svc.cluster.local"
32. starrocks-operator
StarRocks Operator
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Operator | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
권장 사용 시나리오:
- Small: 소규모 StarRocks 클러스터 관리
- Medium: 중간 규모 클러스터 운영
- Large: 대규모 StarRocks 환경
custom-values.yaml 설정
starrocksOperator:
resources:
limits:
cpu: 500m
memory: 800Mi
requests:
cpu: 500m
memory: 400Mi
33. strimzi-kafka-operator
Kafka Operator
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Cluster Operator | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
권장 사용 시나리오:
- Small: 소규모 Kafka 클러스터
- Medium: 중간 규모 스트리밍
- Large: 대규모 이벤트 스트리밍
custom-values.yaml 설정
resources:
limits:
memory: 384Mi
cpu: 1000m
requests:
memory: 384Mi
34. superset
BI 대시보드 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Superset Node | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Superset Worker | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Celery Beat | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| Celery Flower | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Redis | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| PostgreSQL Data | 8Gi | 50Gi | 200Gi |
| Redis Data | 8Gi | 20Gi | 100Gi |
권장 사용 시나리오:
- Small: 소규모 대시보드 (< 50 사용자, < 100 차트)
- Medium: 중간 규모 BI (50-200 사용자, 100-500 차트)
- Large: 엔터프라이즈 BI (200+ 사용자, 500+ 차트)
컴포넌트별 역할:
- Superset Node: 웹 서버, 사용자 인터페이스 제공
- Superset Worker: 비동기 쿼리 처리, 대시보드 렌더링
- Celery Beat: 스케줄된 작업 관리 (리포트, 알림)
- Celery Flower: Celery 작업 모니터링 UI
custom-values.yaml 설정
# 전역 리소스 설정 (모든 컴포넌트 기본값)
resources: {}
# requests:
# cpu: 100m
# memory: 128Mi
# limits:
# cpu: 200m
# memory: 256Mi
# Superset 웹 서버 설정
supersetNode:
replicas:
enabled: true
replicaCount: 1
resources: {}
# requests:
# cpu: 500m
# memory: 1Gi
# limits:
# cpu: 1000m
# memory: 2Gi
# Superset Celery Worker 설정
supersetWorker:
resources: {}
# requests:
# cpu: 500m
# memory: 1Gi
# limits:
# cpu: 1000m
# memory: 2Gi
# Celery Beat 설정 (스케줄된 작업용)
supersetCeleryBeat:
enabled: false # 필요시 true로 변경
resources: {}
# requests:
# cpu: 100m
# memory: 256Mi
# limits:
# cpu: 200m
# memory: 512Mi
# Celery Flower 설정 (작업 모니터링 UI)
supersetCeleryFlower:
enabled: false # 필요시 true로 변경
replicaCount: 1
resources: {}
# requests:
# cpu: 100m
# memory: 256Mi
# limits:
# cpu: 200m
# memory: 512Mi
# PostgreSQL 설정
postgresql:
primary:
persistence:
enabled: true
storageClass: "longhorn"
size: 8Gi
resources: {}
# requests:
# cpu: 250m
# memory: 512Mi
# limits:
# cpu: 500m
# memory: 1Gi
# Redis 설정
redis:
master:
persistence:
enabled: true
storageClass: "longhorn"
size: 8Gi
resources: {}
# requests:
# cpu: 200m
# memory: 256Mi
# limits:
# cpu: 500m
# memory: 512Mi
35. unitycatalog : 사용 여부 검토 필요
데이터 카탈로그
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Catalog Server | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Postgresql | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Catalog Metadata | 10Gi | 100Gi | 1Ti |
| Database Data | 20Gi | 200Gi | 2Ti |
권장 사용 시나리오:
- Small: 소규모 데이터 자산 관리
- Medium: 중간 규모 데이터 거버넌스
- Large: 엔터프라이즈 데이터 카탈로그
custom-values.yaml 설정
server:
config:
persistence:
enabled: true
accessModes: [ "ReadWriteOnce" ]
size: 100Mi
storageClassName: "longhorn"
statefulset:
resources: {}
postgresql:
primary:
persistence:
storageClassName: "longhorn"
size: 5Gi
resources: {}
36. vllm
고성능 LLM 추론
| 컴포넌트 | Small (7B) | Medium (13B-30B) | Large (70B+) |
|---|---|---|---|
| Inference Server | 4000m/16Gi + 1GPU → 8000m/32Gi + 1GPU | 8000m/32Gi + 2GPU → 16000m/64Gi + 2GPU | 16000m/64Gi + 4GPU → 32000m/128Gi + 4GPU |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Model Storage | 50Gi | 200Gi | 1Ti |
| Cache Volume | 20Gi | 100Gi | 500Gi |
권장 사용 시나리오:
- Small: 7B 모델 (Llama2-7B, Mistral-7B)
- Medium: 13B-30B 모델 (Llama2-13B, CodeLlama-34B)
- Large: 70B+ 모델 (Llama2-70B, GPT-3.5 급)
custom-values.yaml 설정
servingEngineSpec:
modelSpec:
- name: "qwen"
repository: "vllm/vllm-openai"
tag: "latest"
modelURL: "Qwen/Qwen2.5-Coder-14B-Instruct"
replicaCount: 1
requestCPU: 16
requestMemory: "32Gi"
requestGPU: 1
pvcStorage: "10Gi"
pvcAccessMode:
- ReadWriteMany # 공유 볼륨 사용 시 필우
storageClass: "nfs"
routerSpec:
resources:
requests:
cpu: "2"
memory: "8G"
limits:
cpu: "4"
memory: "16G"
Operator 기반 리소스 정의
Kafka Cluster (Strimzi Operator 사용)
Apache Kafka 클러스터 - 분산 스트리밍 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Controller | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| Broker | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi | 4000m/8Gi → 8000m/16Gi |
| Topic Operator | 100m/128Mi → 200m/256Mi | 250m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
| User Operator | 100m/128Mi → 200m/256Mi | 250m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Controller Storage | 5Gi | 10Gi | 20Gi |
| Broker Storage | 20Gi | 50Gi | 100Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (< 10 토픽)
- Medium: 중간 처리량 (10-100 토픽)
- Large: 고처리량 프로덕션 (100+ 토픽)
Kafka CR 설정 예시
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaNodePool
metadata:
name: controller
spec:
...
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1
memory: 2Gi
storage:
type: jbod
volumes:
- id: 0
type: persistent-claim
size: 5Gi
kraftMetadata: shared
class: longhorn
---
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaNodePool
metadata:
name: broker
spec:
...
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1
memory: 2Gi
storage:
type: jbod
volumes:
- id: 0
type: persistent-claim
size: 5Gi
kraftMetadata: shared
class: longhorn
---
apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
name: my-cluster
spec:
...
entityOperator:
topicOperator:
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 256Mi
cpu: 200m
userOperator:
resources:
requests:
memory: 128Mi
cpu: 100m
limits:
memory: 256Mi
cpu: 200m
Kafka Connect (Strimzi Operator 사용)
Kafka 커넥터 - 데이터 파이프라인
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Kafka Connect | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
권장 사용 시나리오:
- Small: 소규모 데이터 파이프라인 (< 5 커넥터)
- Medium: 중간 규모 데이터 통합 (5-20 커넥터)
- Large: 대규모 데이터 스트리밍 (20+ 커넥터)
KafkaConnect CR 설정 예시
apiVersion: kafka.strimzi.io/v1beta2
kind: KafkaConnect
metadata:
name: my-connect
...
resources:
requests:
cpu: 500m
memory: 1Gi
limits:
cpu: 1000m
memory: 2Gi
리소스 요약 테이블
카테고리별 리소스 분류
경량 서비스 (Small 기본)
| 차트 | 주요 용도 | 기본 권장 티어 | 볼륨 요구사항 |
|---|---|---|---|
| cert-manager | 인증서 관리 | Small | 1-5Gi |
| dnsup | DNS 업데이트 | Small | 100Mi-1Gi |
| kafka-ui | Kafka 모니터링 | Small | 100Mi-1Gi |
| open-webui | LLM 웹 UI | Small-Medium | 3-75Gi |
| kyverno | 정책 관리 | Small-Medium | 1-20Gi |
중간 규모 서비스 (Medium 기본)
| 차트 | 주요 용도 | 기본 권장 티어 | 볼륨 요구사항 |
|---|---|---|---|
| airflow | 워크플로우 오케스트레이션 | Medium | 75-325Gi |
| argo-cd | GitOps CD | Medium | 15-70Gi |
| flowise | AI 워크플로우 | Medium | 30-150Gi |
| gitea | Git 서버 | Medium | 130-650Gi |
| keycloak | 인증 서버 | Medium | 22-105Gi |
| kong | API 게이트웨이 | Medium | 22-105Gi |
| langflow-ide | AI IDE | Medium | 80-350Gi |
| langfuse | LLM 추적 | Medium | 100-700Gi |
| litellm | LLM 프록시 | Medium | 30-150Gi |
| mlflow | ML 실험 추적 | Medium | 320-1.6Ti |
| rancher | K8s 관리 | Medium | 70-300Gi |
| superset | BI 대시보드 | Medium | 82-350Gi |
대규모 서비스 (Large 기본)
| 차트 | 주요 용도 | 기본 권장 티어 | 볼륨 요구사항 |
|---|---|---|---|
| harbor | 컨테이너 레지스트리 | Large | 2.3-2.3Ti |
| kafka | 스트리밍 플랫폼 | Large | 1.3Ti |
| postgresql-ha | 고가용성 DB | Medium-Large | 1.2Ti |
| starrocks | 분석 데이터베이스 | Large | 11Ti |
| rancher-monitoring | 모니터링 스택 | Large | 1.15Ti |
| qdrant | 벡터 데이터베이스 | Medium-Large | 1.5Ti |
| ragflow | RAG 시스템 | Medium-Large | 1.72Ti |
| unitycatalog | 데이터 카탈로그 | Large | 3Ti |
AI/ML 특화 서비스 (GPU 필요)
| 차트 | 주요 용도 | GPU 요구사항 | 볼륨 요구사항 |
|---|---|---|---|
| kserve | ML 모델 서빙 | 1-4 GPU | 15-300Gi |
| kubeflow | ML 플랫폼 | 선택적 GPU | 1.2Ti |
| nemo | NVIDIA 모델 | 1-4 GPU | 1.5Ti |
| nim | NVIDIA 추론 | 1-4 GPU | 720Gi |
| ollama | 로컬 LLM | 선택적 GPU | 625Gi |
| vllm | 고성능 LLM | 1-4 GPU | 1.5Ti |
총 리소스 요구사항 추정
전체 카탈로그 배포 시 예상 리소스 (Medium 티어 기준)
CPU 요구사항:
- 총 Requests: ~150,000m (150 vCPU)
- 총 Limits: ~300,000m (300 vCPU)
메모리 요구사항:
- 총 Requests: ~300Gi
- 총 Limits: ~600Gi
GPU 요구사항 (AI/ML 차트 포함):
- 최소: 10-15 GPU
- 권장: 20-30 GPU
스토리지 요구사항:
- 데이터베이스: ~2Ti
- 애플리케이션 데이터: ~5Ti
- 로그/메트릭: ~1Ti
- 모델/아티팩트: ~10Ti
- 총 스토리지: ~18Ti
클러스터 사이징 권장사항
소규모 환경 (개발/테스트)
- 노드 구성: 3-5 노드
- 노드 스펙: 8 vCPU, 32Gi RAM, 500Gi SSD
- 총 용량: 40 vCPU, 160Gi RAM, 2.5Ti Storage
- GPU: 선택적 (1-2개)
중간 규모 환경 (스테이징/소규모 프로덕션)
- 노드 구성: 5-10 노드
- 노드 스펙: 16 vCPU, 64Gi RAM, 1Ti SSD
- 총 용량: 160 vCPU, 640Gi RAM, 10Ti Storage
- GPU: 5-10개
대규모 환경 (엔터프라이즈 프로덕션)
- 노드 구성: 10-20 노드
- 노드 스펙: 32 vCPU, 128Gi RAM, 2Ti SSD
- 총 용량: 640 vCPU, 2.5Ti RAM, 40Ti Storage
- GPU: 20-40개
스토리지 클래스 권장사항
성능별 스토리지 분류
| 스토리지 타입 | 사용 용도 | IOPS | 처리량 | 권장 차트 |
|---|---|---|---|---|
| High Performance SSD | 데이터베이스, 고성능 워크로드 | 10,000+ | 500MB/s+ | PostgreSQL, StarRocks, Kafka |
| Standard SSD | 일반 애플리케이션 데이터 | 3,000-10,000 | 100-500MB/s | Harbor, MLflow, Gitea |
| Standard HDD | 로그, 백업, 아카이브 | 500-3,000 | 50-100MB/s | 로그 볼륨, 백업 데이터 |
볼륨 확장 정책
- 자동 확장: 사용률 80% 도달 시 20% 확장
- 최대 확장: 초기 크기의 10배까지
- 모니터링: 볼륨 사용률 및 성능 지표 추적
볼륨 백업 및 복구 전략
백업 주기별 분류
| 데이터 중요도 | 백업 주기 | 보존 기간 | 해당 차트 |
|---|---|---|---|
| Critical | 매시간 | 30일 | PostgreSQL-HA, Harbor, StarRocks |
| Important | 매일 | 14일 | Gitea, Keycloak, MLflow |
| Standard | 주간 | 7일 | Kafka, Superset, Rancher |
재해 복구 계획
- RTO (복구 시간 목표): Critical 1시간, Important 4시간, Standard 24시간
- RPO (복구 지점 목표): Critical 15분, Important 1시간, Standard 24시간
- 지역 간 복제: Critical 데이터는 다른 가용 영역에 실시간 복제
이 문서를 통해 DIP 카탈로그의 모든 차트에 대한 체계적인 리소스 및 볼륨 관리가 가능하며, 환경과 요구사항에 따른 적절한 할당을 통해 최적의 성능과 비용 효율성을 달성할 수 있습니다.
37. lakekeeper
Rust 네이티브 Apache Iceberg REST Catalog
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Lakekeeper Catalog | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
| PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| OpenFGA | 200m/256Mi → 500m/512Mi | 500m/512Mi → 1000m/1Gi | 1000m/1Gi → 2000m/2Gi |
| OpenFGA PostgreSQL | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Lakekeeper PostgreSQL | 5Gi | 20Gi | 100Gi |
| OpenFGA PostgreSQL | 8Gi | 30Gi | 150Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (< 10 테이블, < 5 사용자)
- Medium: 소규모 프로덕션 (10-100 테이블, 5-50 사용자)
- Large: 대규모 데이터 레이크하우스 (100+ 테이블, 50+ 사용자)
custom-values.yaml 설정
catalog:
resources: {}
# limits:
# cpu: 1000m
# memory: 2Gi
# requests:
# cpu: 500m
# memory: 1Gi
# lakekeeper DB
postgresql:
storage:
className: ""
requestedSize: 5Gi
resources: {}
# limits:
# cpu: 500m
# memory: 1Gi
# requests:
# cpu: 250m
# memory: 512Mi
openfga:
resources: {}
# limits:
# cpu: 500m
# memory: 512Mi
# requests:
# cpu: 200m
# memory: 256Mi
postgresql:
primary:
resources: {}
# limits:
# cpu: 500m
# memory: 1Gi
# requests:
# cpu: 250m
# memory: 512Mi
persistence:
storageClass: ""
size: 8Gi
38. flink-kubernetes-operator
Apache Flink Kubernetes Operator - Kubernetes에서 Flink 애플리케이션 관리
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Operator Pod | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| Webhook Container | 50m/128Mi → 100m/256Mi | 100m/256Mi → 200m/512Mi | 200m/512Mi → 500m/1Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (< 5개 FlinkDeployment)
- Medium: 스테이징/소규모 프로덕션 (5-20개 FlinkDeployment)
- Large: 대규모 프로덕션 환경 (20+ FlinkDeployment)
custom-values.yaml 설정
# Operator Pod 리소스 설정
operatorPod:
resources:
limits:
cpu: "200m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "256Mi"
# Webhook Container 리소스 설정
webhook:
resources:
limits:
cpu: "100m"
memory: "256Mi"
requests:
cpu: "50m"
memory: "128Mi"
39. openmetadata
OpenMetadata - 메타데이터 관리 플랫폼
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| OpenMetadata Server | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi | 2000m/4Gi → 4000m/8Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (소규모 메타데이터, 소수 사용자)
- Medium: 스테이징/소규모 프로덕션 (중간 규모 메타데이터, 수십 명 사용자)
- Large: 대규모 프로덕션 (대용량 메타데이터, 수백 명 사용자)
custom-values.yaml 설정
resources:
limits:
cpu: "1000m"
memory: "2Gi"
requests:
cpu: "500m"
memory: "1Gi"
40. openmetadata-dependencies
OpenMetadata Dependencies - Airflow, MySQL, OpenSearch 포함 의존성 패키지
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Airflow Scheduler | 250m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi | 1000m/2Gi → 2000m/4Gi |
| Airflow Workers | 250m/512Mi → 1000m/1Gi | 500m/1Gi → 2000m/2Gi | 1000m/2Gi → 4000m/4Gi |
| Airflow Webserver | 100m/256Mi → 500m/512Mi | 250m/512Mi → 1000m/1Gi | 500m/1Gi → 2000m/2Gi |
| Airflow API Server | 100m/256Mi → 500m/512Mi | 250m/512Mi → 1000m/1Gi | 500m/1Gi → 2000m/2Gi |
| Airflow Triggerer | 100m/256Mi → 300m/512Mi | 200m/512Mi → 500m/1Gi | 500m/1Gi → 1000m/2Gi |
| MySQL | 500m/512Mi → 750m/768Mi | 500m/1Gi → 750m/1.5Gi | 1000m/2Gi → 1500m/3Gi |
| OpenSearch | 100m/1Gi → 1000m/2Gi | 500m/2Gi → 2000m/4Gi | 1000m/4Gi → 4000m/8Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| MySQL Data | 20Gi | 50Gi | 200Gi |
| OpenSearch Data | 30Gi | 100Gi | 500Gi |
| Airflow DAGs | 1Gi | 5Gi | 20Gi |
| Airflow Logs | 1Gi | 10Gi | 50Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (소규모 데이터 파이프라인, 소수 커넥터)
- Medium: 스테이징/소규모 프로덕션 (중간 규모 파이프라인, 수십 개 커넥터)
- Large: 대규모 프로덕션 (대용량 파이프라인, 수백 개 커넥터)
custom-values.yaml 설정
airflow:
scheduler:
resources:
limits:
cpu: "500m"
memory: "1Gi"
requests:
cpu: "250m"
memory: "512Mi"
workers:
resources:
limits:
cpu: "1000m"
memory: "1Gi"
requests:
cpu: "250m"
memory: "512Mi"
webserver:
resources:
limits:
cpu: "500m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "256Mi"
apiServer:
resources:
limits:
cpu: "500m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "256Mi"
triggerer:
resources:
limits:
cpu: "300m"
memory: "512Mi"
requests:
cpu: "100m"
memory: "256Mi"
dags:
persistence:
size: 1Gi
logs:
persistence:
size: 1Gi
mysql:
primary:
resources:
limits:
cpu: "750m"
memory: "768Mi"
requests:
cpu: "500m"
memory: "512Mi"
persistence:
size: 50Gi
opensearch:
opensearchJavaOpts: "-Xmx1g -Xms1g"
resources:
limits:
cpu: "1000m"
memory: "2048M"
requests:
cpu: "100m"
memory: "1024M"
persistence:
size: 30Gi
41. cloudbeaver
웹 기반 데이터베이스 관리 도구 (DBeaver)
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| CloudBeaver | 500m/512Mi → 750m/768Mi | 500m/1Gi → 1000m/1.5Gi | 1000m/2Gi → 1500m/3Gi |
볼륨 사이즈 권장사항:
| 컴포넌트 | Small | Medium | Large |
|---|---|---|---|
| Workspace | 5Gi | 20Gi | 50Gi |
권장 사용 시나리오:
- Small: 개발/테스트 환경 (소수 사용자, 경량 쿼리)
- Medium: 소규모 프로덕션 (팀 단위, 다수 DB 연결)
- Large: 대규모 프로덕션 (다수 동시 접속, 대용량 쿼리)
custom-values.yaml 설정
# small (기본)
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: 750m
memory: 768Mi
persistence:
enabled: true
size: 5Gi
# medium
# resources:
# requests:
# cpu: 500m
# memory: 1024Mi
# limits:
# cpu: 1000m
# memory: 1536Mi
# persistence:
# enabled: true
# size: 20Gi
# large
# resources:
# requests:
# cpu: 1000m
# memory: 2048Mi
# limits:
# cpu: 1500m
# memory: 3072Mi
# persistence:
# enabled: true
# size: 50Gi