AWSの専門用語(ELB:Elastic Load Balancingとは)

※本サイトはアフィリエイト広告を利用しています。
広告

Elastic Load Balancing(ELB)とは

Elastic Load Balancing(ELB)とは、複数のターゲット (EC2インスタンス、コンテナ、IPアドレス等)に自動で負荷分散するロードバランサーのサービスです。

例えば、可用性を向上させたい時にELBを以下の図ようなイメージで使用します。
Webサーバ(EC2インスタンス)を1つのリージョン内(※)のそれぞれの場所(AZ:アベイラビリティゾーン)に構築して、ELBによってそれぞれのWebサーバに通信を振り分けます。
  ※ELBにて複数のリージョンに設置されたサーバへの負荷分散はできません。
複数のアベイラビリティゾーンのサーバに対して負荷分散することをクロスゾーン負荷分散といいます。
一台のWebサーバに障害が発生した場合は、ELBが検知してもう一台のWebサーバにのみ通信を振り分けるので、可用性が高まります。
ELBのネットワーク構成図

ELBから定期的にEC2インスタンスが正常に動作しているか確認して、異常が発生しているEC2インスタンスには通信を振り分けないという機能があります。
その機能のことをヘルスチェックといいます。
ELBの冗長構成におけるEC2インスタンス障害

また、ELBは高可用性のマネージドサービスですので、1つのみでも実際は冗長化されています。
そのため、ELBが単一障害点(single point of failure:SPOF)にはなりません。

Elastic Load Balancingの種類

ELB(Elastic Load Balancing)には様々な種類があります。
OSI参照モデルとロードバランサーの種類を対応付けると以下のようになります。

階層階層名ロードバランサーの種類
7アプリケーション層Application Load Balancer(ALB)
Classic Load Balancer(CLB)
6プレゼンテーション層
5セッション層
4トランスポート層Network Load Balancer(NLB)
Classic Load Balancer(CLB)
3ネットワーク層Gateway Load Balancer(GWLB)
2データリンク層
1物理層


また、各ロードバランサーの概要は以下の通りです。

(1) Application Load Balancer(ALB)
HTTPとHTTPSの通信を負荷分散するロードバランサーです。
Webアプリケーションを振り分ける際に使用します。
URLのパスに基づいてルーティングするパスベースルーティングをすることができます。

(2) Network Load Balancer(NLB)
全てのTCP通信も負荷分散するロードバランサーです。
HTTPとHTTPS以外のTCP通信も振り分ける際に使用します。
ALBより高パフォーマンス処理ができるため、大量のトラフィックを処理する場合は、NLBを選択することを推奨します。

(3) Gateway Load Balancer(GWLB)
GENEVEプロトコルを使用できる仮想アプライアンスを使用するためのロードランサーです。
トレンドマイクロ社やPalo Alto社の製品など様々なネットワークアプライアンスやセキュリティアプライアンスを使用できます。

(4) Classic Load Balancer(CLB)
以前のタイプのロードバランサーです。
以前の構成との互換性のために選択できるようになっていますが、新規構築の場合は基本的に使用しません。

Elastic Load Balancingの機能

ELB(Elastic Load Balancing)では、以下の機能がありますので、必要に応じて設定します。

用語用語の意味
スティッキーセッションセッション中に同じユーザからの通信を同じEC2インスタンスに送る機能
Connection DrainingシステムのメンテナンスなどでELBからEC2インスタンスを切り離した場合、
新規リクエストを送らないようにする機能

Elastic Load Balancingの料金とは

Elastic Load Balancingは使用した時間で料金が発生します。
以下の2つの要素によって、Elastic Load Balancingの費用は変わります。

(1) ELB(Elastic Load Balancing)の種類
ELB(Elastic Load Balancing)の種類(ALB、NLB、GWLB、CLB)によって、料金が変わります。

(2) 動作するリージョン
ELB(Elastic Load Balancing)が動作するリージョンによって、料金が変わります。

ELBの詳細な料金については、以下のAWSの公式サイトをご確認ください

料金 - Elastic Load Balancing | AWS
複数のターゲット間で、アプリケーションの着信トラフィックを自動的に分散するサービス、Elastic Load Balancing の料金についてご紹介します。


AWSに関する記事

AWSについての関連記事は以下の通りです。
必要に応じて、ご確認ください。

Noタイトル
1AWSの詳細設計書(パラメータシートのサンプル)
2AWS クラウドプラクティショナーの合格までの道(試験の概要と勉強方法)
3AWSの専門用語(リージョン、アベイラビリティゾーン、エッジロケーションとは)
4AWSの専門用語(AWS IAMとは)
5AWSの専門用語(Amazon VPCとは)
6AWSの専門用語(Amazon S3及びAmazon S3 Glacierとは)
7AWSの専門用語(EC2:Elastic Compute Cloudとは)
8AWSの専門用語(Amazon EBS:Elastic Block Storeとは)
9AWSの専門用語(ELB:Elastic Load Balancingとは)
10AWSの専門用語(Amazon RDSとは)
11AWSの専門用語(Amazon Auroraとは)
12AWSの専門用語(AWS DynamoDBとは)
13AWSの専門用語(Amazon ElastiCacheとは)
14AWSの専門用語(AWS Auto Scalingとは)
15AWSの専門用語(Amazon Lightsailとは)
16AWSの専門用語(AWS CloudTrailとは)
17AWSの専門用語(AWS Configとは)
18AWSの専門用語(AWS Organizationsとは)
19AWSの専門用語(AWS Lambdaとは)
20AWSの専門用語(Amazon EFSとは)
21AWSの専門用語(Amazon FSx for Windows File Serverとは)
22AWSの専門用語(Amazon FSx for Lustreとは)
23AWSの専門用語(Amazon Elastic Kubernetes Serviceとは)
24AWSの専門用語(Amazon Elastic Container Registryとは)
25AWSの専門用語(Amazon Elastic Container Serviceとは)
26AWSの専門用語(AWS Shieldとは)
27AWSの専門用語(AWS WAFとは)
28AWSの専門用語(AWS Batchとは)
29AWSの専門用語(Amazon CloudWatchとは)
30AWSの専門用語(Amazon Inspectorとは)
31AWSの専門用語(AWS Artifactとは)
32AWSの専門用語(Amazon API Gatewayとは)
33AWSの専門用語(AWS Security Hubとは)
34AWSの専門用語(AWS サポートとは)
35AWSの専門用語(AWS Key Management Serviceとは)
36AWSの専門用語(AWS Database Migration Serviceとは)
37AWSの専門用語(AWS CLIとは)