Как я могу запросить не последний идентификатор изображения AMI для EC2? - PullRequest
0 голосов
/ 27 декабря 2018

Шаблон AWS CloudFormation позволяет выбрать AMI Image ID для экземпляра EC2, используя конструкцию, подобную этой

ECSAMI:
    Description: AMI ID
    Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
    Default: /aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2

Но я не могу найти путь к параметру, который будет указывать на конкретную версию AMI Image.Например, AMI ID для ECS может быть запрошен по этому пути, который указывает на конкретную версию:

/aws/service/ecs/optimized-ami/amazon-linux-2/amzn2-ami-ecs-hvm-2.0.20181112-x86_64-ebs/image_id

Как я могу запросить не последний идентификатор изображения AMI для EC2?Или где я могу полный "дерево" или список путей из общедоступных параметров?Я хочу что-то вроде этого

/aws/service/<ec2>/<amazon-linux-2>/<image-version>

1 Ответ

0 голосов
/ 28 декабря 2018

Специальный метод SSM, который вы показываете в своем вопросе, предоставляется AWS, чтобы упростить пользователям доступ к последней версии определенных AMI.Информация публикуется в хранилище параметров.

Альтернативный метод заключается в жестком кодировании значения требуемого AMI в разделе шаблона, который определяет экземпляр EC2.Вы часто будете видеть примеры шаблонов, которые используют сопоставление, чтобы иметь разные значения AMI для каждого региона.

Нет возможности запросить конкретный AMI, кроме как предоставить фактический идентификатор AMI.

Почемуэто?Это связано с тем, что метод SSM был добавлен для удобства обращения к «последнему» или «рекомендованному» AMI.Некоторые фоновые процессы публикуют соответствующие идентификаторы AMI для SSM.Он не предназначен в качестве метода для каталогизации всех AMI.

Если вам действительно нужен поиск по имени, вы можете создать пользовательский ресурс CloudFormation с помощью AWS Lambda, который запрашивает доступные AMI по имени изатем возвращает соответствующий идентификатор AMI.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...