云原生AI · K8s GPU调度 · 多租户
传统部署一个模型占一张卡,请求来了才用、空闲时GPU空转——昂贵的H100利用率30%是常态。
K8s原生只管CPU/内存,GPU是「二等公民」:早期要靠nvidia-docker,调度器不认识GPU。NVIDIA Device Plugin补上这层——把GPU作为extended resource暴露给K8s,Pod可以request nvidia.com/gpu: 1。但默认是独占整卡:一个Pod拿走一张GPU,别的Pod进不来,利用率还是上不去。
共享的三种姿势:MIG(A100/H100硬件切分,隔离最强)、时间分片(GPU Time-Slicing,软共享,按时间片轮转)、MPS(多进程服务,共享上下文,吞吐高但隔离弱)。选哪个看隔离要求和延迟敏感度。
切「独占/共享」模式,看两个节点上4个推理Pod怎么分配GPU,以及利用率差距。共享模式让多Pod拼车一张卡,利用率翻倍。
选型逻辑:多租户/安全敏感 → MIG;内部服务/简单上手 → Time-Slicing;同团队/追吞吐 → MPS。生产环境最常用MIG + Time-Slicing组合:MIG做大粒度切分,每个MIG实例内再Time-Slicing细共享。NVIDIA GPU Operator把这些自动化部署到K8s,开箱即用。
隔离最强,A100/H100支持,多租户首选。
配置简单,隔离弱,内部服务用。
吞吐最高,隔离最弱,同团队用。
延迟最稳但利用率低,高优服务用。