はじめに
ALB を利用する際に設定するポートが複数あるので、それぞれの役割を整理しました。
ロードバランサーのポート
クライアントからロードバランサーへのトラフィックをリッスンするポート番号のこと
- 例 1) ロードバランサーのポートに 80 を設定した場合
ターゲットグループ Basic configuration の ポート
ターゲットのデフォルトのポート番号
ターゲットのポート
※ ターゲットグループ Health checks Advanced health check settings の方が先に設定を行いますが、便宜上先に説明します
ターゲットのポート番号のこと
ターゲットの登録時にポート番号を変更すると、ターゲットグループ Basic configuration の ポートが上書きされて設定したポート番号宛にロードバランサーからリクエストが送られる
- 例 2) ターゲットのポート番号 81 と 82 でそれぞれ ec2 を登録した場合
ターゲットグループ Health checks Advanced health check settings の ポート
- Traffic port
こちらを選択すると、ターゲットのポート番号が使用される。例 2 の設定の場合、ポート番号 81 と 82 に対してそれぞれヘルスチェックが実施される
- Override
ここで設定したポート番号がヘルスチェックに使用される
- 例 3) Port Override 83 とした場合
まとめ
ターゲットグループ Basic configuration の ポート と ターゲットのポート の関係性が分かりづらいため少し混乱すると思う。
デフォルトでは、ロードバランサーはターゲットグループに指定したポートとプロトコルを使用して登録済みターゲットにリクエストを送信します。ターゲットグループに各ターゲットを登録するときに、このポートを上書きできます。
と記載されているように
デフォルトでは、ロードバランサーはターゲットグループ Basic configuration の ポートとプロトコルを使用して登録済みターゲットにリクエストを送信します。ターゲットグループに各ターゲットを登録するときに、ターゲットのポートで上書きできます。
となる。