翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ステートファイルが失われた後、 AWS Account Factory for Terraform (AFT) リソースを安全にクリーンアップする
Gokendra Malviya、Amazon Web Services
概要
AWS Account Factory for Terraform (AFT) を使用して AWS Control Tower 環境を管理すると、AFT は Terraform 状態ファイルを生成して、Terraform によって作成されたリソースの状態と設定を追跡します。Terraform 状態ファイルを紛失すると、リソース管理とクリーンアップに大きな課題が生じる可能性があります。このパターンは、 AWS Control Tower 環境の整合性を維持しながら、AFT 関連のリソースを安全に識別および削除する体系的なアプローチを提供します。
このプロセスは、元の状態ファイル参照がない場合でも、すべての AFT コンポーネントを適切に削除できるように設計されています。このプロセスは、 AWS Control Tower オペレーションの中断を最小限に抑えるために、環境で AFT を正常に再確立および再設定するための明確な道筋を提供します。
AFT の詳細については、 AWS Control Tower ドキュメントを参照してください。
前提条件と制限
前提条件
AFT アーキテクチャの詳細な理解。
次のアカウントへの管理者アクセス:
AFT 管理アカウント
AWS Control Tower 管理アカウント
ログアーカイブアカウント
監査アカウント
AFT 関連のリソースの削除をブロックする制限または制限を含むサービスコントロールポリシー (SCPs) がないことを確認します。
制約事項
このプロセスではリソースを効果的にクリーンアップできますが、失われた状態ファイルを復元することはできません。また、一部のリソースでは手動で識別する必要がある場合があります。
クリーンアッププロセスの期間は、環境の複雑さによって異なり、数時間かかる場合があります。
このパターンは AFT バージョン 1.12.2 でテストされており、次のリソースを削除します。別のバージョンの AFT を使用している場合は、追加のリソースを削除する必要がある場合があります。
サービス名
リソースの数
AWS CodeBuild
6
AWS CodeCommit
4
AWS CodePipeline
4
Amazon DynamoDB
5
Amazon Elastic Compute Cloud (Amazon EC2)
16
Amazon EventBridge
4
AWS Identity and Access Management (IAM) ロール
40
AWS Key Management Service (AWS KMS)
2
AWS Lambda
17
Amazon Simple Storage Service (Amazon S3)
2
Amazon Simple Notification Service (Amazon SNS)
2
Amazon Simple Queue Service (Amazon SQS)
2
AWS Systems Manager
62
AWS Step Functions
4
重要
このパターンのステップで削除されたリソースは復元できません。これらのステップを実行する前に、リソース名を慎重に確認し、それらが AFT によって作成されたことを確認してください。
アーキテクチャ
次の図は、AFT コンポーネントと高レベルのワークフローを示しています。AFT は、アカウントのプロビジョニングとカスタマイズに役立つ Terraform パイプラインを設定します AWS Control Tower。AFT は GitOps モデルに従って、アカウントプロビジョニングのプロセスを自動化します AWS Control Tower。アカウントリクエストの Terraform ファイルを作成してリポジトリにコミットすると、アカウントプロビジョニングの AFT ワークフローをトリガーする入力が提供されます。アカウントのプロビジョニングが完了すると、AFT は追加のカスタマイズステップを自動的に実行できます。

このアーキテクチャでは、以下のようになります。
AWS Control Tower 管理アカウントは AWS アカウント 、 AWS Control Tower サービス専用の です。これは通常、AWS 支払者アカウントまたはAWS Organizations 管理アカウントとも呼ばれます。
AFT 管理アカウントは AWS アカウント 、AFT 管理オペレーション専用の です。これは、組織の管理アカウントとは異なります。
販売済みアカウントは、選択したすべてのベースラインコンポーネントとコントロール AWS アカウント を含む です。AFT は AWS Control Tower を使用して新しいアカウントを提供します。
このアーキテクチャの詳細については、 AWS Control Tower ワークショップの「AFT の概要
ツール
AWS のサービス
AWS Control Tower は、規範的なベストプラクティスに従って、 AWS マルチアカウント環境のセットアップと管理に役立ちます。
AWS Account Factory for Terraform (AFT) は、アカウントとリソースのプロビジョニングとカスタマイズに役立つ Terraform パイプラインを設定します AWS Control Tower。
AWS Organizations は、 AWS リソースの拡大とスケーリングに合わせて環境を一元管理および管理するのに役立ちます。Organizations を使用すると、アカウントを作成してリソースを割り当てたり、アカウントをグループ化してワークフローを整理したり、ガバナンスのポリシーを適用したり、すべてのアカウントに単一の支払い方法を使用して請求を簡素化したりできます。
AWS Identity and Access Management (IAM) は、リソースの使用を認証および認可されたユーザーを制御することで、 AWS リソースへのアクセスを安全に管理できます。このパターンには、IAM ロールとアクセス許可が必要です。
その他のツール
「Terraform
」は、HashiCorpのinfrastructure as code (IaC) ツールで、クラウドとオンプレミスのリソースの作成と管理を支援します。
ベストプラクティス
については AWS Control Tower、 AWS Control Tower ドキュメントのAWS Control Tower 「管理者向けのベストプラクティス」を参照してください。
IAM については、IAM ドキュメントの「セキュリティのベストプラクティス」を参照してください。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
AFT タグで識別されるリソースを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
IAM ロールを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
AWS Backup バックアップボールトを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
Amazon CloudWatch リソースを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
AWS KMS リソースを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
S3 バケットを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
IAM ロールを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
IAM ロールを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
IAM ロールを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
EventBridge ルールを削除します。 |
| AWS 管理者、AWS DevOps、DevOps エンジニア |
トラブルシューティング
問題 | ソリューション |
---|---|
インターネットゲートウェイのデタッチに失敗しました。 | AFT タグで識別されるリソースを削除するときに、インターネットゲートウェイをデタッチまたは削除するときにこの問題が発生した場合は、まず VPC エンドポイントを削除する必要があります。
|
指定された CloudWatch クエリが見つかりません。 | AFT によって作成された CloudWatch クエリが見つからない場合は、次の手順に従います。
|
関連リソース
追加情報
CloudWatch Logs Insights ダッシュボードで AFT クエリを表示するには、次のスクリーンショットに示すように、右上隅から保存済みクエリとサンプルクエリのアイコンを選択します。
