#【AWS ELB(ALB, ELB)の違い】
こちらも選考面接の際に理解が浅いことを痛感しました。
まとまりの悪い記事になりましたが、備忘録として残します。
追記していけたらいいなと思っています。
##ELB
AWSが提供するロードバランサー
受信したアプリケーション、ネットワークトラフィックをEC2インスタンスなど、複数のターゲットに分散させることができる。
##ALB、NLBについて。
ヘルスチェックを利用して、異常なターゲットを検出すると、それらのターゲットに対するトラフィックの送信を中止して、その他残りの正常なターゲットに負荷を分散する。
###ALB
レイヤー7(HTTP/HTTPSリクエストの負荷分散)
クライアントとLBの間のHTTPSターミネーションをサポート。
SGによるアクセス制限が可能。
スティッキーセッションを使って、同一のクライアントからのリクエストを同一のターゲットにルーティング可能。
###NLB
レイヤー4(TCP/UDPトラフィックの負荷分散)
高可用性であり、高スループット(数百万件/秒のリクエスト分散が可能)であり、低レイテンシ。
長時間セッションを維持することが可能。
送信元IPアドレスを保持できる。
固定IPアドレスであり、静的IP、ElasticIPをサポートする。
※SGを関連付けることができない。インターネットからNLBのトラフィックを制限するには、NLBのバックエンドに配置したインスタンスに関連付けるSGによって制御する。
##送信元IPアドレスの保持について。
ALBとNLBで、送信元IPアドレスは異なる。
・ALBは送信元IPアドレスをALBのIPアドレスに書き換える。
・NLBはターゲットグループにインスタンスIDを登録している場合、クライアントの送信元IPアドレスがターゲットまで保持される。これをアプリケーションで使用することで、IPアドレスに応じた処理が実行可能。
##参考
新しいNetwork Load Balancer – 秒間数百万リクエストに簡単にスケーリング
ありがとうございました。
もっと知識を深めたいので、貪欲に学んでいこう。