Webシステムを構築するときに必須になるのがロードバランサーです。
ロードバランサーはAWSでもいくつかあり、何を選べばいいかなど悩むと思います。
AWSでロードバランサーを使ってみよう、そんな方がAWSの公式HPを見てみると

なるほど。わからないことだけわかったぜ!!
ではまたの機会に!
と思いたくなるところです。
私も公式HPを見てもさっぱり理解できないので、色々なサイトを見ながら徐々に理解していきました。
色々なサイトを見て理解していくのも大変なので、このページ1枚でAWSのロードバランサーの内容を5分でわかるようにまとめたいと思います。

それでは早速ELBをわかりやすく解説していきます!
AWSのロードバランサー概要
そもそもロードバランサーってなあに?
ロードバランサーは「サーバーにかかる負荷を、平等に振り分けるための装置」です。
といっても分かりづらいと思いますので、具体的に説明していきます。
Webシステムは、一定以上の規模の場合にWebサーバを複数台用意するケースが多いです。
理由はWebサーバを1台にしてしまうと、下記のような問題が発生するためです。
Webサーバを1台にした場合の問題
- Webサーバが落ちた場合にシステムが停止してしまう(稼働率が低下する)
- 1台で高スペックなマシンを用意するより、2台で負荷分散したほうがコストが安くすむ(コスパの問題)
そのため2台以上のWebサーバを用意することになります。
そこで問題となるのが、どちらのサーバを使うかを決める必要がでてくるという点です。
その問題を解消するために、前段にアクセスを受けるロードバランサーを用意します。
AWSのロードバランサーはELB
Amazonのロードバランサーは、下記のサービスを総称してAmazon Elastic Load Balancing(ELB)と呼びます。
Amazon Elastic Load Balancing(ELB)の一覧
No. | 名称 | 説明 |
---|---|---|
1 | Application Load Balancer | HTTP、HTTPSのトラフィックで振り分け(レイヤー7) |
2 | Network Load Balancer | TCP、UDP、TLSのトラフィックで振り分け(レイヤー4) |
3 | Gateway Load Balancer | IPで振り分け(レイヤー3+レイヤー4) |
4 | Classic Load Balancer | 旧式のロードバランサー(レイヤー4+レイヤー7) |
詳しく知りたい方は公式の下記をご参照ください。
https://aws.amazon.com/jp/elasticloadbalancing/features/?nc=sn&loc=2
どのロードバランサーを使えば良いの?
Webサーバの振り分けに使うのはApplication Load Balancer(ALB)です。

本ブログではWebシステムをターゲットとしているため、ここからはALBについて説明していきます!
ELB/ALBのメリット
ELB共通のメリットとALBのメリットの2種類があり、それぞれのメリットを享受できます。
<ELB共通のメリット>
- 複数AZに分散し、高可用性を実現
- リアルタイムモニタリング機能
- サービスの弾力性向上
- セキュリティ強化
<ALBのメリット>
- URLに基づくルーティングが可能
- 柔軟なアプリケーション管理が可能
ELB/ALBのメリットを詳細に解説します。
ELB共通のメリット① 複数AZに分散し、高可用性を実現
複数のAZ(Availabity Zone)に分けてサーバを配置した上で、ELBを利用して各サーバにトラフィックを分散させることで、負荷を分散します。複数のAZに分けることで、片方のAZに問題が発生した場合もサービスを継続でき、高可用性を実現します。
ELB共通のメリット② リアルタイムモニタリング機能
ELBは接続しているサーバに定期的にヘルスチェックし、モニタリングします。
異常を検知した場合、該当のサーバを自動的に切り離し、他のサーバに分散され、高可用性を実現します。
ELB共通のメリット③ サービスの弾力性向上
トラフィック増加に応じてELBは自動スケーリングされ、トラフィックの急増にも耐えることができます。AWS Auto Scallingと組み合わせることで、Webサーバ側も自動スケーリング可能です。
ELB共通のメリット④ セキュリティ強化
SSL証明書を各Webサーバではなく、ELBに設定することで、SSL証明書の集中管理が可能です。また、WAF、AWS Shieldなどのセキュリティ製品との連携が可能です。
ALBのメリット① URLに基づくルーティングが可能
URLのパスでの振り分け(※1)が可能です。アプリケーションごとにロードバランサーを用意不要です。
※1 下記のような2つのアプリケーションを1つのALBで実現できます。
例:アプリケーションA「https://kouto-aws.com/aaa」
アプリケーションB「https://kouto-aws.com/bbb」
ALBのメリット② 柔軟なアプリケーション管理が可能
柔軟にアプリケーションのターゲットを設定できる(※2)ため、ALBひとつで多くのアプリケーションをルーティングできます。
※2 パスベース、ホストベース、コンテンツベース(HTTPヘッダベースやクエリ文字ベースなど)、コンテンツベースのルーティング設定が可能
概算費用
AWSは使った分だけ支払いが発生する従量課金です。ALBの概算費用は下記の通りになります。
概算費用(2台分)
種類 | 小規模 (3000PV想定) | 中規模 – 小 (3万PV) | 中規模 – 大 (30万PV) |
インスタンス | ¥4,080 | ¥4,080 | ¥4,080 |
ストレージ | ¥12 | ¥110 | ¥1,104 |
合計 | ¥4,092 | ¥4,191 | ¥5,184 |
※ロードバランサーはWebサーバ用とAPサーバ用の2台の想定で、2台分の価格です。

2台分でこの金額は、本当に安い!
終わりに
いかがでしたでしょうか。
ALBはシンプルでわかりやすい機能ですよね。
ただ、すべてのサービスを一気に覚えるのは難しいので、おすすめ構成を元に構築していただければと思います。
ALBを利用したおすすめ構成は別ページでまとめていますので、下記をご参照ください。
参考URL
本ページは下記のサイトを参照させて頂きました。
https://business.ntt-east.co.jp/content/cloudsolution/column-32.html
https://www.fenet.jp/aws/column/aws-beginner/282/
コメント