本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Step Functions 运行 Amazon Batch 工作负载
您可以将 Step Functions 与集成 Amazon Batch ,以便在 Amazon 云中运行批量计算工作负载。本页列出了支持的, Amazon Batch APIs并提供了执行批处理任务的示例Task
状态。
要了解如何在 Step Functions 中与 Amazon 服务集成,请参阅集成 服务和在 Step Functions API 中向服务传递参数。
优化 Amazon Batch 集成的关键特性
运行作业 (.sync) 集成模式可用。
请注意,没有针对 请求响应 或 等待具有任务令牌的回调 集成模式的优化。
以下内容包括提交 Amazon Batch 作业并等待其完成的Task
状态。
{
"StartAt": "BATCH_JOB",
"States": {
"BATCH_JOB": {
"Type": "Task",
"Resource": "arn:aws:states:::batch:submitJob.sync",
"Parameters": {
"JobDefinition": "preprocessing",
"JobName": "PreprocessingBatchJob",
"JobQueue": "SecondaryQueue",
"Parameters.$": "$.batchjob.parameters",
"ContainerOverrides": {
"ResourceRequirements": [
{
"Type": "VCPU",
"Value": "4"
}
]
}
},
"End": true
}
}
}
支持 Amazon Batch APIs:
中的参数 Step Functions 表示为 PascalCase
即使原生服务API已在camelCase(例如API操作)中startSyncExecution
,您也可以在中指定参数 PascalCase,例如:StateMachineArn
。
IAM通话政策 Amazon Batch
以下示例模板显示了如何根据状态机定义中的资源 Amazon Step Functions 生成IAM策略。有关更多信息,请参阅Step Functions 如何为集成服务生成 IAM 策略 和探索 Step Functions 中的服务集成模式。
由于 Amazon Batch 为资源级访问控制提供了部分支持,因此您必须使用。"Resource": "*"