Amazon Web Services

ELB (ALB・NLB・CLB) をサクッと学ぶ

ELB(Elastic Load Balancing)とは

3種類のロードバランサー(ALB, NLB, CLB)の総称です。
※ロードバランサーとは「アプリケーションをトラフィック負荷に応じて分散する仕組み」のことです。

EC2インスタンス, コンテナ, IPアドレス, Lambda関数などへのトラフィックを分散し、EC2インスタンスを登録すればすぐに利用することができます。

ALB(Application Load Balancer)

HTTP(S)のトラフィックの負荷を分散し、マイクロサービス(小規模のサービスを組み合わせる構成)やコンテナサービス(ECS)などに、処理を振り分けることができます。(レイヤ7で動作)

NLB(Network Load Balancer)

HTTP(S)以外は基本的にこちらを使います。

NLBでは数百万リクエストといった大規模なトラフィックでも、高速に負荷を分散させることが可能です。(レイヤ4で動作)

CLB(Classic Load Balancer)

旧タイプのロードバランサーです。

EC2-Classicネットワークで構築されたアプリケーションなど、後方互換性のために残されています。(レイヤ4, 7で動作)

ELBの特徴

セキュリティ

・複数AZに分散し高可用性を実現
→ 1つのAZで障害が発生しても、別のAZで処理を続けることができます。
※クロスゾーン負荷分散で、複数AZに対してリクエストを均等に分散することも可能です。

・通信をSSL化 (暗号化 / 復号化)
→ 配下インスタンスの証明書を一元管理することができます。

・セキュリティグループポリシーを適用
→ ELBのみでアクセス制御を行うことも可能です。
※通常WEBへアクセスする場合、サーバーやロードバランサーのIPアドレスを指定する必要がありますが、ELBではエンドポイント(DNS名)を指定してアクセスします。

・モニタリング
→ CloudWatchによる監視, アクセスログをS3で保存, CloudTrailによるAPI監視..etc。

・外部 / 内部 ELB
→ [外部] ELBのみをパブリックサブネットに配置すればよく、EC2インスタンスはプライベートで良いです。
→ [内部] ELBとEC2インスタンスをプライベートサブネットのみで利用できます。

柔軟性

・自動スケーリング機能
→ CPUなどがしきい値を越えた場合、自動でEC2インスタンスを増やすことができます。
※ELB自体は内部で冗長化されています。
※急激なアクセス増加には対応が間に合わない可能性もあるため、CloudFrontでキャッシュを利用するのも手です。

・ヘルスチェック
→ 異常なインスタンスへの振り分けを停止し、正常なもののみに振り分けます。
※復旧すると、停止したインスタンスへの振り分けも再開されます。

・ユーザーのセッションを管理
→ スティッキーセッション機能を用いると、リクエストを特定インスタンスに振り分けることができます。

・不要インスタンスを安全に解除 
→ Connection Drainingを有効にすることで、実行中の処理が完了するまで待機させることが可能です。

 

ピックアップ記事

  1. 最速で理解したい人のためのIT用語集

関連記事

  1. Amazon Web Services

    Amazon Redshift ビルド168まとめ

    この記事はAmazon Redshiftのアップデート情報からどのよう…

  2. Amazon Web Services

    【初心者向け】AWSを学ぶ前に確認したい用語

    【初心者向け】AWSを学ぶ前に確認したい用語クラウド「インター…

  3. Amazon Web Services

    System Managerを利用したVPC内Redshiftへの接続

    Redshiftを構築するにあたって、private subnet内で…

  4. Amazon Web Services

    セキュリティグループ vs ネットワークACL

    セキュリティグループ と ネットワークACL の違いセキュリティグ…

  5. Adobe Analytics

    Adobe Analytics: DWHレポートをAWSのS3バケットに配信する

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  6. Amazon Web Services

    Direct Connect vs Site to Site VPN

    AWS Direct Connect と Site to Site V…

カテゴリ

最近の記事

  1. 進化学に倣う最適化手法「遺伝的アルゴリズム」
  2. dbt_expectationsでデータ品質を向上させよう
  3. BigQueryとSnowflakeのLLM関数を比較してみ…
  4. dbtCloud使ってみた
  5. ChainlitでのOAuth認証にスコープを追加する方法
  1. Adobe Experience Cloud

    Adobe Target: at.jsの「チラつき」を手っ取り早く回避する
  2. IT用語集

    ドキュメント(Document)って何?
  3. Google Analytics 4

    【GA4/GTM】dataLayerを使ってカスタムイベントを発生させてみよう
  4. IT用語集

    グループウェア(Groupware)って何?
  5. IT用語集

    暗号化・共通鍵暗号・公開鍵暗号って何?
PAGE TOP