0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ロードバランサ

あるWebサービスが複数のWebサーバやアプリケーションサーバで構成されている時,リクエスト要求の負荷を分散させること。処理速度の向上・高可用性と耐障害性が見込まれる

ELB(Elastic Load Balancing)

AWSが提供している完全マネージドなロードバランシングサービス。同じ構成のEC2インスタンスを別々のAZに配置することで負荷分散できる。
複数のAZにまたがりシステムを構築することで,AZ障害が発生した場合もシステムを稼働することができる。

1台のEC2がダウンしてもロードバランサは自動的に他のEC2にトラフィックを振り分けエンドユーザはサイトへ問題なくアクセスできる。

証明書アタッチ

ELBに証明書をアタッチすることで通信の暗号化/複号も行う。これをSSLターミネーションという。証明書はACM(AWS Certificate Manager)で作成可能。

外部と内部

ELBには外部向け(External)と内部向け(Internal)がある。どちらもプライベートIPアドレスを通じてターゲットと通信するので,外部向けのWebサーバであってもパブリックIPアドレスを待つ必要はない。

クライアント側のフロントエンド接続とサーバ側のバックエンド接続のコネクションを維持する。アイドルタイムの設定が60秒で設定されており,60秒間通信が無ければELBはコネクションを閉じる。

ヘルスチェック

ロードバランシング先となるターゲットに対してリクエストを送信して死活監視を行う。
ELBが一定の感覚でEC2にリクエストを送信し,チェックの結果正常な状態のEC2のみにリクエストを送信する。
プロトコル,ポート,パスを指定してヘルスチェックができる。
デフォルトだと30秒間隔で80ポートで/index.htmlへアクセスし,2回連続でHTTPコードが200以外のレスポンスが応答したら異常。

ELBのタイプ

ALB(Application Load Balancer)

リバースプロキシ型のロードバランシングサービス。
HTTP,HTTPSプロトコルの7層(アプリケーション層)で負荷分散するロードバランサでWebアプリケーションでよく使われる。リスナーと呼ばれるコンポーネントを作成し,使用するプロトコルとポートを設定してルーティングルールを設定する。

例えばパス単位でターゲットグループ(AZをまたいでインスタンスやコンテナをまとめた仮想的なグループ)を振り分け指定できる。

またAWS CognitoやOIDC IDプロバイダと連携するユーザ認証をサポート。認証が成功すると,ALBによってアクセストークンなどがHTTPヘッダに付与されてリクエスト転送される。

NLB(Network Load Balancer)

TCPやUDPの4層(トランスポート層)で動作。
ALBのようにリスナーやロードバランスされる対象をターゲットグループとして設定。静的なIPアドレスを見るので,ALBのような細かい振り分けはできないが,数百万/秒のリクエストを処理できる。

CLB(Classic Load Balancer)

ALBとNLBがリリースされる前のロードバランサ。現在使用は推奨されていない。

リスナー
トラフィックを受け付けるポートとプロトコルを設定。トラフィックをターゲットグループへルーティングする。

ルール
ターゲットグループ(トラフィックの送信先),条件,優先順位を指定したもの。条件に合致した場合,設定したアクションが実行される。

ターゲットグループ
トラフィックを流す対象(EC2,Lambda,プライベートIPアドレス)。

利用料金

「新規接続数」「アクティブ接続数」などをもとに算定する指標であるLCU(LoadBalancer Capacity Unit)が影響

参考

https://www.youtube.com/watch?v=reJ75v5KPBU&list=PLPzcoMdqG5noLR7rAc552mvPADUmmdSt1&index=4
AWSの基本・仕組み・重要用語が全部わかる教科書

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?