
수백만 개의 작업을 중단 없이 이전하며 달성한 리소스 최적화와 운영 효율화의 비결
이 아티클은 넷플릭스가 자체 제작한 배치 관리 솔루션(CMB)을 쿠버네티스 표준 오픈소스인 Kueue로 전환한 여정을 다룹니다. 기존 시스템의 복잡성을 해결하고 선점형 스케줄링 같은 고도화된 기능을 확보하기 위해 선택한 전략과 기술적 도전 과제들을 상세히 공유합니다.
쿠버네티스 기반의 대규모 배치 워크로드나 머신러닝 학습 인프라를 운영하면서 리소스 격리와 공유 사이의 균형을 고민하는 인프라 엔지니어에게 추천합니다.
넷플릭스의 기존 배치 솔루션인 CMB는 2018년에 구축된 커스텀 시스템으로, 쿠버네티스 생태계가 발전함에 따라 최신 기능인 선점형 스케줄링(Preemption)과 공정 분배(Fair Sharing)를 자체적으로 구현하고 유지보수하는 데 한계가 있었습니다.
쿠버네티스 네이티브 잡 큐잉 시스템인 Kueue를 도입하여 CMB의 큐잉 및 스케줄링 로직을 대체했습니다. 기존 테넌트 계층 구조를 Kueue의 Cohort와 ClusterQueue로 매핑하고, API 하위 호환성을 유지하여 사용자 개입 없는 투명한 마이그레이션을 수행했습니다.
수백만 개의 배치 작업을 성공적으로 마이그레이션했으며, 선점형 공정 분배를 통해 예약된 리소스의 유휴 공간 활용률을 크게 높였습니다. 또한 기본 컨트롤러의 QPS 및 동시성 설정을 넷플릭스 규모에 맞게 튜닝하여 대규모 처리량을 확보했습니다.
Trade-off
넷플릭스의 대규모 워크로드를 처리하기 위해 Kueue의 기본 QPS, 버스트(Burst) 및 동시성 설정을 표준값보다 훨씬 높게 조정해야 했으며, 이는 시스템 안정성을 위해 세밀한 부하 테스트가 선행되어야 함을 의미합니다.
쿠버네티스 네이티브 잡 큐잉 시스템으로, 파드 스케줄링 자체를 대체하지 않고 작업의 대기열과 할당량을 관리합니다.
낮은 우선순위의 작업을 중단시키고 높은 우선순위의 작업에 리소스를 할당하며, 예약된 리소스를 타 테넌트가 빌려 쓸 수 있게 하는 메커니즘입니다.
여러 ClusterQueue가 리소스를 공유할 수 있도록 묶어주는 Kueue의 논리적 그룹 단위입니다.




