Назад | Перейти на главную страницу

AWS CLI ec2 run-instance завершается с ошибкой синтаксического анализа --tag-спецификаций

Я имею в виду следующую документацию AWS, пытаясь использовать CLI (из Windows) для запуска экземпляра EC2 с тегами, указанными во время запуска:

https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#Using_Tags_CLI

У меня возникли некоторые проблемы, поэтому я решил попробовать точную команду, указанную в документации:

aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-6e7f829e --tag-specifications 'ResourceType=instance,Tags=[{Key=webserver,Value=production}]' 'ResourceType=volume,Tags=[{Key=cost-center,Value=cc123}]'

Это приводит к следующей ошибке:

Error parsing parameter '--tag-specifications': Expected: '=', 
received: ''' for
 input:
'ResourceType=instance,Tags=[{Key=webserver,Value=production}]'
^

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

После долгих разочарований и поисков я наткнулся на страницу, где объяснялось, что синтаксис для run-экземпляров задокументирован неправильно. Я понимаю достаточно японский язык, чтобы увидеть метки «ошибка» и «правильно» в примерах и увидеть, что одинарные кавычки вокруг значений в спецификациях тегов приводят к сбою. Правильный синтаксис:

aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-6e7f829e --tag-specifications ResourceType=instance,Tags=[{Key=webserver,Value=production}] ResourceType=volume,Tags=[{Key=cost-center,Value=cc123}]