为 Terraform 部署 Cont AWS rol Tower Account Factory () AFT - AWS Control Tower

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为 Terraform 部署 Cont AWS rol Tower Account Factory () AFT

本节适用于希望在现有环境中为 Terraform 设置 Account Factory (AFT) 的 Cont AWS rol Tower 环境管理员。它描述了如何使用新的专用AFT管理帐户设置 Account Factory for Terraform (AFT) 环境。

注意

部署一个 Terraform 模块。AFT此模块在上的AFT存储库中可用 GitHub,整个AFT存储库被视为该模块。

我们建议您参考上的AFT模块, GitHub 而不是克隆AFT存储库。这样,您就可以控制和使用可用模块的更新。

有关最新版本的 Cont AWS rol Tower Account Factory for Terraform (AFT) 功能的详细信息,请参阅此 GitHub 存储库的发布文件

部署先决条件

在配置和启动AFT环境之前,必须具备以下条件:

配置并启动适用于 Terraform 的 Cont AWS rol Tower Account Factory

以下步骤假设你熟悉 Terraform 工作流程。您还可以AFT通过参阅 Worksho AWS p Studio 网站上的AFT实验室简介来了解有关部署的更多信息。

第 1 步:启动你的 Cont AWS rol Tower 着陆区

完成 Cont AWSrol Tower 入门中的步骤。在这里,您可以创建AWS控制塔管理帐户并设置AWS控制塔着陆区。

注意

请务必为 Cont AWS rol Tower 管理账户创建一个具有AdministratorAccess凭据的角色。有关更多信息,请参阅下列内容:

步骤 2:为AFT(推荐)创建新的组织单位

我们建议您在 AWS 组织中创建单独的 OU。这是您部署AFT管理账户的地方。使用您的 Cont AWS rol Tower 管理账户创建新的 OU。有关更多信息,请参阅创建新 OU

步骤 3:配置AFT管理账户

AFT要求您配置一个专门用于AFT管理操作的 AWS 帐户。与您的 Cont AWS rol Tower 着陆区关联的 Cont AWS rol Tower 管理账户出售AFT管理账户。有关更多信息,请参阅使用 Account Factory 配置 AWS Service Catalog 账户

注意

如果您为创建了单独的 OUAFT,请务必在创建AFT管理账户时选择此 OU。

完全配置AFT管理账户最多可能需要 30 分钟。

步骤 4:验证 Terraform 环境是否可供部署

此步骤假设你有使用 Terraform 的经验,并且已经准备好了执行 Terraform 的程序。有关更多信息,请参阅 HashiCorp 开发者网站上的 Command: in it。

注意

AFT支持 Terraform 版本1.6.0或更高版本。

第 5 步:调用 Account Factory for Terraform 模块进行部署 AFT

使用您为拥有AdministratorAccess凭据的 Cont AWS rol Tower 管理账户创建的角色调用该AFT模块。AWSControl Tower 通过AWS控制塔管理账户配置 Terraform 模块,该账户建立了编排 Control Tower AWS Account Factory 请求所需的所有基础架构。

您可以在上查看AFT存储库中的AFT模块 GitHub。整个 GitHub 存储库被视为AFT模块。有关运行AFT模块和部署所需的输入的信息,请参阅该README文件AFT。或者,您可以在 Terraform 注册表中查看该AFT模块。

该AFT模块包含一个aft_enable_vpc参数,用于指定 Cont AWS rol Tower 是否在中央AFT管理账户的虚拟私有云 (VPC) 中配置账户资源。默认情况下,该参数设置为true。如果将此参数设置为false,Cont AWS rol Tower 将在不使用VPC和私有网络资源(例如NAT网关或VPC终端节点)AFT的情况下进行部署。禁用aft_enable_vpc可能有助于降低某些使用模式AFT的运营成本。

注意

重新启用aft_enable_vpc参数(将值从切换falsetrue)可能需要您连续运行terraform apply命令两次。

如果您的环境中有用于管理 Terraform 的管道,则可以将该AFT模块集成到现有的工作流程中。否则,请在任何使用所需凭据进行身份验证的环境中运行该AFT模块。

超时会导致部署失败。我们建议使用 AWS Security Token Service (STS) 凭证来确保您的超时时间足以进行完整部署。 AWS STS 证书的最小超时时间为 60 分钟。有关更多信息,请参阅《AWS Identity and Access Management 用户指南》IAM中的临时安全证书

注意

您最多可能需要等待 30 分钟AFT才能完成通过 Terraform 模块的部署。

第 6 步:管理 Terraform 状态文件

部署时会生成一个 Terraform 状态文件。AFT这个构件描述了 Terraform 创建的资源的状态。如果您计划更新AFT版本,请确保保留 Terraform 状态文件,或者使用 Amazon S3 和 DynamoDB 设置 Terraform 后端。该AFT模块不管理后端 Terraform 状态。

注意

你有责任保护 Terraform 状态文件。某些输入变量可能包含敏感值,例如私ssh钥或 Terraform 令牌。根据您的部署方法,这些值可以在 Terraform 状态文件中以纯文本形式查看。有关更多信息,请参阅 HashiCorp 网站上的状态敏感数据