本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
翻译 Slurm Job 提交插件脚本以在中使用 CLI 过滤器插件 AWS 个
当你从其他 Slurm 环境迁移时,将你现有的作业提交插件 Lua 脚本转换为 CLI 过滤器插件。转换过程涉及更新函数名称和字段访问模式以与 CLI 过滤器插件 API 配合使用。
先决条件
在翻译脚本之前,请完成以下任务:
-
查看您现有的作业提交插件 Lua 脚本
-
了解任务提交和 CLI 过滤器插件 API 之间的区别
-
访问 Slurm CLI 过滤器插件文档
将作业提交插件脚本翻译为 CLI 过滤器插件
-
查看您现有的作业提交插件脚本函数 (
slurm_job_submit,slurm_job_modify)。 -
识别等效的 CLI 过滤器插件函数:
-
slurm_job_submit变为slurm_cli_pre_submit -
slurm_cli_setup_defaults为默认参数设置添加 -
slurm_cli_post_submit为提交后操作添加
-
-
将任务验证逻辑从
job_desc字段转换为options数组访问权限:-
job_desc.account变为options["account"] -
job_desc.partition变为options["partition"] -
job_desc.features变为options["constraint"]
-
-
将记录呼叫从更新
slurm.log_user()为slurm.log_error()。 -
在开发集群上测试翻译后的脚本。
-
按照标准的 CLI 过滤器插件部署流程部署到您的生产集群。
预期结果
完成翻译后:
-
您的翻译脚本提供等效的作业提交验证
-
用户看到的错误消息和提示与您的原始作业提交插件类似
-
在迁移到 AWS PCS 期间,任务提交策略会得到维护
问题排查
- 脚本翻译错误
-
症状:任务提交因 Lua 执行错误而失败。
可能的原因:翻译后的脚本中的字段访问或函数调用不正确。
解决方案:查看 CLI 过滤器插件 API 文档,比较任务提交和 CLI 筛选器接口之间的字段映射。