在CloudFormation模板中命名EC2实例?

use*_*388 40 amazon-web-services aws-cloudformation

我有一个模板可以工作并生成一个堆栈,但我找不到要设置的属性或其他允许我给我创建的EC2实例提供名称的东西.生成时,名称为空.

Pet*_*SFT 68

您需要向Name云形成模板添加带密钥的标记.像这样...

"ec2-instance" : {
    "Type" : "AWS::EC2::Instance",
    "Properties" : {
        "ImageId" : "ami-0102022,
        "SecurityGroupIds" : [{ "Ref" : "SecurityGroup" }],
        "SubnetId" : { "Ref" : "Subnet" },
        "InstanceType" : "m1.medium",
        "Tags" : [
            {"Key" : "Name", "Value" : "Instance name"},
            {"Key" : "Environment", "Value" : { "Ref" : "Environment" }},
            {"Key" : "Owner", "Value" : { "Ref" : "Owner" }}
        ]
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,如果使用自动缩放组,则需要在Autoscaling组属性中添加标记,并将属性"PropagateAtLaunch"设置为"true". (8认同)
  • @JohnSmith它只是谷歌,第一个结果是http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html.>`PropagateAtLaunch`:如果你想AWS CloudFormation的标签复制到被推出,自动伸缩群的一部分EC2实例设置为true.如果您希望标记仅附加到自动缩放组而不是复制到作为自动缩放组的一部分启动的任何实例,则设置为false.要求:是的.类型:布尔值.<基本上,如果您有自动缩放组并希望将标记添加到实例,则需要将此属性设置为"true". (4认同)
  • 谢谢@jtblin。我想我的困惑是在哪里以及如何使用该财产。我通读了文档并找到了一个示例,表明它不仅仅是一个键值对。PropagateAtLaunch 是集合中的第三个值。{“键”:“名称”,“值”:“实例名称”,“PropagateAtLaunch”:true}。另外值得注意的是,我不必向 ec2-instance 块添加任何标签。一切都在自动缩放组中设置 (2认同)