Kubernetes 클러스터 개편


## ✅ 기존 환경에서의 불편함 - 리소스 설정 (CPU, memory) 이 과하거나 부족해서 오토스케일 비효율 - CLI로 yaml 을 직접 배포하고, configmap 및 yaml 파일 수정의 불편함 ## ➡️ 목표 제시: "1주일간 부하 테스트를 통해 평균 사용량에 근거한 리소스 세팅을 찾고, Helm으로 배포를 표준화하는 것이 목표였습니다." ## ngrinder + kubecost: 부하 기반 리소스 분석 - **ngrinder**를 통해 실제 트래픽 시뮬레이션 (1주일간) - **kubecost**로 각 서비스 pod의 CPU/Memory 사용률, 비용 추적 ### 주요 인사이트: - 특정 API 서버는 2vCPU 2Gi → 0.5vCPU 1Gi로 줄여도 무리 없음 - 반대로, signoz 서비스는 리소스를 더 필요로 함 ## Helm 도입: 복잡했던 yaml 관리 탈피 - 기존에는 `kubectl apply -f` 로 여러 yaml 파일 관리 - 변수, configmap 바꿀 때마다 수동 수정 → 불편함 ### ▶️ Helm 전환 작업 - Helm Chart 구성 - values.yaml에 환경별 리소스, 변수 처리 - `helm upgrade`로 손쉽게 롤링 배포 ### ✅ 이점: - 튜닝한 리소스 설정을 버전 관리로 관리 가능 - 간편한 배포 구현 ## 변화 요약: 개편 전 vs 개편 후 | 항목 | 개편 전 | 개편 후 | |------|---------|----------| | 리소스 설정ㅤ | 대충 감으로 설정 | 측정 기반으로 최적화 | | 배포 방식 | kubectl CLI, 수동 config 변경 | Helm Chart, values.yaml 사용 | | 비용 | 불필요한 리소스 낭비 존재 | kubecost로 리소스 확보 | - ##### kubecost + ngrinder 로 테스트하는 화면 - ##### helm 차트 구조
되돌아가기 수정