更新时间:2025-05-21 GMT+08:00
配额管理
配额管理(Quota Management)主要用于限制用户、分区对计算资源(如CPU、内存、节点数、作业数等)的使用。Slurm本身不直接管理存储或磁盘配额,但可以通过QoS(Quality of Service)、关联(Associations) 和 用户/分区(Users/Partitions) 机制实现对计算资源的配额控制。
配额管理核心概念
- 后台设置
- Association(关联)
- Association 是 Slurm 中定义用户、QoS 之间关系的核心机制。
- 通过关联,可以为特定用户设置资源限制(如最大作业数、最大 CPU/节点数等)。
- 配置参数包括:
参数
说明
MaxJobs
允许的最大作业数
MaxCPUs
允许的最大 CPU 核心数
MaxNodes
允许的最大节点数
MaxSubmit
允许提交的最大作业数
MaxWall
最大作业运行时间(按分区或 QoS 设置)
- QoS(服务质量)
- QoS用于定义资源的优先级和限制,可以关联到用户、账户或作业。
- 通过QoS可以设置:
参数
说明
Priority
优先级权重
MaxWall
最大作业运行时间
MaxJobs/MaxCPUs
资源使用上限
- Association(关联)
- 页面设置
配额类型与配置方法
- 时间配额(Walltime Limit)
- 资源配额(CPU/节点/作业数)
- QoS级别:
acctmgr modify qos normal set MaxCPUs =100 MaxJobs=100
- 用户级别:
sacctmgr 设置关联的 MaxJobs、MaxCPUs、MaxNodes。
# 限制用户 alice的最大作业数为 10,最大 CPU 为 100 sacctmgr modify user alice set MaxJobs=10 MaxCPUs=100
页面设置:
- QoS级别:
配置步骤示例
示例1:为用户设置 QoS 和资源限制
- 创建QoS:
sacctmgr add qos name=short_qos MaxWall=1:00:00 MaxJobs=5
- 将 QoS 关联到用户:
sacctmgr modify user alice set qos=short_qos
- 验证配置:
sacctmgr show user alice format=User,Account,QOS,MaxJobs,MaxCPUs
示例2:超过配额拦截
查看配额信息
注意事项
- 优先级顺序:Slurm 的配额限制优先级为:用户级 >QoS级。
- 审计与监控:定期使用 sshare 和 sacct 监控资源使用情况。
说明
支持查看14天内配额使用情况。
父主题: HPC管理调度插件