使用 ResourceQuota 管理 NVIDIA 设备

HAMi 扩展了原生调度器,允许您使用内置的 ResourceQuota 来限制资源。对于 NVIDIA 设备,HAMi 支持 ResourceQuota 的扩展版本以满足特殊场景。对于请求多个设备的任务,原生 ResourceQuota 会分别计算每种资源的请求,而扩展的 ResourceQuota 则根据设备数量计算实际的资源请求。

resources:
  requests:
    nvidia.com/gpu: 2
    nvidia.com/gpumem: 2000

此外,扩展的 ResourceQuota 还支持基于实际集群设备情况限制 GPU 内存和计算能力的请求。例如,如果任务即将调度到一块拥有 2000MB 内存的 GPU,HAMi 调度器会计算请求是否可行,并根据实际资源使用情况更新配额。

目录

使用扩展 ResourceQuota

为了确保 HAMi 调度器识别扩展的 ResourceQuota,资源名称应包含 limits. 前缀。例如,以下 ResourceQuota 配置限制了默认命名空间中 GPU 内存使用量为 2000MiB,并限制使用超过 2 块 GPU:

apiVersion: v1
kind: ResourceQuota
metadata:
  name: gpu-quota
  namespace: default
spec:
  hard:
    limits.nvidia.com/gpu: 2
    limits.nvidia.com/gpumem: 2000

在 Alauda 容器平台管理 ResourceQuota

项目级 ResourceQuota

项目级 ResourceQuota 对整个项目(命名空间)应用资源限制,确保项目内所有工作负载的资源总量保持在定义范围内。 您可以在 Alauda 容器平台创建或更新项目时,为项目指定 HAMi 的扩展配额。

命名空间级 ResourceQuota

命名空间级 ResourceQuota 提供更细粒度的控制,允许您为同一项目内的不同命名空间设置具体限制。 您可以在 Alauda 容器平台创建或更新命名空间时,为命名空间指定 HAMi 的扩展配额。

监控 ResourceQuota

您可以在 Alauda 容器平台的项目详情、命名空间详情以及业务视图概览页面查看 ResourceQuota 的分配率。