本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon S3 在 AWS PCS 中部署 CLI 筛选插件脚本
如果您想在不进行重建的情况下更新实时集群上的作业提交逻辑,请使用 S3 部署 CLI 筛选器插件脚本 AMIs。此方法在实例启动期间使用用户数据从 S3 下载脚本。
先决条件
在使用 S3 部署脚本之前,请完成以下任务:
-
使用 CLI 过滤器插件 Lua 脚本创建 S3 存储桶
-
配置 IAM 实例配置文件,使其具有对 S3 存储桶的读取权限
-
设置 S3 VPC 网关终端节点,无需互联网即可直接访问
-
准备要从 S3 下载的用户数据脚本
使用 S3 部署 CLI 过滤器插件脚本
-
将您的
cli_filter.lua脚本上传到 S3 存储桶。 -
使用存储桶的 S3 读取权限配置您的 IAM 实例配置文件。
-
在启动模板用户数据中添加 shell 代码以下载脚本:
aws s3 cp s3://my-bucket/cli_filter.lua /etc/aws/pcs/scheduler/slurm-24.11/cli_filter.lua chmod 644 /etc/aws/pcs/scheduler/slurm-24.11/cli_filter.lua -
使用更新的启动模板部署计算节点组。
-
测试作业提交以验证脚本功能。
预期结果
完成 S3 部署后:
-
CLI 筛选插件脚本将在启动期间自动下载到所有实例
-
S3 中的脚本更新会反映在新启动的实例上
-
Job 提交策略在整个集群中得到一致执行
问题排查
- S3 访问被拒
-
症状:实例启动失败或脚本未下载。
可能的原因:缺少 IAM 权限或 S3 VPC 终端节点。
解决方案:验证 IAM 实例配置文件是否具有
s3:GetObject权限并且已配置 S3 VPC 终端节点。