2025年12月17日にリリースされたKubernetes 1.35は、AI/MLワークロードの実行基盤として大きな進化を遂げた。Dynamic Resource Allocation(DRA)がGA(General Availability)に達し、GPUリソースの柔軟な割り当てが可能になった。本稿では、DRAの仕組みとAI基盤の効率化について解説する。
従来のGPU管理の限界
従来のKubernetesにおけるGPU割り当ては、Device Pluginを通じて「不透明な整数リソース」として扱われていた。ワークロードは「nvidia.com/gpu: 1」のようにGPU全体を要求し、たとえ必要なのがGPUメモリの一部であっても、排他的アクセスを取得していた。
この設計は深刻な非効率を生んでいた。本番クラスタでは、GPU使用率が30〜40%程度に留まることが一般的であった。50基のGPUを運用する中規模組織では、この無駄が年間30万〜60万ポンド(約6,000万〜1億2,000万円)の損失に相当するという試算もある。
また、NVLinkやGPUインターコネクトといったトポロジを考慮したスケジューリングが困難であり、マルチGPUワークロードの最適配置は手動での対応を余儀なくされていた。
Dynamic Resource Allocation(DRA)とは
DRAは、Kubernetes 1.34でGA(一般提供)に達し、1.35ではフィーチャーゲートがロック(無効化不可)された。これは、DRAがKubernetesのコア機能として完全に統合されたことを意味する。
DRAの根本的な違いは、ワークロードが「どのようなデバイスが必要か」を宣言的に記述し、スケジューラが最適な割り当てを決定する点にある。例えば「20GB以上のメモリを持つ任意のGPU」という要求を出すと、スケジューラが利用可能なリソースから最適なGPUを選択する。
DRAの主要コンポーネントは3つある。ResourceClaimはワークロードが必要とする特定リソースの要求を表す。DeviceClassはリソースの選択基準と設定を定義する。ResourceSliceは割り当て可能なリソースに関する情報を公開する。
きめ細かなGPU共有と分割
DRAは、GPUやNICなどのデバイスのきめ細かな共有を可能にする。開発者は40GBのGPUから10GBのみを安全に割り当てるといった、特定容量の要求ができる。
共有戦略として、Time-slicing(時分割)、MPS(Multi-Process Service)、MIG(Multi-Instance GPU)、または排他的アクセスをPod単位で指定できる。ワークロードの特性に応じて最適な分離レベルを選択することで、セキュリティと効率のバランスを取れる。
トポロジ認識スケジューリングも重要な機能である。NVLinkやGPUインターコネクトを理解し、マルチGPUワークロードを最適なノードとGPUの組み合わせに配置する。これにより、分散学習のパフォーマンスが大幅に向上する。
Kubernetes 1.35の追加機能
Kubernetes 1.35では、AI/MLチーム向けにGang Scheduling(アルファ)とDRAエコシステムの継続的な改善が提供されている。
ワークロード抽象化(Workload Abstraction)の基本実装も含まれている。これにより、スケジューリング制約とトポロジ要件を持つPodグルーピングを定義できる。Node Selectorの強化版と考えることができ、複数のPodが特定の条件を満たすノード群に一緒にスケジュールされることを保証する。
これらの機能は、大規模な分散学習ジョブや、特定のハードウェア構成を必要とするワークロードにとって特に有用である。
クラウドプロバイダーの対応状況
主要クラウドプロバイダーはDRAのサポートを積極的に進めている。AWSはAmazon EKSでDRAをサポートし、EC2 P6e-GB200(NVIDIA Grace Blackwell)インスタンスとの統合を提供している。
Google CloudはDistributed Cloud for bare metalでGPU向けDRAの管理機能を提供している。Alibaba CloudのACK(Container Service for Kubernetes)もDRAによるGPUスケジューリングをサポートしている。Azure AKSも2025年11月にDRAとデバイス、ドライバに関する詳細なガイダンスを公開した。
多くの企業がDRA導入後にGPU使用率の20〜40%改善を報告しており、コスト最適化とAIワークロードの効率化の両面で成果が出始めている。
FAQ
DRAを使うにはKubernetes 1.35が必要ですか?
DRA CoreはKubernetes 1.34でGAに達している。1.35ではフィーチャーゲートがロックされ、より安定した本番環境での利用が可能である。
既存のDevice Pluginからの移行は必要ですか?
DRAとDevice Pluginは共存可能である。段階的な移行が推奨され、新規ワークロードからDRAを採用し、既存ワークロードは徐々に移行するアプローチが現実的である。
GPU以外のデバイスにもDRAは使えますか?
DRAはGPUに限らず、NIC、FPGA、その他のアクセラレータにも適用可能である。デバイスドライバがDRAに対応していれば利用できる。
Time-slicingとMIGの違いは?
Time-slicingは時間分割でGPUを共有し、MIGはGPUを物理的に分割して独立したインスタンスを作成する。MIGはより強い分離を提供するが、対応GPUが限られる(A100、H100など)。
参考文献
- Dynamic Resource Allocation — Kubernetes Documentation
- Kubernetes GPU Management Just Got a Major Upgrade — The New Stack, 2025年
- Kubernetes 1.35 Upgrade Guide: Breaking Changes & New Features — ScaleOps, 2025年12月
- Dynamic Resource Allocation, devices, and drivers on Kubernetes — AKS Engineering Blog, 2025年11月
- Unlocking next-generation AI performance with DRA on Amazon EKS — AWS, 2025年



