피드로 돌아가기
Dev.toDevOps
원문 읽기
Zero Downtime 실현을 위한 Enterprise Kubernetes 무중단 업그레이드 전략
How to upgrade an Enterprise Grade Kubernetes Cluster with Zero Downtime.
AI 요약
Context
Kubernetes의 빠른 릴리스 주기로 인한 3개월 단위의 주기적 업그레이드 필요성 대두. 업그레이드 후 복구가 불가능한 Irreversible 특성에 따른 운영 리스크 관리 필요.
Technical Solution
- Cordon 설정을 통한 신규 Pod 스케줄링 차단으로 기존 서비스 가용성 확보
- 하위 환경(Staging, Pre-Production)에서의 2주간 사전 모니터링을 통한 안정성 검증
- Control Plane, Kubelet, Cluster Auto-Scaler 간의 버전 동기화로 컴포넌트 간 호환성 유지
- Managed Node Group의 Rollout Deployment 방식을 활용한 순차적 노드 업데이트 수행
- Custom Node 대상 Cordon 및 개별 업그레이드 프로세스를 통한 단계적 마이그레이션 구현
- 클러스터 서브넷 내 최소 5개의 여유 IP 확보로 노드 교체 시 네트워크 단절 방지
실천 포인트
1. 업그레이드 전 Release Note 분석을 통한 Production 영향도 평가 수행
2. 하위 환경에서 최소 2주 이상의 모니터링 기간 확보
3. Control Plane과 Node 간 버전 일치 여부 확인
4. Cluster Auto-Scaler의 호환 버전 체크
5. 충분한 가용 IP 주소 확보 여부 검토