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

    Direct Connect vs Site to Site VPN

    AWS Direct Connect と Site to Site V…

  2. Amazon Web Services

    パブリックサブネット vs プライベートサブネット

    パブリックサブネット と プライベートサブネットの違いパブリックサ…

  3. Amazon Web Services

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

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

  4. Amazon Web Services

    Pythonを用いたAmazon S3の署名付きURLの発行と、発行時の注意点

    こんにちは、エクスチュアの黒岩と申します。つい最近、AWSア…

  5. Amazon Web Services

    IAM (Identity and Access Management) を理解する

    IAMとは「ユーザーに対してAWSのアクセスを制御する仕組み」のこ…

  6. Amazon Web Services

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

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

最近の記事

  1. LangChainのソースコードから実装を見てみる(Chat…
  2. Tableau×Teams連携
  3. AIを使ったマーケティングゲームを作ってみた
  4. Snowflakeや最新データ基盤が広義のマーケティングにも…
  5. 回帰分析はかく語りき Part3 ロジスティック回帰
  1. Google Apps Script(GAS)

    GoogleスプレッドシートのデータをGASで整理する【getRange編】
  2. 海外カンファレンス

    Adobe Summit 1日目
  3. RevOps

    Snowflakeや最新データ基盤が広義のマーケティングにもたらす価値 in 2…
  4. ブログ

    FABフレームワークで「缶コーヒー」をビジネスマンに売る
  5. Adobe Experience Cloud

    Adobe Summit 2020レポート: 5 Marketing Trend…
PAGE TOP