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

    Databricks Community Editionを使ってApache Sparkを無料で学ぶ…

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

  2. Amazon Web Services

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

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

  3. Amazon Web Services

    Amazon Redshift ビルド168まとめ

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

  4. Amazon Web Services

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

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

  5. Adobe Analytics

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

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

  6. Amazon Web Services

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

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

最近の記事

  1. モダンデータスタックなワークフローオーケストレーションツール…
  2. Streamlit in Snowflakeによるダッシュボ…
  3. Streamlit in SnowflakeによるStrea…
  4. Streamlitを使った簡単なデータアプリケーション作成ガ…
  5. 生成AI機能を活かしたデータカタログ製品「Secoda」を試…
  1. ブログ

    ベイズとR
  2. Adobe Analytics

    Adobe Analytics Business Practitionerが変わ…
  3. ブログ

    ページ作成ツール"Marketo"を使ってみて。
  4. Google Tag Manager

    GTMでiframe内のクリックイベントを取得したい
  5. Google Tag Manager

    GTMで複数のコンテナに同じ実装をしたい
PAGE TOP