🗼

AWS Control Tower を有効化するときに躓いた話

2023/10/25に公開

About

Control Tower を有効化するときに躓いたポイントの備忘

とりあえず大事なことは、 ここ に書いてある。
やばそうだったらサポートチケット切る。

発生したエラーたち

  • AWS Control Tower failed to deploys stack(s)
  • No launch paths found for resource: prod-xxxxxxxxxxx

AWS Control Tower failed to deploys stack(s)

実際のエラーメッセージは以下。

AWS Control Tower failed to deploy stack(s):arn:aws:cloudformation:ap-northeast-1:xxxxxxxxxxxx:stack/ControlTowerBP-BASELINE-CLOUDTRAIL-MASTER/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. To continue, review the failed stack(s) and try again.

CLOUDTRAIl-MASTERのstackをデプロイする途中でコケているらしい。
当該のStackは CloudFormation > Stacks から確認できる。
アクセスすると、より詳細なエラーメッセージが表示されている。

今回のエラーの根本原因としては、ControllTowerでKMSを利用するよう設定したにも関わらず、当該のKeyのアクセス権限設定を行っていなかったためであった。

同様の症状が公式問い合わせサイト(repost)で報告されていたので、提示されていた以下の解決策で解決した。

  1. KMSのアクセス権限を再設定(参考:公式ドキュメント
  2. エラーを吐いているStackを削除
  3. Control Tower を再度有効化

No launch paths found for resource: prod-xxxxxxxxxxx

Control Towerの有効化が完了したのち、いざAccountFactoryでアカウント発行をしようとしたところ、以下のエラーが発生した。

No launch paths found for resource: prod-xxxxxxxxxxx

公式によると、このエラーが出現する理由として、

  • ルートアカウントでログインしている時
  • IAM Identity Centerのユーザーのアクセス許可グループが適切でない時
  • IAMユーザーとしてログインしている時
  • AWS Control Towerでドリフトがある時

などがあるらしい。
今回は、3つめの「IAMユーザーとしてログイン」が原因。 AWS Service Catalogにアクセスし、ポートフォリオ > AWS Control Tower Account Factory Portfolio を選択。 このポートフォリオへのアクセス権が、ログインしている自分のIAMユーザーには付与されていなかった。 アクセス タブから、自分のIAMユーザーを追加したら、無事にアカウント発行ができた。

参考

Discussion