View a markdown version of this page

使用 Amazon S3 在中部署 CLI 过滤器插件脚本 AWS 个 - AWS 个

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

使用 Amazon S3 在中部署 CLI 过滤器插件脚本 AWS 个

如果您想在不重建 AMI 的情况下更新实时集群上的任务提交逻辑,请使用 S3 部署 CLI 筛选器插件脚本。这种方法在实例启动期间使用用户数据从 S3 下载脚本。

先决条件

在使用 S3 部署脚本之前,请完成以下任务:

  • 确认您使用的是 Slurm 版本 24.11 或更高版本。对于 24.11 和 25.05,请参阅。要求

  • 使用 CLI 过滤器插件 Lua 脚本创建 S3 存储桶

  • 配置具有 S3 存储桶读取权限的 IAM 实例配置文件

  • 设置 S3 VPC 网关终端节点以便在没有互联网的情况下直接访问

  • 准备要从 S3 下载的用户数据脚本

使用 S3 部署 CLI 过滤器插件脚本
  1. 将您的cli_filter.lua脚本上传到您的 S3 存储桶。

  2. 使用存储桶的 S3 读取权限配置您的 IAM 实例配置文件。

  3. 将 shell 代码添加到您的启动模板用户数据中以下载脚本:

    aws s3 cp s3://my-bucket/cli_filter.lua /etc/aws/pcs/scheduler/slurm-25.11/cli_filter.lua chmod 644 /etc/aws/pcs/scheduler/slurm-25.11/cli_filter.lua
  4. 使用更新后的启动模板部署计算节点组。

  5. 测试作业提交以验证脚本功能。

预期结果

完成 S3 部署后:

  • CLI 过滤器插件脚本会在启动期间自动下载到所有实例

  • S3 中的脚本更新会反映在新启动的实例上

  • 任务提交策略在整个集群中始终如一地强制执行

问题排查

S3 访问被拒

症状:实例启动失败或未下载脚本。

可能的原因:缺少 IAM 权限或 S3 VPC 终端节点。

解决方案:验证 IAM 实例配置文件是否具有s3:GetObject权限并配置了 S3 VPC 终端节点。