2020/11/26

AWS ALBとは?サービスのメリット5つと特徴を併せて紹介

 
  

AWSとは?

AWSとは、Amazon Web Servicesの略で、Amazonが提供しているクラウドコンピューティングサービスです。ネットワーク経由で仮想サーバーや大容量ストレージ、データベースなどのさまざまなサービスを利用できます。 AWSを利用したWebサービスを安定稼働させるため、AWSではALBというロードバランサーが提供されています。この記事ではALBについてご紹介します。

AWS ALBとは?

ALB(Application Load Balancer)とはAWSのサービスの一つで、Webサービスにおける負荷を分散させるロードバランシングサービスです。 突発的なアクセスの急増がWebサービスのエラーの原因になることがあります。ロードバランサーがそのような負荷を分散し、安定稼働や高可用性を実現させます。 ALBのさまざまな機能を利用することで、Webサービスを安定して運用できるようになります。

AWS ELBとは?

ELB(Elastic Load Balancing)はもともとAWSのロードバランシングサービスの名称でした。その後、ALBが追加された際に、ELBはClassic Load Balancer(CLB)に名前を変え、さらにNetwork Load Balancer(NLB)も追加されました。 現在ELBは、ALB、CLB、NLBという3つのロードバランシングサービスの総称を指しています。

AWS ELBの種類3つ

AWS ELBには、3つのロードバランサーがあり、用途に合わせて選択できます。ALBはHTTP、HTTPSトラフィックの負荷の分散や、最新のアプリケーション管理に向いているロードバランサーです。 NLBはTCP、UDPのトラフィックの負荷を分散し、高スループットを実現します。CLBはEC2 Classicネットワークで構築したアプリケーションの負荷分散に利用できます。

AWS ELBの種類1:NLB

NLBは接続レベル (レイヤー 4) で動作し、TCP、UDP両方のトラフィックの負荷を分散します。低レイテンシーで毎秒に数百万件ものリクエストを処理する高スループットを実現でき、突発的なトラフィック増にも対処できます。 またアベイラビリティーゾーン(AZ)ごとに静的IPアドレスが付与され、Elastic IPも利用できます。クライアント側の送信元IPアドレスがターゲットまで維持されることも特徴です。

AWS ELBの種類2:CLB

CLBは、レイヤー4とリクエストレベル(レイヤー7)の両方で利用でき、複数のAmazon EC2インスタンスの基本的な負荷分散を実現します。 CLBは、EC2 Classicネットワーク内のアプリケーションが対象です。Virtual Private Cloud (VPC) を使用する場合、レイヤー7にはALBを、レイヤー4にはNLBの利用が推奨されています。

AWS ELBの種類3:ALB

ALBは、レイヤー7で動作し、HTTP、HTTPSトラフィックの負荷を分散します。リクエストに従いEC2インスタンス、コンテナといったターゲットにルーティングします。 コンテンツベースの高度なリクエストルーティングも実現できます。ALBではSSL、TLSの暗号化とプロトコルを常に使用でき、アプリケーションのセキュリティを向上させます。

AWS ALBのメリット5つ

ここまでAWSのロードバランサーであるELBの3つのサービスの概要について解説してきましたが、ここからは、ALBを利用することで得られるメリットについてご紹介します。 「負荷を分散させる」、「URLに基づくルーティング」、「柔軟なアプリケーション管理」、「セキュリティ機能の充実」、「リアルタイムモニタリング機能」の5つのメリットについて詳しくご紹介します。

AWS ALBのメリット1:負荷を分散させる

Webサイトは一度にアクセスが集中すると、サーバーが処理できなり、サービスを提供できなくなることがあります。ロードバランサーは複数のサーバーにトラフィックを分散させることで安定した稼働を実現します。 ALBは複数のアベイラビリティーゾーンのサーバーにも分散ができ、Webサイトの停止や不安定な処理を避けられるため、Webサービスの安定性や高可用性を実現できます。

AWS ALBのメリット2:URLに基づくルーティングが可能

ALBのパスベースのルーティングを利用し、URLに従いインスタンスのターゲットグループへルーティングできます。 ALBのみでEC2やAmazon ECS(Elastic Container Service)サービスなどに、パスで振り分けることができ、アプリケーションごとにロードバランサーを用意する必要がありません。ECSを利用し、一部のアプリケーションをマイクロサービス化することも可能になります。

AWS ALBのメリット3:柔軟なアプリケーション管理が可能

ALBでは柔軟にアプリケーションのターゲットを設定できるため、ALBひとつで多くのアプリケーションをルーティングできます。 パスベース、ホストベース、HTTPヘッダベースやクエリ文字ベースなど、コンテンツベースのルーティングが可能です。ターゲットのアプリケーションを個別にグループ設定もできます。

AWS ALBのメリット4:セキュリティ機能の充実

Amazon VPCを利用する場合、セキュリティグループの作成で通過するトラフィックを制限することが可能です。 他には、AWS Certificate Manager (ACM)を利用したSSL/TLS証明書の管理、Amazon Cognitoと連携したユーザー認証、アクセスログ機能、ウェブアプリケーションファイアウォールのAWS WAFなどのサービスがあり、セキュリティ機能が充実しています。

AWS ALBのメリット5:リアルタイムモニタリング機能

Amazon CloudWatchを使用して、ロードバランサーに関する統計情報を、メトリクスとして取得し、アプリケーションが正常に実行されているかどうかをリアルタイムで監視できます。 アクセスログの取得やHTTPリクエストのトレースも可能で、トラフィックの分析や、ターゲットのトラブルシューティングをリクエスト単位で利用できます。

AWS ALBの特徴4つ

ALBはレイヤー7で利用でき、リクエストの内容に従いトラフィックをルーティングします。EC2インスタンスやコンテナ、IP アドレスだけでなく、Lambda関数もターゲットにできます。 ターゲットの死活監視を行って異常がある場合は切り離し、正常なターゲットにルーティングするヘルスチェックの機能もあります。ここからは、ALBの特徴を詳しくご紹介します。

AWS ALBの特徴1:レイヤー7に対応

CLBはレイヤー4とレイヤー7の両方で動作しましたが、ALBはアプリケーション層のレイヤー7で動作し、HTTP/HTTPSアプリケーションに対して負荷分散を行います。トランスポート層のレイヤー4における負荷分散にはNLBの構成が推奨されています。 レイヤー7に特化しているため、X-Forwarded-Forヘッダーの利用や、ターゲットグループへのルーティングなどの固有の機能を使用できます。

AWS ALBの特徴2:HTTPSターミネーションをサポート

ALBでは、HTTPSターミネーションがサポートされています。クライアントとALB間はHTTPSで通信し、ALBとWebサーバー間はHTTPで通信できます。HTTPSの暗号化の処理がいらないため、Webサーバーの負荷を下げられます。 また、AWS Certificate Manager(ACM)を連携し、SSL証明書の発行や自動更新の管理も可能です。

AWS ALBの特徴3:アクセス制限が可能

ALBのリスナールールを利用して、アクセス制限ができます。特定のIPアドレスを許可するホワイトリスト方式による制限が可能です。HTTP/HTTPSに限定した設定で、ホストやパスなどと組み合わせてルーティングの設定が可能です。 特定のIPのみ管理画面が利用できるようなWebサービスで利用できます。他には、セキュリティグループやAWS WAFを利用したアクセス制限も可能です。

AWS ALBの特徴4:最新のアプリケーションに対応

ALBの特徴の4つ目は、マイクロサービスやコンテナなどの、最新アプリケーションアーキテクチャをターゲットとした設定に対応できる点です。 コンテンツベースの高度なリクエストルーティングが可能で、パスベースのルーティングができます。Amazon ECSと連携してコンテナを管理でき、ターゲットグループにコンテナを設定することもできます。

AWS ALBのメリットと特徴を知り運用しよう

今回ご紹介したように、AWSにはWebサービスを安定させるために重要なロードバランシングサービスがあります。ALBの他にも、NLBとCLBのロードバランサーがあり、それぞれに特徴があります。 ALBはレイヤー7に特化し、高度なリクエストルーティングなどの構成を可能にします。ALBの特徴やメリットを理解し、安定したWebサービスの運用に活用しましょう。]]>

ITエンジニアへのキャリアチェンジならキャリアチェンジアカデミー

この記事の監修者・著者

株式会社オープンアップITエンジニア
株式会社オープンアップITエンジニア
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞

おすすめの動画

  • 【未経験からIT業界へ転職するなら】相談窓口とスキルの獲得はここで解決!IT転職が一気に有利に!【キャリアチェンジアカデミー】

  • 【費用一切不要】未経験からIT業界へ転職するならまずはここへ相談!【キャリアチェンジアカデミー】

  • 【何のエンジニアになれるのか?】未経験からITエンジニアを目指すとこんな道がある【キャリアチェンジアカデミー】