.png)
온프레미스 쿠버네티스 프로덕션 환경 10개월 운영기
두줄요약
RKE2 기반 온프레미스 Kubernetes 클러스터의 고가용성 설계와 10개월 운영 경험을 공유했습니다. 노드 역할 분배, NAS·Cloud SQL 스토리지 분리, Route53 장애 대응의 한계도 정리했습니다.
문제 상황
- Docker Compose 기반 단일 서버에서 Airflow·사내 서비스의 좀비 프로세스와 복구 실패
- 로컬 SSD 장애 시 메타데이터 유실 위험과 GPU ML API의 다중 노드 배포·로드 밸런싱 요구
- 장기 클라우드 GPU 운영 비용과 워크로드별 상이한 허용 다운타임
구조와 흐름
- CPU 3대·GPU 2대·Synology NAS 1대로 구성한 RKE2 기반 온프레미스 클러스터
- 서울 오피스 CPU 노드 2대와 IDC GPU 노드 1대에 3노드 컨트롤 플레인 배치, 전체 노드의 워커 역할 병행
- NAS NFS PV와 GCP Cloud SQL을 허용 다운타임 기준으로 분리하고 Route53 가중치 기반 DNS 라우팅 적용
선택 이유
- 간편한 클러스터 구성, GPU 활용 레퍼런스, etcd 스냅샷 복구 지원을 기준으로 RKE2 선택
- NAS SSD 2대의 SHR RAID 구성으로 단일 SSD 장애 대응
- Helm 기반 배포와 외부 DB 활용으로 향후 매니지드 Kubernetes 이전 용이성 고려
주의할 점
- Route53 가중치 라우팅은 요청 실패 시 재시도하지 못해 로드 밸런서 대체에 한계
- 단일 NAS 장비와 서울 오피스 장애 시 NAS 기반 워크로드의 가용성 제약
- 프로덕션 전 장애 시나리오별 복구 매뉴얼과 의도적 장애 훈련 필요


