Windows·macOS 개발환경에서 Docker Desktop + K8s 세팅 후기
Rustcost 프로젝트는 그동안 리눅스 계열에서 kubeadm 기반으로 Kubernetes를 구성해 개발을 진행해왔습니다.
이 경우 metrics-server가 기본으로 설치되며 큰 문제 없이 동작해 왔습니다.
최근 프론트엔드 개발자 @박동휘 bro 님이 프로젝트에 합류하시면서,
Windows·macOS 환경에서 Docker Desktop 기반의 Kubernetes 개발환경을 구성하게 되었고,
Rustcost를 Windows에서 실행해본 경험을 공유합니다.
- Docker Desktop 설치 (Windows 기준)
가장 먼저 Docker Desktop 설치가 필요합니다.
공식 문서 → https://docs.docker.com/get-started/
- Helm 설치
winget install Helm.Helm
helm versio
3.Rustcost Helm 차트 배포
현재 개발 중인 버전은 dev.13 브랜치 기준입니다.
git clone https://github.com/rustcost/rustcost-helmchart.git
cd rustcost-helmchart
helm upgrade --install rustcost . `
-n rustcost --create-namespace
- PVC·PV 확인 및 로컬 스토리지 접근
Docker Desktop의 Kubernetes는 로컬 디렉토리에 PV를 저장합니다.
kubectl get pvc -n rustcost
kubectl get pv <PV-NAME> -o yaml
docker run -it --privileged --pid=host alpine:latest nsenter -t 1 -m -u -n -i sh
cd /var/lib/k8s-pvs/rustcost-pvc/<PV-NAME>
PVC가 정상적으로 생성되고 마운트된 경로가 보이면 OK입니다.
- Metrics Server 설치 및 패치
Docker Desktop의 K8s 환경은 metrics-server가 기본 제공되지 않아 직접 설치해야 합니다.
1) metrics-server 설치
kubectl apply -f \
https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
2) 인자(Args) 패치 — Docker Desktop 환경 호환
kubectl patch deployment metrics-server -n kube-system --type=json `
-p "[{
\"op\": \"replace\",
\"path\": \"/spec/template/spec/containers/0/args\",
\"value\": [
\"--cert-dir=/tmp\",
\"--secure-port=4443\",
\"--kubelet-insecure-tls\",
\"--kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname\"
]
}]"
3) 롤아웃 (재시작)
kubectl rollout restart deployment metrics-server -n kube-system
4) APIService 확인
kubectl get apiservices | Select-String metrics
5) (옵션) Metrics 정상 출력 확인
kubectl top pods
kubectl top nodes
6. PVC 다시 확인
Rustcost가 사용하는 다른 PVC를 확인할 때도 동일하게 확인 가능:
kubectl get pvc -n rustcost
kubectl get pv <PV-NAME> -o yaml
docker run -it --privileged --pid=host alpine:latest nsenter -t 1 -m -u -n -i sh
cd /var/lib/k8s-pvs/rustcost-pvc/<PV-NAME>
마무리
Windows·macOS 환경에서 Docker Desktop 기반의 Kubernetes를 사용하면,
리눅스에서 kubeadm 환경과 달리 metrics-server 설치나 PV 경로 확인 등의 추가 작업이 필요합니다.
Rustcost 개발환경을 Windows에서 구축하고 테스트하는 과정에서 얻은 정보가
비슷한 환경을 구성하는 분들께 도움이 되길 바랍니다
