получить тип экземпляра из пакетного задания, управляемого AWS

Я использую пошаговую функцию для запуска пакетного задания, как мне получить тип экземпляра, который в конечном итоге использовался для обработки моего задания в вычислительной среде, управляемой AWS? Не похоже, что эта информация доступна с помощью команды CLI описать вакансии.


person Constantino    schedule 16.12.2019    source источник


Ответы (1)


Вы можете получить это через несколько вызовов CLI, начиная с очереди заданий, в которую было отправлено задание; Я использую jq, чтобы отфильтровать результаты для этого примера.

ПРИМЕЧАНИЕ: это предполагает, что экземпляр EC2 все еще активен, когда вызывается каждая из перечисленных ниже команд.

Получите используемую вычислительную среду:

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

Получите использование ARN кластера ECS:

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'
person Constantino    schedule 18.12.2019