从AWS托管批处理作业获取实例类型

时间:2019-12-16 17:17:58

标签: amazon-web-services aws-step-functions aws-batch

我正在使用步进功能来启动批处理作业,如何获得最终用于在AWS管理的计算环境中处理我的作业的实例类型? CLI命令describe-jobs似乎不提供此信息。

1 个答案:

答案 0 :(得分:0)

您可以通过从提交作业的作业队列开始的多个CLI调用来获取信息;在此示例中,我使用jq来过滤结果。

注意:假设调用下面列出的每个命令时,EC2实例仍处于运行状态。

获取使用的计算环境:

aws batch describe-job-queues --job-queues YOUR_JOB_QUEUE | jq '.jobQueues | .[0] | .computeEnvironmentOrder | .[0] | .computeEnvironment'

获取使用的ECS集群ARN:

aws batch describe-compute-environments --compute-environment FROM_PREVIOUS | jq '.computeEnvironments | .[0] | .ecsClusterArn'

获取ECS容器实例

aws ecs list-container-instances --cluster FROM_PREVIOUS | jq '.containerInstanceArns | .[0]'

获取实例数据

aws ecs describe-container-instances --container-instances FROM_PREVIOUS1 --cluster FROM_PREVIOUS2 | jq '.containerInstances | .[0] | .attributes | .[] | select(.name=="ecs.instance-type") | .value'