【问题标题】:CloudFormation - Applying tags to other AWS resourcesCloudFormation - 将标签应用于其他 AWS 资源
【发布时间】:2019-02-22 18:21:06
【问题描述】:

我试图了解 CloudFormation 在将标签应用到它创建的资源方面的行为。

根据他们的文档 - https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html

In addition to any tags you define, AWS CloudFormation automatically creates the following stack-level tags with the prefix aws::

aws:cloudformation:logical-id
aws:cloudformation:stack-id
aws:cloudformation:stack-name

我从 CloudFormation 创建了一个 DynamoDB 表,我访问了 DynamoDB 控制台并选择了标签选项卡,但找不到任何要添加的特定标签。我也没有找到添加的 aws:cloudformation:logical:id 标签。

然后我尝试使用 CloudFormation 创建一个 S3 存储桶。这似乎可行,我能够访问 S3 控制台并找到 S3 存储桶的 aws:cloudformation:logical-id 标记。

这是某种不一致吗?是否有任何特定的文档可以用来查找 CloudFormation 应用前缀为 aws: 的标签的 AWS 资源列表,如文档中所述?

任何帮助将不胜感激。谢谢!

【问题讨论】:

  • 我注意到标签也没有用于 ECS 相关资源。

标签: amazon-web-services amazon-cloudformation


【解决方案1】:

我最近不得不就此联系 AWS 企业支持

未从云形成接收标签的常见请求服务包括

  • DynamoDB
  • 弹力痛
  • IAM 资源
  • ECS 集群
  • Cloudfront 发行版
  • 胶水作业
  • SQS
  • Firehose 传输流

有一个内部功能请求打开,但他们建议的操作是手动标记资源。

【讨论】:

  • 这很可悲,也有点傻。我猜在这种情况下,使用 API 或 Terraform 之类的东西是唯一的选择?
【解决方案2】:
  • 在同一个 CFT 中除了 DynamoDB 之外还有其他资源吗?如果是,该资源是否被 CF 标记?
  • 如果您没有任何其他资源,您可以添加 EC2 实例资源来验证这是资源特定问题还是模板范围问题。
  • 从您发布的内容看来,堆栈创建成功。虽然听起来很傻,但您可以使用 CLI 尝试一次 - aws cloudformation create-stack --stack-name Name-of-your-stack --template-body file://your_template.json --tags Key=Name,Value=Your_Tag_Value --profile default --region region --capabilities CAPABILITY_NAMED_IAM
  • 如果您的 CFT 中没有 IAM 资源,您可以跳过 --capabilities CAPABILITY_NAMED_IAM。
  • 我从未遇到过任何通过 CF 标记的问题,可能需要检查 these sample templates。

【讨论】:

  • 我再次尝试使用不同的模板,似乎需要时间或至少这是我所经历的。在我的第二次尝试中,我能够看到 DDB 表上的标签。文档还说标签被传播到支持它们的 AWS 资源。但我找不到支持的列表。这也可以解释一些事情。
猜你喜欢
  • 2021-06-03
  • 1970-01-01
  • 1970-01-01
  • 2019-11-30
  • 2018-10-25
  • 2020-02-23
  • 1970-01-01
  • 2016-02-29
  • 2020-04-10
相关资源
最近更新 更多