Account Factory for Terraform (AFT) - AWS Control Tower

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Account Factory for Terraform (AFT)

このセクションは、Account Factory for Terraform (AFT) 使用時に直面する可能性のある一般的な問題をトラブルシューティングするのに役立ちます。

一般的な問題

  • AWS リソースクォータの超過

    ロググループが AWS リソースクォータを超えたことを示している場合は、 AWS サポートにお問い合わせください。Account Factory は AWS CodeBuild、、 AWS Organizations、 を含むリソースクォータ AWS のサービス で を使用します AWS Systems Manager。詳細については次を参照してください:

  • Account Factory バージョンが古い

    問題が発生した際、それがバグであることを確かめるには、Account Factory が最新バージョンであることを確認します。詳細については、「Updating the Account Factory version」(Account Factory バージョンの更新)を参照してください。

  • Account Factory ソースコードにローカルな変更が加えられている

    Account Factory は、オープンソースプロジェクトです。AWS Control Tower は Account Factory コアコードをサポートしています。Account Factory コアコードにローカルな変更を加える場合、AWS Control Tower は Account Factory デプロイをベストエフォートベースでのみサポートします。

  • Account Factory ロールのアクセス許可が不十分

    Account Factory では、IAM ロールとポリシーを作成して、発行されたアカウントのデプロイとカスタマイズを管理します。このようなロールまたはポリシーを変更すると、Account Factory パイプラインで特定のアクションを実行できなくなる可能性があります。詳細については、「Required roles」(必要なロール) を参照してください。

  • アカウントリポジトリに情報が正しく入力されていない

    アカウントをプロビジョニングする前に、必ず「デプロイ後の手順」に従ってください。

  • 手動による OU の変更後、ドリフトが検出されなくなる

    注記

    ドリフト検出は、AWS Control Tower で自動的に行われます。ドリフトの解決の詳細については、「Detect and resolve drift in AWS Control Tower」(AWS Control Tower でドリフトを検出して解決する) を参照してください。

    組織単位 (OU) が手動で変更されると、ドリフトが検出されなくなります。これは、イベント駆動型の Account Factory が持つ性質によるものです。アカウントリクエストが送信されるとき、Terraform によって管理されるリソースは Amazon DynamoDB アイテムであり、直接のアカウントではありません。アイテムが変更されると、リクエストはキューに入れられ、AWS Control Tower によって (アカウントの詳細を管理するサービス) を通じて処理されます。OU を手動で変更すると、アカウントリクエストが変更されないため、ドリフトは検出されません。

アカウントのプロビジョニング/登録に関連する問題

  • アカウントリクエスト (メールアドレス/名前) がすでに存在する

    この問題は通常、プロビジョニング中または ConditionalCheckFailedException 発生時に、Service Catalog 製品の障害を引き起こします。

    この問題の詳細情報は、次のいずれかを実行することで確認できます。

    • Terraform または CloudWatch Logs ロググループを確認する。

    • Amazon SNS トピックに発行されたエラー aft-failure-notifications を確認する。

  • 不正な形式のアカウントリクエスト

    アカウントリクエストが期待されるスキーマに従っていることを確認します。例については、GitHub の terraform-aws-control_tower_account_factory を参照してください。

  • AWS Organizations リソースクォータの超過

    アカウントリクエストが AWS Organizations リソースクォータを超えていないことを確認してください。詳細については、AWS 「組織のクォータ」を参照してください。

カスタマイズの呼び出しに関する問題

  • ターゲットアカウントが Account Factory にオンボードされていない

    カスタマイズリクエストに含まれるすべてのアカウントが Account Factory にオンボードされていることを確認します。詳細については、「Update an existing account」(既存のアカウントの更新)を参照してください。

  • カスタマイズリクエストのターゲットとなるアカウントが DynamoDB テーブル aft-request-metadata には存在するが、アカウントリクエストリポジトリに存在しない

    次のいずれかを実行して、問題のあるアカウントを除外するようにカスタマイズ呼び出しリクエストを書式設定します。

    • DynamoDB テーブル aft-request-metadata で、アカウントリクエストリポジトリに存在しないアカウントを参照するエントリを削除する。

    • 「all」をターゲットとして使用しない。

    • アカウントが属する OU をターゲットにしない。

    • アカウントを直接ターゲットにしない。

  • Terraform Cloud に使用されたトークンが誤っている

    正しいトークンを設定していることを確認します。Terraform Cloud はチームベースのトークンのみをサポートし、組織ベースのトークンをサポートしていません。

  • アカウントカスタマイズパイプラインが作成される前にアカウントを作成できなかった。アカウントをカスタマイズできない

    アカウントリクエストリポジトリのアカウント仕様を変更します。アカウントのタグ値を変更するなどの変更を加えると、パイプラインが存在しない場合でも、Account Factory はパイプラインの作成を試みるパスをたどります。

アカウントカスタマイズのワークフローに関連する問題

アカウントカスタマイズのワークフローに関連する問題が発生した場合は、AFT のバージョンが 1.8.0 以上であることを確認し、DynamoDB リクエストテーブルからアカウント関連のメタデータのインスタンスをすべて削除してください。

AFT バージョン 1.8.0 の詳細については、GitHub の「リリース 1.8.0」を参照してください。

AFT のバージョンを確認および更新する方法については、以下を参照してください。

Amazon CloudWatch Logs Insights クエリを使用して、ターゲットアカウントとカスタマイズリクエスト ID を含むログをフィルタリングすることで、カスタマイズリクエストの追跡とトラブルシューティングを行うこともできます。詳細については、「AFT アカウントカスタマイズリクエストの追跡によるトラブルシューティング」を参照してください。