QuickSight の VPC 接続がなかなか削除されないのは IAM ロールの権限の問題だった
コーヒーが好きな emi です。
QuickSight の VPC 接続(VPC Connection)がなかなか削除されなくて困ったので、調査したことと実施内容を記載します。
VPC 接続が削除できない
不要な VPC 接続(VPC Connection)を削除しようとします。

VPC 接続名のリンクを開くとこのようにステータスが表示されます。

削除を選択すると、


「VPC 接続の削除に成功しました」という表示は出るものの、

ステータスは「AVAILABLE」のままです。

編集
削除したい VPC 接続を編集してみます。

設定を確認すると、実行ロールに QuickSight のサービスロールである「aws-quicksight-service-role-v0」が設定されていました。

原因
QuickSight が自動で作成するサービスロールには以下の二つが存在します。
- aws-quicksight-service-role-v0
- aws-quicksight-secretsmanager-role-v0
これらのサービスロールをユーザーが直接編集すると、QuickSight の管理画面で「QuickSight の AWS のサービスへのアクセス」を編集する際にエラーになってしまうことがあります。
私は最初、VPC 接続を作成する際実行ロールとして「aws-quicksight-service-role-v0」を設定したが、VPC 接続がうまくいかない、という事象にぶつかっており、手で「aws-quicksight-service-role-v0」に VPC の編集権限を付けてしまったという経緯がありました。
この時は VPC 接続は作成できたものの、QuickSight の管理画面で「QuickSight の AWS のサービスへのアクセス」を編集しようとしたところエラーになってしまい、以下 re:Post 記事を参考に、サービスロールと、それに付与されている IAM ポリシーを一旦削除して、再度 QuickSight 側で自動作成されるのを待ちました。
そういう経緯で、VPC への権限がない新しいサービスロール「aws-quicksight-service-role-v0」が設定されていたために VPC 接続が削除できなかったのです。

今回は QuickSight が VPC を操作するために別途「quicksight-vpc-role」を作成し、VPC 接続の実行ロールとして設定しました。

「quicksight-vpc-role」に付与する権限は以下ドキュメントやブログを参照ください。
再度削除
再度削除を試みます。

「UNAVAILABLE」に変わりました!

詳細を開くと「DELETING」となっています。

少し待つと「DELETED」になりました。

QuickSight コンソールでVPCの接続の設定 - Amazon QuickSight からの引用ですが、ステータスの意味は以下のようになっています。
| ステータス | 説明 |
|---|---|
| CREATING | ネットワークインターフェイスの作成が進行中です。 |
| AVAILABLE | ネットワークインターフェイスは使用可能です。 |
| CREATION_FAILURE | ネットワークインターフェイスを作成できませんでした。 |
| UPDATING | ネットワークインターフェイスに関連付けられたセキュリティグループが更新されています。 |
| UPDATE_FAILED | ネットワークインターフェイスに関連付けられたセキュリティグループが正常に更新されませんでした。 |
| DELETING | ネットワークインターフェイスを削除しています。 |
| DELETED | ネットワークインターフェイスは削除され、使用できなくなります。 |
| DELETION_FAILED | ネットワークインターフェイスの削除は失敗し、引き続き使用できます。 |
| DELETION_SCHEDULED | このネットワークインターフェイスは削除される予定です。 |
| ATTACHMENT_FAILED_ROLLBACK_FAILED | Elastic Interface はアタッチに失敗し、アカウント内で作成されたElastic Network Interface を削除 QuickSight できませんでした。 |
EC2 コンソールからの確認
EC2 コンソールでネットワークインターフェースを確認すると、まだ「In-use」となっており、削除できないようでした。


まだ、QuickSight 用のセキュリティグループも削除できない状態です。
VPC リソースの削除
VPC 接続を使っているデータソース、データセット、分析、ダッシュボードを削除し、もう一つの VPC 接続も削除しました。

QuickSight で別リージョンの Redshift のデータを可視化する | DevelopersIO で作成したバージニア北部リージョンと東京リージョン間の VPC ピアリング接続も削除しました。


ここまで削除すると、QuiciSight 用のネットワークインターフェース(ENI)も消えてなくなっていました。

VPC の削除も実行できます。

QuickSight 用に準備した東京リージョンの VPC ごと綺麗に削除できました。

以上です。
参考







