翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Terraform 用の AWS Control Tower Account Factory をデプロイする (AFT)
このセクションでは、既存の環境で Account Factory for Terraform (AFT) をセットアップする AWS Control Tower 環境の管理者を対象としています。ここでは、新しい専用AFT管理アカウントを使用して Account Factory for Terraform (AFT) 環境を設定する方法について説明します。
注記
Terraform モジュールは をデプロイしますAFT。このモジュールは のAFTリポジトリ
AFT リポジトリのクローンを作成する GitHub 代わりに、 のAFTモジュールを参照することをお勧めします。これにより、モジュールが利用可能になったときにその更新を管理して使用することができます。
AWS Control Tower Account Factory for Terraform (AFT) 機能の最新リリースの詳細については、この GitHub リポジトリのリリースファイル
デプロイの前提条件
AFT 環境を設定して起動する前に、次のものが必要です。
-
AWS Control Tower ランディングゾーン。詳細については、AWS「Control Tower ランディングゾーンの計画」を参照してください。
-
AWS Control Tower ランディングゾーンのホームリージョン。詳細については、AWS「Control Tower の AWS リージョン 仕組み」を参照してください。
-
Terraform のバージョンとディストリビューション。詳細については、「Terraform とAFTバージョン」を参照してください。
-
コードやその他のファイルに対する変更を追跡および管理するためのVCSプロバイダー。デフォルトでは、 は AFTを使用します AWS CodeCommit。詳細については、「 ユーザーガイド」の「 とは AWS CodeCommitAWS CodeCommit 」を参照してください。
AFT 初めてデプロイする場合、既存の CodeCommitリポジトリがない場合は、 GitHub や などの外部VCSプロバイダーを選択する必要があります BitBucket。詳細については、「 でのソースコードのバージョン管理の代替方法AFT」を参照してください。
-
をインストールする Terraform モジュールを実行できるランタイム環境AFT。
-
AFT 機能オプション。詳細については、「機能オプションを有効にする」を参照してください。
AWS Control Tower Account Factory for Terraform を設定して起動する
以下の手順は、Terraform のワークフローに精通していることを前提としています。デプロイの詳細については、 AWS Workshop Studio ウェブサイトのラボ入門AFT
ステップ 1: AWS Control Tower ランディングゾーンを起動する
AWS 「Control Tower の開始方法」の
注記
AdministratorAccess 認証情報を持つ AWS Control Tower 管理アカウントのロールを必ず作成してください。詳細については、次を参照してください。
-
AWS Identity and Access Management ユーザーガイドIAMの ID (ユーザー、ユーザーグループ、ロール)
-
AdministratorAccess AWS 「 マネージドポリシーリファレンスガイド」の「」
ステップ 2: 用の新しい組織単位を作成する AFT (推奨)
AWS 組織内に別の OU を作成することをお勧めします。ここでAFT管理アカウントをデプロイします。AWS Control Tower 管理アカウントを使用して新しい OU を作成します。詳細については、「新しい OU を作成する」を参照してください。
ステップ 3: AFT管理アカウントをプロビジョニングする
AFT では、AFT管理オペレーション専用の AWS アカウントをプロビジョニングする必要があります。AWS Control Tower ランディングゾーンに関連付けられている AWS Control Tower 管理アカウントは、AFT管理アカウントを提供します。詳細については、AWS Service Catalog 「Account Factory でアカウントをプロビジョニングする」を参照してください。
注記
用に別の OU を作成した場合はAFT、AFT管理アカウントを作成するときに必ずこの OU を選択してください。
AFT 管理アカウントを完全にプロビジョニングするには、最大 30 分かかる場合があります。
ステップ 4: Terraform 環境がデプロイに使用可能であることを検証する
このステップは、Terraform の使用経験があり、Terraform を実行するための手順を適切に行っていることを前提としています。詳細については、 HashiCorp デベロッパーウェブサイトの「 コマンド: init
注記
AFT は Terraform バージョン 1.6.0
以降をサポートしています。
ステップ 5: Account Factory for Terraform モジュールを呼び出してデプロイする AFT
AdministratorAccess 認証情報を持つ AWS Control Tower 管理アカウント用に作成したロールを使用してAFTモジュールを呼び出します。AWS Control Tower はAWS、Control Tower 管理アカウントを介して Terraform モジュールをプロビジョニングします。これにより、Control Tower Account Factory AWS リクエストをオーケストレーションするために必要なすべてのインフラストラクチャが確立されます。
のAFTリポジトリ
AFT モジュールには、AWSControl Tower が中央AFT管理アカウントの仮想プライベートクラウド (VPC) 内にアカウントリソースをプロビジョニングするかどうかを指定するaft_enable_vpc
パラメータが含まれています。デフォルトでは、 パラメータは に設定されていますtrue
。このパラメータを に設定するとfalse
、AWSControl Tower はNATゲートウェイやVPCエンドポイントなどの VPCおよびプライベートネットワークリソースを使用AFTせずにデプロイします。一部の使用パターンでは、 を無効にすると AFTの運用コストを削減できるaft_enable_vpc
場合があります。
注記
aft_enable_vpc
パラメータを再度有効にする (値を から false
に切り替えるtrue
) には、terraform apply
コマンドを 2 回連続して実行する必要がある場合があります。
環境に Terraform を管理するために確立されたパイプラインがある場合は、AFTモジュールを既存のワークフローに統合できます。それ以外の場合は、必要な認証情報で認証された環境からAFTモジュールを実行します。
タイムアウトするとデプロイが失敗します。 AWS Security Token Service (STS) 認証情報を使用して、完全なデプロイに十分なタイムアウトを確保することをお勧めします。 AWS STS 認証情報の最小タイムアウトは 60 分です。詳細については、「 AWS Identity and Access Management ユーザーガイド」の「 での一時的なセキュリティ認証情報IAM」を参照してください。
注記
Terraform モジュールを使用したデプロイAFTが完了するまで最大 30 分かかる場合があります。
ステップ 6: Terraform 状態ファイルを管理する
Terraform 状態ファイルは、 をデプロイするときに生成されますAFT。このアーティファクトは、Terraform が作成したリソースの状態を記述します。AFT バージョンを更新する場合は、必ず Terraform 状態ファイルを事前に作成するか、Amazon S3 と DynamoDB を使用して Terraform バックエンドを設定します。AFT モジュールはバックエンドの Terraform 状態を管理しません。
注記
Terraform 状態ファイルを保護するのはユーザーの責任です。一部の入力変数には、プライベートの ssh
キーまたは Terraform トークンなどの機密値が含まれる場合があります。デプロイ方法によって、これらの値は Terraform 状態ファイルにプレーンテキストとして表示されることがあります。詳細については、 HashiCorp ウェブサイトの「 状態の機密データ