はじめに
ELBでやたらにポート番号が聞かれて少し混乱してしまったので、備忘録的にまとめておきます。
また、今回はこちらの記事を参考にまとめさせてもらいました。
間違えて解釈していることが十分にあるので、随時ご指摘いただけたら非常に嬉しいです!
対象読者
- AWSアカウントを持っている方。
- ELBの使い方があやふやな人。
ELB
前回書いた記事に構築の仕方は書いているので、今回は、それぞれがどの様な設定を行っているかをまとめられたらと思っています。
ELBの仕事
ELBの主な仕事は、以下のチャートで表すことができます。
今回は簡単のため、行先のインスタンスはEC2を1つだけとして考えます。
上のチャートの様に基本的に決めなければいけないポートは
- ELBの外部向けのポート
- 外部からの通信に用いるポート
- ELBの内部向けのポート
- ヘルスチェック時に見るポート
- ターゲットグループが開いているポート
になります。
実際に、 ELBを構築しながら確認していきます。
今回はALBとして考えていきます。
① ELBの外部向けのポート
ここで、ELBの外部に向けポートを決めます。
リスナーとは『データを送信してくる相手』という意味です。
httpは慣例的に80番を使うので、今回もそれに倣って『HTTP』『80』にしておきます。
② 外部からの通信に用いるポート
ここで、『どこからの通信に対して許可をするのか』を決めます。
先ほど行った通り、http通信は慣例的に80番を使うので『カスタムTCP』『80』にしておきます。
###※補足
上の様に、そのインスタンスに対するアクセスを規制するセキュリティグループをインバウンドルールといいます。
その逆に、そのインスタンスのデータ送信を規制することセキュリティグループをアウトバウンドルールといいます。
③ ELBの内部向けのポート
ターゲットグループとはデータを送信する相手のことです。
今回、ターゲットグループであるEC2は3000を開けているとしているので、こちらも『3000』を開けます。
④ ヘルスチェック時に見るポート
ヘルスチェックとは、インスタンスが正常に機能しているかどうかを調べるシステムです。
デフォルトでは、③で決めたポートと同じ行先を見るのですが、今回はわざと明示的に設定します。
⑤ ターゲットグループが開いているポート
ターゲットグループが開いているポートをここで設定します。
デフォルトでは、④と同じポート番号になっています。
まとめ
httpsの時の挙動も今後調べていこうと思います。