aws cloud formation idenitfy ami id基于标签和创建实例

时间:2017-12-06 13:37:28

标签: amazon-web-services amazon-ec2 amazon-cloudformation ami

我有一个用例,其中云形成必须基于标签识别AMI-ID(作为云形成模板的输入传递)并同样创建ec2实例。

我可以运行脚本来识别(aws ec2 describe-images --filters“Name = tag:Name,Values = value1”--query'Images [*]。{ID:ImageId}' - 输出文本) AMI-ID通过云形成并传递给ec2实例创建..

有关如何执行此操作的任何想法或示例?

2 个答案:

答案 0 :(得分:0)

您无法将该脚本作为CloudFormation模板的一部分运行。

在创建CloudFormation堆栈以确定AMI ID之前,您需要执行该命令。然后通过输入参数将最终的AMI ID传递到CloudFormation堆栈。

所以这将是一个两步的过程。但是你可以创建一个脚本来完成它。

答案 1 :(得分:0)

亚马逊建议的方法在此处提供:Walkthrough: Looking Up Amazon Machine Image IDs

摘要:您在CloudFormation模板中创建了一个查询Lambda函数的自定义资源。 Lambda函数运行AMI查询代码并将其返回到CloudFormation模板。

此处提供了另一种方法:Integrating AWS CloudFormation with AWS Systems Manager Parameter Store

在第二种方法中,您使用CloudFormation在AWS Parameter Store中查找值。如何确定将哪些值放入参数存储区是另一个问题。