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

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

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

当你从其他 Slurm 环境迁移时,将你现有的 Job Submit Plugin Lua 脚本翻译为 CLI 过滤器插件。翻译过程包括更新函数名称和字段访问模式以使用 CLI 过滤器插件 API。

先决条件

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

  • 查看你现有的 Job Submit 插件 Lua 脚本

  • 了解 Job Submit 和 CLI 筛选插件之间的区别 APIs

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

将 Job Submit 插件脚本翻译为 CLI 过滤器插件
  1. 查看您现有的 Job Submit 插件脚本函数 (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 过滤器插件部署流程部署到您的生产集群。

预期结果

完成翻译后:

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

  • 用户看到的错误消息和提示与你最初的 Job Submit 插件类似

  • 在迁移到 AWS PCS 期间,将维护作业提交策略

问题排查

脚本翻译错误

症状:Job 提交失败,导致 Lua 执行错误。

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

解决方案:查看 CLI 筛选插件 API 文档,比较 Job Submit 和 CLI 筛选器接口之间的字段映射。