- 最新
- 投票最多
- 评论最多
【以下的回答经过翻译处理】 嗨Eric,感谢您联系我们!
经过调查,我确认了在将Batch Job配置为EventBridge规则目标时,ContainerOverrides下的ResourceRequirement参数将不被处理。Command下的参数将被接受,但是ResourceRequirements不会从EventBridge Target传递到Batch Job。此外我还可以确认,有一个功能请求可以支持这个需求,但我无法提供何时可用的具体时间。
不过,我可以建议您使用一个比较新的EventBridge Scheduler功能(https://docs.aws.amazon.com/eventbridge/latest/userguide/scheduler.html)而不是使用cron表达式的EventBridge规则来完成您的用例。此功能TerraForm是支持的,将允许您按计划直接调用Batch SubmitJob调用并传递所有要传递的参数,包括带有ResourceRequirement字段的Container Override参数。
我在控制台中使用Scheduler调度测试了这个功能,VCPU和内存ResourceRequirements,并传递了以下JSON进行API调用:
{ "JobDefinition":"arn:aws:batch:us-west-1:123456789012:<definition>", "JobName":"MyData", "JobQueue":"arn:aws:batch:us-west-1:123456789012:<queue>", "ContainerOverrides":{ "ResourceRequirements":[ { "Type":"VCPU", "Value":"4" }, { "Type":"MEMORY", "Value":"8192" } ] } }
可以看到,在ContainerOverride字段中指定的VCPU和MEMORY的情况下,作业可以成功启动。
我希望这些信息有所帮助!