1
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?

【AWS】削除できなかったインスタンスプロファイルを削除する方法

Posted at

概要

AWS Cloudformationで作成したインスタンスプロファイルがうまく削除できずに残ってしまった場合、どのように削除すればいいのか?という疑問にぶち当たったので、こちらで紹介します。

経緯

EC2テンプレートやインスタンスプロファイルを含むリソースをAWS Cloudformationで作成しました。
インスタンスプロファイルは、IAMロールをEC2インスタンスに関連付けるために使用されるものです。インスタンスプロファイルそのものについては以下の記事で図解がありわかりやすいです。

しかし、EC2が不要となり削除することに。

いざCloudformationからスタックごと削除しようとすると、IAMユーザー権限の問題でインスタンスプロファイルが削除できませんでした。その時は一旦SKIPして、後でインスタンスプロファイルが紐づいたIAMロールを削除してすれば綺麗に消えると思っていたので、そのままSKIPしました。

しかし、該当のスタックからそのIAMロールを削除しようとしたら、以下のエラーになりました。

Resource handler returned message: "Cannot delete entity, must remove roles from instance profile first.

これに関しては、該当のIAMロールを管理コンソールから確認します。

image.png

↑のように、「インスタンスプロファイルのARN」と概要に書いてありますね。
ここを見れば「このIAMロールがインスタンスプロファイルに紐づいているんだな」ということがわかります。
※最初見つからずに「どこに書いてあるの?」と思いましたw

「編集」を押せばインスタンスプロファイルとの切り離しができるのかな?と思いましたが、それはできず。

このロール自体を手動で削除したらIAMロールの削除自体は実行できました。

これでインスタンスプロファイルも一緒に消えたかな...
と思っていたら、まだインスタンスプロファイルは残っているんです。

管理コンソールから確認する場合は、起動テンプレートの「高度な詳細」から選択できるインスタンスプロファイルがプルダウンで表示されるのでそこから残っているかどうか確認できます(後述docのCLIコマンドでも確認可能)。

image.png

使わないのに残っているのは気持ち悪いですよね。
しかし...管理コンソールからはどこを探してもインスタンスプロファイルを削除する方法はありませんでした。

削除する方法

ということで、公式ドキュメントを見るとCLIコマンドで削除ができるとのことです。

ロールと同じ名前でない限り、コンソールを使用してインスタンスプロファイルを削除することはできません。ロールを削除する過程でインスタンスプロファイルを削除する必要があります。ロールを同時に削除することなくインスタンスプロファイルを削除するには、AWS CLI または AWS API を使用する必要があります。詳細については、次のセクションを参照してください。
https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_roles_manage_delete.html

以下のCLIコマンドを使います。
後ろのinstance-profile-nameに、削除したいインスタンスプロファイルの名前を指定してください。

aws iam delete-instance-profile --instance-profile-name instance-profile-name

ようやく削除できた...。
インスタンスプロファイル、管理コンソールでいじれるようにしてくれないかなぁ...

1
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
1
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?