TEN
블로그 채용 문의하기
KO | EN
LinkedIn X YouTube Tistory
블로그 채용 문의하기
GPU 운영

쿠버네티스 GPU 스케줄링 완벽 정리

쿠버네티스로 GPU를 스케줄링할 때 왜 자원이 남는데 작업은 대기할까요? GPU 스케줄링의 개념과 기본 방식의 한계, 자원 파편화 문제, 그리고 효율적인 GPU 배치를 위해 필요한 조건을 정리했습니다.
Amanda's avatar
Amanda
Sep 03, 2026
쿠버네티스 GPU 스케줄링 완벽 정리
Contents
쿠버네티스 GPU 스케줄링이란?기본 스케줄러의 한계 3가지1. GPU를 '통째로'만 배정합니다2. 워크로드 특성을 고려하지 않습니다3. 우선순위·공정성 관리가 약합니다자원은 남는데 작업은 대기하는 이유: 자원 파편화효율적인 GPU 배치를 위해 필요한 조건결론: GPU 스케줄링의 경쟁력은 '수량'이 아니라 '배치'에 있습니다

GPU는 분명히 남아 있는데, 내 학습 작업은 계속 '대기(Pending)' 상태입니다. 쿠버네티스로 GPU를 운영해본 사람이라면 한 번쯤 겪는 상황입니다. 이 글에서는 쿠버네티스 GPU 스케줄링이 어떻게 동작하고, 왜 이런 문제가 생기며, 무엇을 개선해야 하는지 정리했습니다.

쿠버네티스 GPU 스케줄링이란?

쿠버네티스 스케줄링은 어떤 작업(Pod)을 어느 서버(Node)에 배치할지 결정하는 과정입니다. GPU 스케줄링은 여기에 'GPU'라는 조건이 더해진 것입니다.

즉, 학습·추론 작업이 들어오면 쿠버네티스가 "이 작업에 필요한 GPU가 있는 노드가 어디인가"를 찾아 배치합니다. 여러 사용자와 팀이 하나의 GPU 클러스터를 공유하는 환경에서, 이 배치를 얼마나 잘하느냐가 전체 활용률을 좌우합니다.

문제는 쿠버네티스의 기본 스케줄러가 원래 일반 컨테이너 워크로드를 위해 설계됐다는 점입니다. GPU처럼 비싸고 특수한 자원을 다루기에는 몇 가지 한계가 있습니다.

기본 스케줄러의 한계 3가지

쿠버네티스 기본 스케줄러의 한계 3가지
쿠버네티스 기본 스케줄러의 한계 3가지

1. GPU를 '통째로'만 배정합니다

간단한 추론 작업 하나에도 GPU 한 장이 통째로 잡혀버린 적 있으신가요?

쿠버네티스는 기본적으로 GPU를 1장 단위로만 할당합니다. GPU의 10%만 쓰는 작은 작업에도 GPU 한 장을 통째로 배정하기 때문에, 나머지 90%는 그대로 놀게 됩니다. 여러 작은 작업이 하나의 GPU를 나눠 쓰지 못하는 것입니다.

2. 워크로드 특성을 고려하지 않습니다

기본 스케줄러는 "GPU가 있는 빈 노드"를 찾을 뿐, 그 작업이 대규모 학습인지 짧은 추론인지 구분하지 않습니다. 그 결과 짧게 끝날 작업이 긴 학습 뒤에 막히거나, 자원 요구가 다른 작업들이 같은 노드에서 서로 간섭하는 상황이 생깁니다.

3. 우선순위·공정성 관리가 약합니다

특정 팀이 GPU를 독점해서, 다른 팀은 계속 순서를 기다리고 있지 않나요?

여러 팀이 공유하는 환경에서는 "누구의 작업을 먼저 처리할지" 정하는 정책이 필요합니다. 하지만 기본 스케줄러만으로는 팀별 할당량이나 우선순위를 세밀하게 통제하기 어렵습니다.

자원은 남는데 작업은 대기하는 이유: 자원 파편화

이 한계들이 겹치면 자원 파편화(Fragmentation)가 발생합니다.

자원 파편화는 GPU가 조각조각 남아 있지만, 정작 필요한 만큼 연속으로 확보되지 않아 쓰지 못하는 현상입니다. 예를 들어 여러 노드에 GPU가 0.5장씩 남아 있어도, 2장이 필요한 학습 작업은 배치될 곳을 찾지 못해 계속 대기합니다.

클러스터 전체로 보면 GPU가 충분한데도 "GPU가 부족하다"는 체감이 드는 이유가 바로 이것입니다. 문제는 GPU 수량이 아니라 배치 방식에 있습니다.

효율적인 GPU 배치를 위해 필요한 조건

이 문제들을 해결하려면 기본 스케줄러를 넘어서는 몇 가지 기능이 필요합니다.

문제

필요한 기능

GPU 통째 배정

GPU 분할(하나의 GPU를 여러 작업이 공유)

워크로드 미구분

워크로드 특성 기반 배치

우선순위 부재

팀·프로젝트별 할당량과 우선순위

자원 파편화

빈 자원을 찾아 최적 배치하는 지능형 스케줄링

낮은 가시성

실시간 자원 사용 현황 모니터링

핵심은 "GPU가 있는 빈 노드를 찾는" 수준을 넘어, 워크로드의 요구와 자원 상태를 함께 고려해 최적의 자리에 배치하는 지능형 스케줄링입니다.

AIPub 동적 할당 프로세스
AIPub 동적 할당 프로세스

결론: GPU 스케줄링의 경쟁력은 '수량'이 아니라 '배치'에 있습니다

GPU를 아무리 많이 확보해도, 배치 방식이 비효율적이면 활용률은 오르지 않습니다. 작업이 대기하는 이유가 정말 GPU 부족 때문인지, 아니면 스케줄링 문제인지부터 구분해야 합니다.

  • GPU를 필요한 만큼 나눠 배정할 수 있는가

  • 워크로드 특성에 맞게 자동으로 배치되는가

  • 여러 팀이 우선순위 충돌 없이 공유하는가

  • 유휴 자원을 최소화하는가

이 조건들은 하드웨어 증설이 아니라 운영 소프트웨어로 해결됩니다.

TEN의 AIPub은 GPU를 블록 단위로 분할해 여러 작업이 나눠 쓰게 하고, 자원 상태와 대기열을 고려해 작업을 배치하며, 팀·프로젝트별 자원을 분리해 충돌을 줄입니다. 값비싼 GPU가 파편화로 놀지 않도록, 클러스터 전체의 자원을 효율적으로 운영할 수 있습니다.

우리 클러스터의 GPU가 왜 대기 상태인지 진단하고 싶다면, AIPub을 확인해 보세요.

AIPub 자세히 살펴보기 👉
Share article
Contents
쿠버네티스 GPU 스케줄링이란?기본 스케줄러의 한계 3가지1. GPU를 '통째로'만 배정합니다2. 워크로드 특성을 고려하지 않습니다3. 우선순위·공정성 관리가 약합니다자원은 남는데 작업은 대기하는 이유: 자원 파편화효율적인 GPU 배치를 위해 필요한 조건결론: GPU 스케줄링의 경쟁력은 '수량'이 아니라 '배치'에 있습니다

TEN

RSS·Powered by Inblog