Создание облаков облаков AWS Шаблон - предоставление тегов для стека в шаблоне

Мы хотели использовать теги, специфичные для компании, для ресурсов, которые мы создаем в AWS для выставления счетов. Я использую шаблон формирования облаков, чтобы развернуть наш экземпляр Elasticbeanstalk и другие ресурсы, зависящие от проекта. Когда я использую консоль CloudFormation для создания стека, она запрашивает у меня теги на странице после параметров. Мне нужно вручную ввести теги для этого стека. Однако есть ли способ указать те теги (теги для стека) с самим шаблоном формирования облаков? Таким образом, тег распространяется на другие ресурсы? Я знаю, что облако формирует автоматически метки ресурсов с именем стека. Но нам нужны теги, специфичные для компании, для выставления счетов отдельным отделам.

Ответы

Ответ 1

При запуске AWS CloudFormation запрашиваемые теги будут применяться к самому стеклу CloudFormation и (где это возможно) также будут распространены на ресурсы, запущенные Stack.

Эти теги могут быть переданы вызову API CreateStack или из CLI:

Эти теги применяются ко всему стеку и не включены в шаблон CloudFormation.

Тем не менее, шаблоны CloudFormation могут включать теги для определенных создаваемых ресурсов. Например, при запуске экземпляров Amazon EC2 теги могут быть включены в шаблон:

"MyInstance" : {
    "Type" : "AWS::EC2::Instance",
    "Properties" : {
        "SecurityGroups" : [ { "Ref" : "MySecurityGroup" } ],
        "AvailabilityZone" : "us-east-1a",
        "ImageId" : "ami-20b65349",
        "Volumes" : [
            { "VolumeId" : { "Ref" : "MyEBS" },
                       "Device" : "/dev/sdk" }
        ],
        "Tags" : [
            {
                "Key" : "Stage",
                "Value" : "QA"
            }
       ]
    }
}

Ответ 2

В анатомии шаблона вы не можете напрямую устанавливать теги уровня стека. Однако вы можете создать шаблон оболочки, имея единственный ресурс AWS:: CloudFormation:: Stack.

Вы можете определить теги уровня стека на этом ресурсе:

{
  "AWSTemplateFormatVersion": "2010-09-09",
  "Description": "WrapperTemplate",

  "Resources": {
    "WrappedStackWithStackLevelTags": {
      "Type" : "AWS::CloudFormation::Stack",
      "Properties" : {
        "Tags" : [ { "Key" : "Stage", "Value" : "QA" } ],
        "TemplateURL" : "your-original-template-s3-url"
      }
    }
  }
}