View a markdown version of this page

翻译 Slurm Job 提交插件脚本以在中使用 CLI 过滤器插件 AWS 个 - AWS 个

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

翻译 Slurm Job 提交插件脚本以在中使用 CLI 过滤器插件 AWS 个

当你从其他 Slurm 环境迁移时,将你现有的作业提交插件 Lua 脚本转换为 CLI 过滤器插件。转换过程涉及更新函数名称和字段访问模式以与 CLI 过滤器插件 API 配合使用。

先决条件

在翻译脚本之前,请完成以下任务:

  • 查看您现有的作业提交插件 Lua 脚本

  • 了解任务提交和 CLI 过滤器插件 API 之间的区别

  • 访问 Slurm CLI 过滤器插件文档

将作业提交插件脚本翻译为 CLI 过滤器插件
  1. 查看您现有的作业提交插件脚本函数 (slurm_job_submit,slurm_job_modify)。

  2. 识别等效的 CLI 过滤器插件函数:

    • slurm_job_submit 变为 slurm_cli_pre_submit

    • slurm_cli_setup_defaults为默认参数设置添加

    • slurm_cli_post_submit为提交后操作添加

  3. 将任务验证逻辑从job_desc字段转换为options数组访问权限:

    • job_desc.account 变为 options["account"]

    • job_desc.partition 变为 options["partition"]

    • job_desc.features 变为 options["constraint"]

  4. 将记录呼叫从更新slurm.log_user()slurm.log_error()

  5. 在开发集群上测试翻译后的脚本。

  6. 按照标准的 CLI 过滤器插件部署流程部署到您的生产集群。

预期结果

完成翻译后:

  • 您的翻译脚本提供等效的作业提交验证

  • 用户看到的错误消息和提示与您的原始作业提交插件类似

  • 在迁移到 AWS PCS 期间,任务提交策略会得到维护

问题排查

脚本翻译错误

症状:任务提交因 Lua 执行错误而失败。

可能的原因:翻译后的脚本中的字段访问或函数调用不正确。

解决方案:查看 CLI 过滤器插件 API 文档,比较任务提交和 CLI 筛选器接口之间的字段映射。