アーキテクチャの概要
CfCT をデプロイすると、Amazon S3 バケットを設定ソースとして使用し、AWS クラウドに次の環境が構築されます。
CfCT には、AWS Control Tower の管理アカウントにデプロイする AWS CloudFormation テンプレートが含まれます。このテンプレートはワークフローを構築するために必要なすべてのコンポーネントを起動するため、AWS Control Tower のランディングゾーンをカスタマイズできます。
注意
CfCT は AWS Control Tower のホームリージョンと AWS Control Tower 管理アカウントにデプロイする必要があります。これは、AWS Control Tower のランディングゾーンがデプロイされる場所であるためです。AWS Control Tower のランディングゾーンの設定については、「AWS Control Tower の使用開始方法」を参照してください。
CfCT をデプロイすると、Amazon Simple Storage Service
注記
デフォルトでは、CfCT はパイプラインソースを格納するために Amazon S3 バケットを作成します。既存の AWS CodeCommit リポジトリがある場合は、場所を CodeCommit
CfCT は次の 2 つのワークフローをデプロイします。
-
AWS CodePipeline
ワークフロー -
AWS Control Tower ライフサイクルイベントワークフロー
AWS CodePipeline ワークフロー
AWS CodePipeline ワークフローは、AWS CodePipeline、AWS CodeBuild
設定パッケージをアップロードすると、CfCT はコードパイプラインを呼び出して 3 つのステージを実行します。
-
構築ステージ — AWS CodeBuild を使用して設定パッケージの内容を検証します。
-
SCP ステージ — サービスコントロールポリシーステートマシンを呼び出し、AWS Organizations API を呼び出して SCP を作成します。
-
AWS CloudFormation ステージ — スタックセットステートマシンを呼び出して、マニフェストファイルで指定したアカウントまたは OU のリストで指定されたリソースをデプロイします。
各段階で、コードパイプラインはスタックセットおよび SCP ステップ関数を呼び出します。これにより、カスタムスタックセットと SCP がターゲットとなる個々のアカウントまたは組織単位全体にデプロイされます。
注意
設定パッケージのカスタマイズの詳細については、「CfCT カスタマイズガイド」を参照してください。
AWS Control Tower ライフサイクルイベントワークフロー
AWS Control Tower で新しいアカウントが作成されると、ライフサイクルイベントによって AWS CodePipeline ワークフローが呼び出されます。このワークフローを使用して、設定パッケージをカスタマイズできます。このパッケージは、Amazon EventBridge
Amazon EventBridge イベントルールが一致するライフサイクルイベントを検出すると、イベントが Amazon SQS FIFO キューに渡され、AWS Lambda 関数が実行され、コードパイプラインが呼び出されて、スタックセットと SCP のダウンストリームデプロイメントを実行します。