Amazon CloudFormation 模板格式 - Amazon CloudFormation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon CloudFormation 模板格式

可使用 JSON 或 YAML 格式创作 Amazon CloudFormation 模板。我们支持适用于这两种格式的所有 Amazon CloudFormation 特性和功能(包含在 Amazon CloudFormation Designer 中)。

在决定要使用哪种格式时,选择最方便使用的格式。另外,考虑到 YAML 本身提供了一些不适用于 JSON 的功能,例如注释。

重要

我们建议您不要在 Designer 中将 # YAML 注释添加到模板中。如果您的 YAML 模板包含 # 注释,则 Designer 在将模板转换为 JSON 时不保留这些注释。此外,在 Designer 中修改模板 (例如,在画布上移动资源) 时,注释将丢失。

您可以向在 Designer 以外创建的 Amazon CloudFormation 模板中添加注释。以下示例介绍一个包含内联注释的 YAML 模板。

AWSTemplateFormatVersion: "2010-09-09" Description: A sample template Resources: MyEC2Instance: #An inline comment Type: "AWS::EC2::Instance" Properties: ImageId: "ami-0ff8a91507f77f867" #Another comment -- This is a Linux AMI InstanceType: t2.micro KeyName: testkey BlockDeviceMappings: - DeviceName: /dev/sdm Ebs: VolumeType: io1 Iops: 200 DeleteOnTermination: false VolumeSize: 20

有关适用于每种格式的模板语法的更多信息,请参阅模板剖析

Amazon CloudFormation 支持以下 JSON 和 YAML 规范:

JSON

Amazon CloudFormation 遵循 ECMA-404 JSON 标准。有关 JSON 格式的更多信息,请访问 http://www.json.org

YAML

Amazon CloudFormation 支持 YAML 版本 1.1 规范,但有一些例外。Amazon CloudFormation 不支持以下功能:

  • binaryomappairssettimestamp 标签

  • Aliases

  • 哈希合并

有关 YAML 的更多信息,请参阅 https://yaml.org/