[小ネタ]ALBとACMの紐付け周りで地味にハマりかけた話

2018.08.31

月末は、次の月に向けて色々な物の棚卸しをする事が多くなりますよね。 私の中ではそういう固定概念があるのですがどうでしょうか。そんな事よりも平成最後の夏が終わってしまいますが皆さんいかがお過ごしでしょうか。 ▲ギリギリ一回、近所のお祭りに行けたくらいだなーと夏を惜しんでいる時の表情。多分。

若干支離滅裂な思考・発言から始まってしまい誠に申し訳ございません。AWS事業本部のしろたです。 何となくブログの下書きを見た所、塩漬けになっていた小ネタを見つけました。 久々に見たらすっかり忘れそうになっていたので、自分の勉強エビデンスの為にも改めてここに棚卸ししておこうと思います。

ちょっぴりハマったALB周りの話

今回棚卸しする小ネタはこちらです。実際の経緯に添いながらつらつらとお話しして行きたいと思います。

ACMの紐付けを変更し、元のACM設定を削除しようとした

以前にもACM周りの話はエントリにしたのですが、丁度その頃の話になります。 検証方法が異なるACMを付け替えようと、コンソール上でALBの設定を弄る事にしました。

[Listeners]タブ内の[View/edit certificates]を選択して、ACMの追加/削除を行う事でACMを付け替えようと考えました。

[+]を選択して、ACMの設定の追加を行います。下の一覧から、今回追加したいACMのチェックボックスにチェックを入れて、[Add]をクリックしました。 さて、付け替えたいACMの設定を追加したので、後は今使っているACMの設定を削除してしまいましょう。

[-]を選択して、削除したいACMのチェックボックスにチェックを入れたいのですが、入れられません。 何でも、はじめに設定したACMの設定がデフォルトのACMの設定となっており、使用中だよと言われてしまって削除出来なくなっていました。

ALBでHTTPSリスナーを作成した時を思い返してみる

詰まった時は、自分が今まで行った手順の軌跡を振り返るのが一番です。その中の何処かに、絶対に今の状態を生み出した行動がある筈なのです。 今、目的のACMが削除出来なかったのは、このACMがデフォルト設定されているからではないか、と推測出来ます。 そこで、このデフォルトのACMがいつデフォルトのACMになったのかを調べてみる事にしました。 振り返ったり、ホワイトペーパーを読み返したりしていたところ、分かりました。 以下、ALBに関するホワイトペーパーからの引用です。

HTTPS リスナーを作成するには、デフォルトの証明書を指定します。別の証明書を追加することで、リスナーにオプションの証明書リストを作成できます。これによって、ロードバランサーが複数のドメインを同じポートでサポートし、各ドメインに別々の証明書を提供できます。

なるほどHTTPSリスナーの作成時に1つ以上の証明書が必要なので、この段階で確実に登録されている訳ですね。

解決方法

今回は、「今まで使っていたACMは今後使用する予定は無いので、新しいACMの設定を追加したら削除しようと思っていた」という前提の元で、デフォルトのACMの設定を変更する事で前ACMの設定を削除する方法を取る事にします。

[Listeners]タブ内で、デフォルトACM設定を変更したいHTTPSリスナーのチェックボックスにチェックを入れ、左上の[Edit]を選択します。

[Default SSL certificate]の項目から、デフォルト設定されているACMを変更します。 これで、以前デフォルト設定されていたACMは設定が解除され、先程の[View/edit certificates]からACMの設定が削除出来るようになりました。 因みに、デフォルトACMの設定が削除出来ないなら、デフォルト設定されているACMそのものを削除しようとしたらどうなるのだろうと思い、試してみました。 その結果は、ご覧の通り。

▲現行でデフォルト設定中のACMを選択して、いざ削除

 

▲「使っているリソース(ALB)があるから消せないよ」と怒られました

そもそも、不可能でした。AWSって、使用しているリソースは基本注意書きと共に実行させないっていうスタンスですよね。 リソースの状況をきちんと把握していないと、中々環境自体を綺麗さっぱりお掃除する事が出来ないなと改めて考えさせられました。私の部屋みたい

無事、解決しました

そんな訳で、今回は「ALBでデフォルト設定しているACMの設定を弄ってやろうとしたら軽くハマった」お話をしました。 CLBと異なり、証明書の設定が複数可能(複数ドメインの証明書を登録したい時に有用)なALB上だけで起こるハマり方をしたなぁと思います。 こういった小ネタも、もしかしたら同じような経験をした事がある人が世界中の何処かにはいるかもしれないので、どんどん発信していきたいです。

そして、あわよくば何処かの誰かのお役に立てたら……とっても嬉しいです!