5分钟掌握donau-slurm-wrappersSlurm用户的Donau迁移神器 【免费下载链接】donau-slurm-wrappersdonau-slurm-wrappers provide some scripts for Slurm Users to submit and manage jobs in Donau cluster environment项目地址: https://gitcode.com/openeuler/donau-slurm-wrappers前往项目官网免费下载https://ar.openeuler.org/ar/还在为从Slurm迁移到Donau调度系统而烦恼吗donau-slurm-wrappers就是你的终极解决方案这个开源工具包让习惯使用Slurm命令的用户能够无缝迁移到Donau环境无需重新学习复杂的Donau CLI命令。本文将为你提供完整的快速入门指南帮助你在5分钟内掌握这个强大的迁移工具。什么是donau-slurm-wrappers donau-slurm-wrappers是一个专门为Slurm用户设计的Donau迁移工具它提供了一套与Slurm命令语法完全兼容的脚本包装器。如果你曾经使用过Slurm的srun、sbatch、squeue等命令现在可以零学习成本地在Donau集群中使用相同的命令这个工具的核心价值在于降低迁移门槛让Slurm用户能够快速适应Donau环境同时保持原有的工作流程和脚本不变。无论是作业提交、查询还是控制所有操作都保持与Slurm一致的用户体验。快速安装指南 安装donau-slurm-wrappers非常简单只需三个步骤下载项目从仓库克隆或下载压缩包到用户家目录设置权限将脚本属主改为Donau CLI用户设置权限为555配置环境将cmd/目录路径添加到PATH环境变量中具体命令如下# 下载项目 git clone https://gitcode.com/openeuler/donau-slurm-wrappers # 设置权限假设CLI用户为ccs_cli chown -R ccs_cli:ccs_cli donau-slurm-wrappers chmod -R 555 donau-slurm-wrappers # 配置环境变量添加到~/.bashrc export PATH$PATH:/path/to/donau-slurm-wrappers/cmd/核心功能详解 ️1. 作业提交命令srun命令- 提交阻塞式作业默认转换为dsub -Kco提交阻塞式作业使用--pty选项可提交交互式作业支持所有常见的Slurm参数-n、-c、-J、-t等sbatch命令- 提交脚本作业转换为dsub -s提交批处理作业支持MPI作业通过--mpi指定MPI类型兼容Slurm脚本中的#SBATCH指令2. 作业查询命令squeue命令- 查询未完成作业显示RUNNING、PENDING、SUSPENDED状态的作业对应Donau的RUNNING、WAITING/PENDING、STOPPED状态支持按作业ID、用户名、分区等条件过滤sacct命令- 查询记账信息显示COMPLETED、FAILED、CANCELLED、RUNNING状态的作业对应Donau的SUCCEEDED、FAILED、RUNNING状态支持时间范围、分区、用户等查询条件3. 作业控制命令scancel命令- 终止作业对应Donau的djob -T命令支持按作业ID、名称、用户等条件终止作业终止后状态变为CANCELLEDscontrol命令- 控制作业状态suspend暂停作业对应djob -Sresume恢复作业对应djob -R简单的命令语法易于使用4. 节点查询命令sinfo命令- 查询节点和分区信息显示集群节点状态和分区信息将Donau的QUEUE映射为Slurm的PARTITION支持详细模式显示更多信息实用示例演示 示例1提交简单作业# 使用熟悉的Slurm语法 srun -n 1 -c 2 -J my_job -t 60 my_program # 实际转换为Donau命令 dsub -Kco -N 1 --name my_job -T 1h -R cpu2 my_program示例2提交批处理作业# 创建Slurm脚本 cat job.sh EOF #!/bin/sh #SBATCH -J test_job #SBATCH -n 4 #SBATCH -o /tmp/output.log sleep 10 EOF # 使用sbatch提交 sbatch job.sh示例3查询作业状态# 查看所有作业 squeue # 查看特定用户的作业 squeue -u username # 查看详细作业信息 squeue -l环境变量支持 donau-slurm-wrappers支持通过环境变量设置参数优先级低于命令行选项srun相关SRUN_CPUS_PER_TASK、SLURM_JOB_NAME、SLURM_TIMELIMIT等sbatch相关SBATCH_JOB_NAME、SBATCH_OUTPUT、SBATCH_PARTITION等squeue相关SQUEUE_NAMES、SQUEUE_STATES、SQUEUE_USERS等scancel相关SCANCEL_NAME、SCANCEL_STATE、SCANCEL_USER等调试与故障排除 启用调试模式设置环境变量开启详细日志export SLURM_TO_DONAU_DEBUGtrue日志文件将生成在/tmp目录格式为脚本名.UID.PID常见问题解决问题1token验证失败error: access token does not exist, please execute command dconfig to get token解决方案执行dconfig命令获取token问题2token过期error: token expired! refresh token does not exist解决方案重新执行dconfig命令问题3权限不足token unauthorized解决方案联系管理员加入用户组或管理员组最佳实践建议 ✅脚本存放位置建议将执行脚本放在共享目录中确保所有节点可访问MPI作业处理使用--mpi指定MPI类型并在脚本中添加$CCS_MPI_OPTIONS环境变量环境变量管理合理使用环境变量简化常用参数配置日志管理定期清理/tmp目录下的调试日志文件权限设置确保脚本权限正确避免执行权限问题项目结构概览 donau-slurm-wrappers/ ├── cmd/ │ ├── sacct # 作业记账查询 │ ├── sbatch # 批处理作业提交 │ ├── scancel # 作业取消 │ ├── scontrol # 作业控制 │ ├── sinfo # 节点信息查询 │ ├── squeue # 作业队列查询 │ └── srun # 交互式作业提交 ├── README.md # 中文文档 └── README.en.md # 英文文档总结与展望 donau-slurm-wrappers作为Slurm到Donau的迁移桥梁为HPC用户提供了无缝过渡的完美解决方案。通过保持Slurm命令语法的一致性它极大地降低了学习成本和迁移风险。无论你是正在考虑迁移到Donau的Slurm用户还是已经在使用Donau但怀念Slurm简洁命令的老手这个工具都能为你带来显著的效率提升。现在就开始使用donau-slurm-wrappers体验简单、快速、免费的迁移过程吧记住成功的迁移不仅仅是技术上的转换更是工作流程的平滑过渡。donau-slurm-wrappers正是为此而生让技术变革不再成为生产力瓶颈。【免费下载链接】donau-slurm-wrappersdonau-slurm-wrappers provide some scripts for Slurm Users to submit and manage jobs in Donau cluster environment项目地址: https://gitcode.com/openeuler/donau-slurm-wrappers创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考