Files
site11/k8s/kind-dev-cluster.yaml
jungwoo choi e008f17457 feat: Setup KIND cluster for local Kubernetes development
- Created 5-node KIND cluster (1 control-plane + 4 workers)
- Configured NodePort mappings for console access (30080, 30081)
- Created namespace separation (site11-console, site11-pipeline)
- Deployed MongoDB and Redis in KIND cluster
- Deployed Console backend and frontend with NodePort services
- All 4 pods running successfully and verified with browser test

Infrastructure:
- k8s/kind-dev-cluster.yaml: 5-node cluster configuration
- k8s/kind/console-mongodb-redis.yaml: Database deployments
- k8s/kind/console-backend.yaml: Backend with NodePort
- k8s/kind/console-frontend.yaml: Frontend with NodePort

Management Tools:
- scripts/kind-setup.sh: Comprehensive cluster management script
- docker-compose.kubernetes.yml: Monitoring helper services

Documentation:
- KUBERNETES.md: Complete usage guide for developers
- docs/KIND_SETUP.md: Detailed KIND setup documentation
- docs/PROGRESS.md: Updated with KIND cluster completion

Console Services Access:
- Frontend: http://localhost:3000 (NodePort 30080)
- Backend: http://localhost:8000 (NodePort 30081)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-28 18:28:36 +09:00

72 lines
1.7 KiB
YAML

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
name: site11-dev
# 노드 구성 (1 Control Plane + 4 Workers = 5 Nodes)
nodes:
# Control Plane (마스터 노드)
- role: control-plane
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "node-type=control-plane"
extraPortMappings:
# Console Frontend
- containerPort: 30080
hostPort: 3000
protocol: TCP
# Console Backend
- containerPort: 30081
hostPort: 8000
protocol: TCP
# Worker Node 1 (Console 서비스용)
- role: worker
labels:
workload: console
node-type: worker
kubeadmConfigPatches:
- |
kind: JoinConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "workload=console"
# Worker Node 2 (Pipeline 서비스용 - 수집)
- role: worker
labels:
workload: pipeline-collector
node-type: worker
kubeadmConfigPatches:
- |
kind: JoinConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "workload=pipeline-collector"
# Worker Node 3 (Pipeline 서비스용 - 처리)
- role: worker
labels:
workload: pipeline-processor
node-type: worker
kubeadmConfigPatches:
- |
kind: JoinConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "workload=pipeline-processor"
# Worker Node 4 (Pipeline 서비스용 - 생성)
- role: worker
labels:
workload: pipeline-generator
node-type: worker
kubeadmConfigPatches:
- |
kind: JoinConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "workload=pipeline-generator"