AWS CloudFormation
User Guide (API Version 2010-05-15)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

使用 CloudFormer 通过现有 AWS 资源创建 AWS CloudFormation 模板

CloudFormer 是一种模板创建试用版工具,可从您的账户中的现有 AWS 资源创建 AWS CloudFormation 模板。您可选择在您的账户中运行的任何受支持的 AWS 资源,CloudFormer 将在 Amazon S3 存储桶中创建模板。

注意

使用 CloudFormer 可生成可用作起始点的模板。并非所有 AWS 资源或资源属性均受支持。 。

以下列表概述了使用 CloudFormer 的基本过程:

  1. 使用您的现有流程和工具预置并配置所需的资源。

  2. 创建并启动一个 CloudFormer 堆栈。

    CloudFormer 是一个 AWS CloudFormation 堆栈。您可以通过从 AWS 环境启动堆栈来运行 CloudFormer。它在一个 t2.medium Amazon EC2 实例上运行,不需要其他资源。

  3. 利用 CloudFormer,使用您的现有 AWS 资源创建一个模板,然后将该模板保存至 Amazon S3 存储桶。

  4. 删除 CloudFormer 堆栈。

    此后,您通常不需要再使用 CloudFormer,因此可以删除堆栈,从而避免产生额外费用。

  5. 根据需要使用模板启动新堆栈。

以下主题通过带您演练使用多个资源创建模板的基本场景(Amazon EC2 实例上的简单网站)介绍如何使用 CloudFormer。但是,本示例只是许多可能方案中的一个,CloudFormer 可以通过任何支持的 AWS 资源集合创建模板。

步骤 1:创建 CloudFormer 堆栈

CloudFormer 本身就是一个 AWS CloudFormation 堆栈,因此第一步是从 AWS CloudFormation 控制台创建并启动堆栈。

使用 AWS CloudFormation 控制台创建 CloudFormer 堆栈

  1. 登录 AWS CloudFormation 控制台,然后单击“Create New Stack ”以启动堆栈创建向导。有关如何登录的说明,请参阅 Logging in to the AWS CloudFormation Console

  2. Choose a template 部分中,选择 Select a sample template,然后从下拉列表中选择 CloudFormer

  3. 单击 Next 指定堆栈名称和输入参数。

  4. Name 字段中为 CloudFormer 堆栈指定名称。

  5. Parameters 部分,键入用来登录 CloudFormer 的密码和用户名,然后单击 Next

    重要

    您不能在密码中使用特殊字符(例如 ; & ! " £ $ % ^ ( ) / \),也不能将密码留空。

  6. 单击 Next (下一步)

    对于 CloudFormer,您无需指定任何其他选项。

  7. 核查有关堆栈的信息并选择 I acknowledge that this template may create IAM resources

  8. 核查完堆栈信息后,单击 Create 开始创建 CloudFormer 堆栈。

    CloudFormer 是一个 AWS CloudFormation 堆栈,因此必须完成正常的堆栈创建过程,这需要几分钟。

步骤 2:启动 CloudFormer 堆栈

CloudFormer 堆栈的状态变为 CREATE_COMPLETE 后,您就可以启动堆栈。

启动 CloudFormer 堆栈

  1. 在 AWS CloudFormation 控制台中单击 CloudFormer 堆栈的条目,然后选择堆栈信息窗格中的“Outputs”选项卡。

  2. Value 列中,单击相应的 URL 以启动 CloudFormer 工具。

  3. 键入在创建 CloudFormer 堆栈时指定的用户名和密码。

登录 CloudFormer 后,浏览器显示该工具的首页,您可以按照下一节的说明,在该页面中创建模板。

 CloudFormer 工具

注意

CloudFormer 堆栈启动一个 t2.medium Amazon EC2 实例。您将在本演练的结尾创建模板之后删除此堆栈。

CloudFormer 堆栈在创建后将会添加到您的账户中的堆栈集合。要创建其他模板,只需要重新启动 CloudFormer 堆栈。

步骤 3:使用 CloudFormer 创建模板

在开始使用 CloudFormer 创建模板之前,请先确保您的账户包含您希望纳入模板的所有 AWS 资源。该演练假设您的账户包含:

  • 一个 Amazon EC2 实例 (AWS::EC2::Instance)。

  • 一个 Amazon EC2 安全组 (AWS::EC2::SecurityGroup)。您应该将该安全组与实例关联起来。

  • 一个弹性 IP 地址 (AWS::EC2::EIP)。您应该将该地址与实例关联起来。

使用 CloudFormer 通过 AWS 资源创建模板

  1. Select the AWS Region 下,从列表中选择模板的区域,然后单击 Create Template。该工具必须先分析您的账户,因此可能要在几分钟后才能显示 Intro 页面。

  2. Intro 页面,输入对您的模板的描述。

    请注意,您可以使用此页面通过筛选条件选择资源,或者选择您账户中的所有资源。但是,本演练将手动指定资源,因此请将 Resource Name Filter 字段留空,清除 Select all resources in your account 复选框,然后单击 Continue

  3. 后续页面针对本演练中未使用的资源,因此只需查看以供日后参考,然后单击“Continue”。按顺序分别为:

    1. DNS Names”页面,允许您包含 Route 53 记录。

    2. Virtual Private Clouds”页面,允许您包含 Amazon VPCs。

    3. Virtual Private Cloud Network Topologies”页面,允许您包含 Amazon VPC 子网、网关、DHCP 配置和 VPN 连接。

    4. Virtual Private Cloud Security Configuration”页面,允许您包含 ACLS 和路由表。

  4. Network Resources”页面,允许您包含 Elastic Load Balancing 负载均衡器、弹性 IP 地址、CloudFront 分配和 Amazon EC2 网络接口。选择要包含在模板中的弹性 IP 地址,然后单击 Continue

  5. Compute Resources”页面允许您包含 Auto Scaling 组和 Amazon EC2 实例。在您开始创建模板之前,请将一个弹性 IP 地址与您的 Amazon EC2 实例关联,以创建一个关联资源。当您到达“Compute Resources”页面时,CloudFormer 将自动选择关联资源,因此只需确保您的实例已被选定,然后单击“Continue”即可。

    注意

    您可以根据需要手动包含额外实例。如果您不希望包含自动选定的实例,只需清除复选框。

  6. 后续页面针对本演练中未使用的资源,因此只需查看以供日后参考,然后单击“Continue”。按顺序分别为:

    1. Storage”页面,允许您包含 Amazon EBS 卷、Amazon RDS 实例、DynamoDB 表和 Amazon S3 存储段。

    2. Application Services”页面,允许您包含 ElastiCache 群集、Amazon SQS 队列、Amazon SimpleDB 域和 Amazon SNS 主题。

      System Configuration”页面,允许您包含 Auto Scaling 启动配置、Amazon RDS 子网组、ElastiCache 参数组和 Amazon RDS 参数组。

  7. Security Groups”页面允许您包含安全组。在您开始创建模板之前,请将一个 Amazon EC2 安全组与您的 Amazon EC2 实例关联,创建一个关联资源。当您到达“Security Groups”页面时,CloudFormer 将自动选择关联安全组,因此只需确保您的组已被选定,然后单击“Continue”即可。

    注意

    您可以在适当时手动包含其他安全组,包括 Amazon EC2 安全组、Amazon RDS 安全组等等。如果您不希望包含手动选定的安全组,只需清除复选框。

  8. Operational Resources”页面允许您包含 Auto Scaling 策略和 CloudWatch 警报。本演练不需要执行以上任何一项操作,只需单击“Continue”。

  9. Summary”页面有多项用途:

    • 它允许您审查添加到模板中的资源。

      要修改您的资源,请单击“Back”以返回至适当的页面,然后根据需要修改您的选择。

    • 它允许您更改自动生成并分配给您的资源的逻辑名称。

      要修改逻辑名称,请单击“Modify”,然后在“Logical Name”字段中输入相应的名称。

    • 它允许您指定提供必要信息(如站点的 IP 地址或 URL)的输出。

      要修改输出,请单击“Modify”,然后从列表中选择适当的输出。

    检查已选定的资源并进行必要的更改。您应该具有一个弹性 IP 地址、一个 Amazon EC2 实例和一个 Amazon EC2 安全组。如果您对资源感到满意,请单击“Continue”以生成模板。

  10. 此时,“AWS CloudFormation Template”页将显示生成的模板。您可以使用该模板将资源部署为 AWS CloudFormation 组合集,或者将其用作进行进一步更改的基本模板。

    注意

    除了明确指定的资源外,模板还包括这些资源的关联值,如 Amazon EC2 实例的可用区。

    S3 Bucket 列表中选择一个 Amazon S3 存储桶,单击 Save Template 以将模板保存到该存储桶中,然后将它添加到您的账户中的堆栈集合。

    Save Template”为您提供了两个选项:

    • Launch Stack”可将模板保存到指定的 Amazon S3 存储段,同时立即启动堆栈。

    • Create Template”仅将模板保存到指定的 Amazon S3 存储段中。

      稍后,您可以像启动其他模板一样启动该堆栈,例如,使用 AWS CloudFormation 控制台启动。

步骤 4:删除 CloudFormer 堆栈

您有了模板,就不再需要 CloudFormer 堆栈了。为了避免您的账户产生不必要的费用,请在 AWS CloudFormation 控制台中选择该堆栈,然后选择 Actions > Delete Stack