##概要
エラスティック ロード バランサーの説明
RDS(★)と同じ要領でEC2を複製していた(Webサーバーを複製した)場合に起きる問題
・インターネットゲートウェイのアクセスポイントが分かれてしまう
・サーバーが正常化チェックする問題
・直接Webサーバーにアクセスさせるのはセキュリティ的に良くない。セキュリティに伴う処理の負荷の問題
→ 本来コンテンツを提供する役割のWebサーバーに、通信の複合サーバーリソースの効率的な使い方とはいえない
ELBは複数のAZにリクエストを振り分けることができます。ターゲットグループに登録されているリソースに通信を振り分け、インスタンスID,IPアドレス,Lambda関数を設定できます
##負荷分散
ロードバランサにはDNS名のアクセスポイントが付与される
→ アクセスポイントを一つにし、負荷を分散させる
片方のEC2が忙しそうなら別のEC2に自動でリクエストを流す
##ヘルスチェック
ヘルスチェック機能がある
→ 異常なインスタンスを認識し、通信をストップさせ、正しい動きをしているインスタンスのみに通信を流す(ロードバランサーから切り離すと言われる)
##SSLターミネーション
セキュリティが高いが、暗号化された通信の処理が重い
・ELBに証明書を付与することでSSL通信の終端となる + ELBより先はHTTP通信となる
→ HTTPS通信を複合する処理を担う
→ セキュリティが高いまま、HTTP通信が可能なので処理が軽くなる
##ELBの種類
###ALB
アプリケーション ロード バランサー
HTTPやHTTPSのリクエストの負荷分散に使える
その他特徴
・レイヤー 7 に対応、HTTP/HTTPS リクエストの負荷分散。
・クライアントとロードバランサーの間の HTTPS ターミネーションをサポート。(NLBもリスナーにTLSを選択することで、HTTPSターミネーションが可)
・セキュリティグループによるアクセス制限が可能。
・スティッキーセッションを使って、同一のクライアントからのリクエストを同一のターゲットにルーティングが可能。
###NLB
ネットワーク
TCP,TLS,UDPのトラフィックの負荷分散に使える
###CLB
クラシック
古いタイプのモノ
積極的に使用する必要はない
##主な構成
###ELBのみパブリックサブネットに配置
それ以外をプライベートサブネットに配置することが多い
※メンテナンス時はメンテナンス用のEC2を用意してそこからメンテナンスをする踏み台サーバーを準備するケースがある
###3階層アーキテクチャ
ELB作成時に内部向けか、外部向けか選択することができる
外部接続時はALB、内部の接続時はNLBを使用するのが良い
##参考
この記事はAWS初学者を導く体系的な動画学習サービス
「AWS CloudTech」の課題カリキュラムで作成しました。
https://aws-cloud-tech.com