0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Control Towerを再登録しようとしたら'AWSServiceRoleForAWSControlTower' has a conflictと表示されて詰みかけた話

Last updated at Posted at 2025-05-13

はじめに

1年ほど前にお遊びでControl Towerを有効化しましたが、諸々の課金を抑えるために撤退してしまいました。仕事で使いそうな感じがしてきたので練習がてら個人環境で構築してみるかと思い立ちいざ構築を開始。
すると、大半の設定は完了したものの、'AWSServiceRoleForAWSControlTower' has a conflictというエラーがあちこちのAWSアカウントを登録する際に頻発してしまいました。解決方法は意外と単純でしたが、備忘ログとして残しておきます。

解決方法(急いでいる人用)

Control Towerを有効にしているアカウントで AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLEのStackSetからエラーとなっているAWSアカウントのスタックを削除することで解消する。

解決に至るまで

失敗している画面

見事にエラーが出まくってます。情報の部分を開くと押すと「AWSControlTowerExecutionはあるか?」、「STSがホームリージョンで無効になってないか?」と聞かれますが、実際はどちらも原因ではないのです。

image.png

OUのページを開くとこのような感じでエラー文が出ておりました。

AWS Control Tower failed to deploy one or more stack set instances: StackSet Id: AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLE:f0272774-fd45-49d7-8944-5d6f5f06b950, Stack instance Id: arn:aws:cloudformation:ap-northeast-1::stack/StackSet-AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLE-95a2c096-22b7-466f-8ee5-039bd996158a/1e275ed0-aaa0-11ee-96d0-06f707923661, Status: INOPERABLE, Status Reason: ResourceLogicalId:ControlTowerServiceRole, ResourceType:AWS::IAM::ServiceLinkedRole, ResourceStatusReason:Resource of type 'AWS::IAM::ServiceLinkedRole' with identifier 'AWSServiceRoleForAWSControlTower' has a conflict. Reason: SLR [AWSServiceRoleForAWSControlTower] is in use by other resources: [[RoleUsageType(Region=ap-northeast-1, Resources=[arn:aws:organizations:::account/o-in4yelf0gu/])]]

ざっくり要約すると「AWSServiceRoleForAWSControlTowerというロールがすでに存在しているのでデプロイできないよ」という意味合いになります。

image.png

では削除しよう

言われた通り削除しようと、子アカウントのIAMのページに遷移し検索を実施したところ、、、

image.png

そうです。そんなロールは元からなかったのです。

じゃあどうする

そうだGeminiに相談だ!と聞いてみるが、特に良い回答はもらえず。挙句の果てには「ちゃんとコピペしてロールを検索してますか?」とちょっと怒られる始末。。。

見えた一筋の光

何度もControl Towerへの登録を試してみると、このロールを作成する「AWSControlTowerBP-BASELINE-SERVICE-LINKED-ROLE」というStackSetの更新がスキップされているような挙動を発見。つまり、OUの再登録をしようとしてもこのStackSetが更新されないことからエラーが出続けていることが判明。
ちなみにStackSetのエラー文も同じようなもの。

image.png

解決方法

いろいろと長くなりましたが、StackSetが更新されずエラー内容を引き継いでしまっているのが原因なので、いったんこのスタックからエラーになっているAWSアカウントのスタックを削除すればエラーは解消。

StackSetからスタックを削除を選択し、
image.png

これまで失敗していたAWSアカウントを入力
image.png

その後、OUを再登録
image.png

すると、今後はこれまでエラーになっていたAWSアカウントへのスタックの作成が成功し
image.png

無事にControl Towerへの登録も完了します。
image.png

おわりに

なぜ、このようなエラーが出てしまったかは分かっていません。Control Towerの再登録が原因かなと思いつつ、エラーになっていないAWSアカウントもあるので何とも言えない感じでした。
AIに聞いてもわからなかったことを解決できるのが気持ちいものになってきたなと思う今日この頃です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?