쿠버네티스 내전: VPA가 스케줄러와 충돌할 때 (그리고 당신의 Pod가 치르는 대가)
(dev.to)
쿠버네티스의 VPA(Vertical Pod Autoscaler)와 스케줄러 간의 설계 철학 차이로 인해 발생할 수 있는 심각한 서비스 장애 위험을 경고합니다. VPA의 과도한 리소스 권장 사항이 노드 용량을 초과할 경우 Pod가 영구적으로 스케줄링되지 못하거나, HPA와 결합 시 제어 불능의 피드백 루프가 발생할 수 있음을 지적하며 'maxAllowed' 설정의 필수성을 강조합니다.
이 글의 핵심 포인트
- 1VPA 권장 CPU/메모리가 노드 크기를 초과할 경우 Pod가 영구적으로 'Pending' 상태에 빠질 수 있음
- 2VPA의 'Updater' 컴포넌트는 리소스 불일치 해소를 위해 Pod를 강제로 종료(Evict)하여 서비스 중단을 유발함
- 3