2
2

More than 1 year has passed since last update.

本記事について

この記事では3回目のANS-C01を受けるにあたって勉強した内容を整理するための記事です。
詳しくはこちらをご覧ください。
今回はELBの記事となります。
主にALBとNLBについて触れます。GLBについては別記事を作成予定です。

ロードバランサ―とは

サーバーの処理を分散させるための装置。
ロードバランサーの英字は「Load Balancer」だが、
Loadは負荷、
Balancerはバランス、を意味する。

リクエスト(ソース)とサーバー(ターゲット)の通信の間にロードバランサを噛ませることでサーバーの負荷分散(ルーティング)を行う役割がある。
AWSマネージドのロードバランサの総称をELB(Elastic Load Balancer)と呼び、具体的には以下4つがある。

  • CLB(Classic LoadBalancer)
  • ALB(Application LoadBalancer)
  • NLB(Network LoadBalancer)
  • GLB(Gateway LoadBalancer)

ANS-C01ではあまりCLBについて触れられないのでALB、NLB、GLBについて記載する。(GLBは別記事で記載予定)

ALBについて

image.png
※公式HPより引用

ALBは OSI7層モデル における、第7層(アプリケーション層)に当たるトラフィックを制御するためのサービス。

ターゲットについて

ALBのターゲットとして利用できるのは以下サービス

  • EC2, Auto Scaling
  • Lambda
  • Fargate
  • EKS
  • ECS
  • IP Address

ルーティング方法について

HTTP等のアプリで使用する情報を元に使用したルーティングルールの設定が可能。
HTTP情報に基づいたルーティングルールは以下のようなものがある。

  • ホストベースルーティング
  • パスベースルーティング
  • クエリ文字列ルーティング
  • HTTPヘッダー
  • HTTPメソッド
  • IPアドレス

各ターゲット事の重み付けも可能

ヘルスチェックについて

ターゲット対象の正常性をおこなうためにHTTP / HTTPSプロトコルを使用してヘルスチェックを行うことが出来る。
ヘルスチェックとしてのリクエストを送信し、HTTPステータスが200となれば正常とみなす。
(ヘルスチェックのリクエスト送信先も指定可能)

ALB独自機能

  • ALBの前にWAF設置可能
  • 認証機能をALBに設定可能。Cognitoはもちろんフェデレーションなどの外部認証も利用可能
  • ALB自体のIPアドレスは動的に変化するため注意
  • セキュリティグループ設定可能

NLBについて

image.png
※公式HPより引用

ALBは OSI7層モデル における、第4層(トランスポート層)に当たるトラフィックを制御するためのサービス。

ターゲットについて

NLBのターゲットとして利用できるのは以下サービス

  • EC2, Auto Scaling
  • Fargate
  • EKS
  • ECS
  • IP Address
  • ALB

ALBと比べると、Lambdaが未対応
しかし、ターゲットとしてALBを指定できるためNLBでALB指定、ALBでLambda指定等でできなくはない。
NLBでALBを指定するケースは ALB使いたい、でもALBのIPアドレスを固定させる必要がある時
詳しくはこちらを参照

ルーティングについて

ALBのような細かなルーティング設定はできない。
その代わり高可用性、高スループット、低レイテンシなルーティングが可能。

ヘルスチェックについて

HTTP / HTTPSプロトコルに加えて、TCPによるヘルスチェックが可能
※ヘルスチェックは自動回復機能なし、送信をやめるだけ。

NLB独自機能

  • NLB自体のIPアドレスを静的に指定可能
  • セキュリティグループ設定不可
  • 送信IPアドレスの保持が可能
    • ターゲットグループまで送信元クライアントのIPアドレス、ポート情報を保持することが出来る。

NLB,ALB共通機能

  • 証明書インストールが可能

    • 対象のリージョンでインストールを行う。(CloudFrontの場合はus-east-1で登録する)
  • ステッキーセッションの設定が可能

  • 設定するサブネットのIPアドレスの空きが8個以上ないと作成不可

    • 最低限/27以上のサブネットでないとALB、NLBを作成できない。
  • NLBに登録されていないが、ターゲットグループには登録されているAZにEC2には、ELBからの通信は行われない。

    • NLBにもアベイラビリティゾーンを追加する必要がある。
2
2
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
2
2