採用情報|SKサービス株式会社

インフラ入門 約7分で読めます

ロードバランサーとは?負荷分散の仕組みを初心者向けに解説

「ロードバランサーって何をするもの?」「負荷分散って聞いたことあるけど、よくわからない…」

Webサービスやアプリが「アクセス集中で落ちました」というニュースを見たことはありませんか?大量のアクセスを処理するために欠かせないのがロードバランサーです。

この記事では、ロードバランサーとは何か、なぜ必要なのか、どんな仕組みで動いているのかを、初心者向けにわかりやすく解説します。

ロードバランサーとは?

「負荷を分散する装置」のこと

ロードバランサー(Load Balancer)は、その名の通り「Load(負荷)をBalance(分散)する」装置・機能のことです。日本語では「負荷分散装置」とも呼ばれます。

複数のサーバーに対して、アクセス(リクエスト)を振り分けることで、1台のサーバーに負荷が集中するのを防ぎます。

レジに例えてみよう

スーパーのレジで考えてみましょう。

ロードバランサーがない場合:

  • レジが1台しかない
  • お客さんが増えると行列ができる
  • 1人の処理に時間がかかると、全員が待たされる
  • レジが故障したら、買い物ができない

ロードバランサーがある場合:

  • レジが複数台ある
  • 案内係(ロードバランサー)が空いているレジに誘導
  • お客さんが分散されるので、待ち時間が短い
  • 1台が故障しても、他のレジで対応できる

Webサービスも同じです。ロードバランサーがアクセスを複数のサーバーに振り分けることで、快適なサービスを提供できます。

なぜロードバランサーが必要なのか?

ロードバランサーを使う主な理由は3つあります。

1. 可用性の向上(止まらないサービス)

サーバーが1台だけの場合、そのサーバーが故障するとサービスが止まってしまいます。

ロードバランサーを使って複数台のサーバーを用意しておけば、1台が故障しても他のサーバーで処理を継続できます。これを「冗長化」と言います。

2. スケーラビリティの確保(成長に対応)

サービスが成長してアクセスが増えたとき、1台のサーバーでは処理しきれなくなります。

ロードバランサーを使えば、サーバーを追加するだけでアクセス増加に対応できます。これを「スケールアウト」と言います。

3. パフォーマンスの向上(快適な応答)

複数のサーバーで処理を分担することで、1台あたりの負荷が軽減され、応答時間が短くなります。ユーザーは快適にサービスを利用できます。

メリット 説明
可用性の向上 障害時も サービス継続
スケーラビリティ サーバー追加で拡張可能
パフォーマンス向上 負荷分散で応答高速化

ロードバランサーの仕組み

ロードバランサーがどのように動いているか、もう少し詳しく見ていきましょう。

基本的な動作の流れ

  1. ユーザーがWebサイトにアクセス
  2. リクエストはまずロードバランサーに届く
  3. ロードバランサーが、振り分け先のサーバーを決定
  4. 選ばれたサーバーがリクエストを処理
  5. サーバーの応答がユーザーに返される

ユーザーからは、ロードバランサーの存在は見えません。普通にWebサイトにアクセスしているように感じます。

負荷分散のアルゴリズム

ロードバランサーが「どのサーバーに振り分けるか」を決める方法(アルゴリズム)には、いくつかの種類があります。

アルゴリズム 説明 特徴
ラウンドロビン 順番に振り分ける シンプル、最も一般的
最小接続数 接続数が少ないサーバーへ 負荷の偏りを防ぐ
IPハッシュ 送信元IPで振り分け先を決定 同じユーザーは同じサーバーへ
重み付け サーバーの性能に応じて配分 高性能サーバーに多く振り分け

最もシンプルなのは「ラウンドロビン」で、サーバーA→B→C→A→B→C…と順番にリクエストを振り分けます。

ヘルスチェック機能

ロードバランサーは、定期的にサーバーの状態を確認しています。これを「ヘルスチェック」と言います。

  • サーバーが正常に動いているか定期的にチェック
  • 異常を検知したサーバーには振り分けを停止
  • 復旧したら自動的に振り分けを再開

この機能のおかげで、サーバーが故障しても自動的に正常なサーバーだけに振り分けてくれます

JOIN US

SKサービスでエンジニアデビューしませんか?

未経験からエンジニアを目指す方を積極的に採用中。正社員雇用で安定した環境、最短3ヶ月で現場変更可能。

詳細はこちらから

ロードバランサーの種類

ロードバランサーにはいくつかの種類があります。

1. ハードウェアロードバランサー

専用の機器(アプライアンス)として提供されるタイプ。高性能で信頼性が高い反面、高価です。

代表的な製品:F5 BIG-IP、Citrix ADC、A10 Networksなど

2. ソフトウェアロードバランサー

サーバー上で動作するソフトウェアとして提供されるタイプ。柔軟性が高く、コストを抑えられます

代表的なソフトウェア:Nginx、HAProxy、Apache(mod_proxy_balancer)など

3. クラウドロードバランサー

クラウドサービスとして提供されるタイプ。構築・運用が簡単で、スケーリングも自動。

クラウド サービス名
AWS ELB(ALB, NLB, CLB)
Azure Azure Load Balancer
GCP Cloud Load Balancing

現在は、クラウドのロードバランサーを使うことが多くなっています。

L4とL7の違い

ロードバランサーの説明で「L4」「L7」という言葉を見かけることがあります。これはOSI参照モデルのレイヤー(層)を指しています。

L4ロードバランサー(レイヤー4)

トランスポート層で動作し、IPアドレスとポート番号を見て振り分けを行います。

  • 処理が高速
  • シンプルな振り分けに適している
  • 通信の中身は見ない

L7ロードバランサー(レイヤー7)

アプリケーション層で動作し、HTTPヘッダーやURLの内容を見て振り分けを行います。

  • 細かい振り分けルールが設定可能
  • URLごとに異なるサーバーへ振り分け可能
  • SSL終端(HTTPS通信の処理)も可能
項目 L4 L7
動作レイヤー トランスポート層 アプリケーション層
振り分け基準 IP、ポート URL、ヘッダー、Cookie等
処理速度 高速 やや遅い
柔軟性 低い 高い

Webアプリケーションでは、URLによって振り分け先を変えたいことが多いので、L7ロードバランサー(ALBなど)がよく使われます。

AWSのロードバランサー(ELB)

クラウドで最もよく使われるAWSのロードバランサーを簡単に紹介します。

AWSのロードバランサーはELB(Elastic Load Balancing)という名称で、3種類あります。

種類 特徴 用途
ALB L7(HTTP/HTTPS)対応 Webアプリケーション
NLB L4対応、超高性能 高トラフィック、TCP/UDP
CLB 旧世代(L4/L7両対応) レガシー環境

新規で構築する場合は、ALB(Application Load Balancer)を選ぶことが多いです。

インフラエンジニアとロードバランサー

ロードバランサーは、インフラエンジニアにとって必須知識の1つです。

現場でよくある作業

  • ロードバランサーの構築・設定
  • サーバーの追加・削除(スケールアウト/イン)
  • ヘルスチェックの設定・監視
  • SSL証明書の設定・更新
  • 障害時の切り離し・復旧対応

身につけておきたい知識

  • ロードバランサーの基本概念(この記事の内容)
  • クラウド(AWS等)のロードバランサーサービス
  • Nginx等のソフトウェアでの負荷分散設定
  • DNS、SSL/TLSの基礎知識

まとめ

この記事のポイントを整理します。

項目 内容
ロードバランサーとは アクセスを複数サーバーに分散する装置
なぜ必要か 可用性向上、スケーラビリティ、性能向上
振り分け方法 ラウンドロビン、最小接続数など
種類 ハードウェア、ソフトウェア、クラウド
L4とL7 L4はIP/ポート、L7はURL/ヘッダーで振り分け

ロードバランサーは、現代のWebサービスを支える重要な基盤技術です。一見難しそうに見えますが、基本的な考え方はシンプル。「アクセスを分散して、サーバーの負荷を減らす」ということです。

まずは概念を理解して、余裕があればAWS等で実際に触ってみると、より理解が深まりますよ!

JOIN US

SKサービスでエンジニアデビューしませんか?

未経験からエンジニアを目指す方を積極的に採用中。正社員雇用で安定した環境、最短3ヶ月で現場変更可能。

詳細はこちらから
この記事をシェア
JOIN US JOIN US JOIN US JOIN US JOIN US JOIN US JOIN US JOIN US

ENTRY

- エントリーはこちらから -

Page Top