ELB(AWS)

AWS
この記事は約3分で読めます。
スポンサーリンク

ELBは3種類ありますが、Classic Loadbalancerは選択する理由がほとんどなくなりましたので、ALB/NLBのどちらかを使用することになります。
ロードバランシングルールをL7で設定するか、L4で設定するかで判断することになります。

基本構成

ELBはランダムなDNS名が作成されますので、DNSサーバーでELBに対してCNAMEを設定するのが基本となります。
バランシング設定としては「リスナー」「ターゲット」で設定します。

一般的には、ELBをPublicサブネットに配置し、WebサーバーをPrivateサブネットに配置します。

ヘルスチェック

ELBのターゲットとして指定しているEC2などが正常に動作しているか確認する機能になります。
正常に通信可能なターゲットに対してのみルーティングを行います。

セッション維持

Webアプリとしてはセッションを維持したいという要望が出てくると思います。
Webサービスを使用するにあたり、ユーザー認証を行う場合は処理が終わるまでは同じEC2にルーティングしたいと思います。
セッション維持が不要な場合、アプリケーション側で複数サーバーと認証情報共有が必要となりますのでELBでのセッション維持が必要かどうかは必ず確認するようにしましょう。

送信元IPアドレス取得

Webサーバー側でアクセスログを取得する場合、送信元IPはすべてELBのIPアドレスになります。
実際のクライアントIPアドレスを使用したい場合はX-Forwarded-Forの値を使用します。
NLBの場合は送信元IPアドレスをそのまま転送してくれるので直接利用可能です。

NLBを使用する場合

一般的にはALBを選択することがほとんどです。
NLBを選択する場合としては「ネットワークトラフィックが多い」「固定IPを使用したい」の2パターンになると思います。
ただ、送信元IPアドレスがそのまま転送されるのでセキュリティグループでIPをNLBだけに絞るという運用はできません。
このあたりを考慮しておきましょう。

コメント

タイトルとURLをコピーしました