[小ネタ] マネジメントコンソールでALBと一緒につくったGlobal AcceleratorはALBを削除しても残るので注意しよう

ALB作成時にチェックボックスを有効化するだけでGlobal Acceleratorも一緒に作成可能です。ですが削除のタイミングは異なります。Acceleratorを削除し忘れてしまうと$0.6/日の利用料金が発生してしまうので注意しましょう。
2021.08.06

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

清水です。AWSマネジメントコンソールでALB作成時にGlobal Acceleratorを一緒に作成することが可能です。ALBのIPアドレスの固定化などに利用できます。しかしこのALBと一緒につくったGlobal Accelerator、ALBを削除しても一緒には消えてくれません。このことに気がつかないまま、使用されていないAcceleratorでAWS利用費を発生させたままになってしまっていました。反省も込めてブログにまとめておきたいと思います。

マネジメントコンソールからALBにアタッチするAcceleratorが簡単に作成できる

AWS Global Accelerator、AWSのグローバルネットワークを活用してアプリケーションの可用性やパフォーマンスを向上させることができるサービスです。2つのグローバルな静的パブリックIPアドレスが提供されることから、ALB (Application Load Balancer)に固定IPアドレスでアクセスするというユースケースでも利用可能です。

そんなユースケースを考慮してかどうかは定かではありませんが、AWSマネジメントコンソールからALBを作成する際、オプションとしてAcceleratorの利用を選択できます。Global Acceleratorのマネジメントコンソールに移動しなくても、EC2のマネジメントコンソール、ロードバランサの項目から簡単にAccleeratorの作成が可能です。

実際に作成してみましょう。マネジメントコンソールでELB作成ウィザードに進み、ALBを選択します。「手順1: ロードバランサーの設定」でアドオンサービスのAWS Global Acceleratorのチェックボックスを有効にし、Accelerator名を入力します。

そのまま手順を進め、「手順6: 確認」で内容を確認したら[作成]ボタンでALBを作成します。

この操作(チェックボックスを有効にして、Accelerator名を入力)のみでGlobal Acceleratorも一緒に作成されます。お手軽ですね!

作成したAcceleratorリソースはALBの「統合サービス」タグで確認ができます。

「Accelerator名」のリンク部分よりGlobal Acceleratorのマネジメントコンソールに遷移可能ですが、固定IPアドレスでのALBの利用だけならマネジメントコンソールのロードバランサの項目だけ完結できてしまいそうです。

マネジメントコンソールからALBを削除してもアタッチされているAcceleratorは残ったまま

さて、上記のようにマネジメントコンソールで作成したALBとAcceleratorについて、利用が終わったので削除するとしましょう。作成のときと同様に、マネジメントコンソールのロードバランサの項目から削除を行います。

この作業でALB自体は削除されます。しかし、ELB作成ウィザード内で一緒に作成したAcceleratorについては 削除されません! マネジメントコンソールのロードバランサの項目では該当ALBが既に削除されておりリソースを確認できないため、Global Acceleratorのマネジメントコンソールに移動して確認してみます。

Acceleratorが残っていますね。ListenersからEndpoint groupと辿っていくと、紐づいていた(今はなき)ALBが確認できます。(リンクをクリックしても、当然ながらALBは残っていませんが。)

ということで、マネジメントコンソールからALBを削除しても、一緒に作成したAcceleratorは削除されず残ったままとなります。このままAcceleratorを削除し忘れると、Acceleratorの固定料金($0.025/時間、$0.6/日)が発生するので注意しましょう。

まとめ

EC2のマネジメントコンソールからELB作成ウィザードでALBと一緒に作成したGlobal Acceleratorが、同マネジメントコンソールからALBを削除しても残り続けていることを確認しました。ALBと一緒に削除してしまうと、例えば固定IPアドレスは保持しつつ別の(新しく作り直した)ALBに関連付けたい、といったユースケースに対応できないため、このような挙動なのかな、などと思いました。またよく考えてみると、ALBの作成ウィザードで一緒に作成できるTarget Groupなども挙動は同じ(ALBを削除しても、Target Groupは残る)ですね。そのため、「ALBと一緒につくったAccelerator、残っているかな?」と予想はしやすいかと思いますが、利用料金が発生するサービスであることなどからも注意しておきましょう。一番は作成されるリソースをきちんと理解し、削除時も同様に各リソースが削除されているかを確認することかと思います。