負荷分散の重要性とは?ロードバランサーのメリット、デメリット、選び方を徹底解説!

負荷分散の重要性とは?ロードバランサーのメリット、デメリット、選び方を徹底解説!

エンジニアブログ

投稿日:2021/05/02 | 最終更新日:2021/09/04

ロードバランサーという言葉をご存知でしょうか。ロードバランサーは、サーバーに対して一極的に大きな負荷がかからないように負荷を分散するためのツールです。

サーバーに大きな負荷が掛かった場合、システムがダウンして事業継続が困難になるリスクがあります。そのため、安定した経営を実現するためにはロードバランサーによる負荷分散が必要不可欠です。

本記事では、負荷分散やロードバランサーの基礎的な内容から、ロードバランサーのメリット、デメリット、選び方まで一挙にご紹介します。

負荷分散とは?

概要

ロードバランサーについて説明する前に「負荷分散」とは何かを理解しておきましょう。負荷分散とは、並列している複数の機器やシステム内において、特定箇所に負荷が集中しないように処理を分散して割り当てることです。

一極的に負荷が掛かった場合、システムがダウンして事業継続が困難になるリスクもあります。そのため、 BCP (事業継続計画)の観点において負荷分散は大切な役割を持っています。

また、負荷分散を行うことで、それぞれの機器やシステムのパフォーマンス(性能)低下を防ぐことができるため、自社の生産性向上という側面からも重要になります。

このように、負荷分散はすべての企業が対策を取るべき重要な事柄であり、強い経営基盤を作るためには必要不可欠なものになっています。

BCP対策とクラウドの関係について理解を深めたい方は以下の記事がオススメです。

オンプレよりも安全?クラウドがBCP対策に選ばれる理由とは?

方式

負荷分散には多くの方式があり、それぞれ異なる特徴を持っています。以下、代表的な型を表にまとめました。

負荷分散の型 概要
DNS ラウンドロビン型 DNS の仕組みで利用サーバーを動的に切り替えることで、複数サーバーにリクエストを転送し負荷分散を実現する方法
プロキシ型 プロキシサーバーでクライアントからのアクセスを一次受信し、適切なサーバーに振り分けることで負荷分散を実現する方法
アドレス変換( NAT )型 サーバーに対するリクエストの宛先アドレスを適切に変換し、複数のサーバーへ処理を分散させる方法
ダイレクトルーティング型 サーバーに対するリクエストの MAC アドレス(機器固有のアドレス)を変更して別の機器に転送することで、複数のサーバーに処理を分散させる方法
トンネル型 サーバーに対するリクエストを実サーバの IP ヘッダーでカプセル化して別の機器に転送することで、複数のサーバーへ処理を分散させる方法

分散ポリシー

負荷分散の型と同様に、分散ポリシーにも様々な種類があります。以下、代表的なものを表にまとめました。

分散ポリシーの型 概要
ラウンドロビン型 各サーバーに対してリクエストを順番に振り分ける方式
ランダム型 乱数を利用してリクエストをランダムに振り分ける方式
送信元 IP アドレス型 送信元の IP アドレスに沿ってリクエストを振り分ける方式
サーバー負荷連動型 処理能力に余裕のあるサーバーへ自動的に振り分ける方式
重み付け サーバー性能に応じてリクエストの振り分け頻度を調整する方式

ロードバランサーとは?

概要

インターネット経由でサーバーにアクセスが発生した場合、少数のアクセスであれば特に問題はありません。

しかし、特定要因によりアクセスが集中すると CPU やメモリが実行する処理が急増し、利用者のブラウザでのページ表示速度が低下したり、最悪の場合はページそのものが表示されない事態に発展するケースもあります。

これらのリスクを回避するための仕組みが「ロードバランサー」です。日本語では「負荷分散装置」と訳されることもあります。

ロードバランサーは英単語の「 load (負荷)」と「 Balancer (平衡を保つためのもの)」の2語で構成されており、サーバーに対する負荷の一極集中を避けるために、全体のバランスを調整するための装置です。

仕組み

ロードバランサーは web サーバーに対するアクセス要求を制御することで、同機能を有する別のサーバーにアクセスを分散・転送します。転送先は複数のサーバーを指定できるため、アクセスの一極集中を回避し、全体としての平衡を保つことができる仕組みです。

そのため、ロードバランサーを使用することで web サーバーにアクセスが集中した場合でも、利用者に対するサービスの安定供給が可能になります。サービス品質を保つためには、とても重要なツールであると言えます。

種類

ロードバランサーには、大きく分けて2つの種類が存在します。機器を配置する場所によって「 Two-Arm ( inline )」と「 One-Arm 」の2種類に分類されます。

以下、それぞれの違いを表にまとめました。

種類 配置場所 メリット デメリット
Two-Arm ( inline ) 通信経路上 構成がシンプルでわかりやすい ロードバランサーを冗長化しないと機器の障害対応ができない
One-Arm サーバー並列上 装置の性能を最大限に引き出せる 通信経路を把握しづらい

このようにロードバランサーは特性に応じて種類が分かれています。それぞれの特徴を理解し、自社に合ったサービスを選ぶことが大切です。

具体的な「ロードバランサーの選び方」は記事の後半で詳しくご説明します。

ロードバランサーと DNS ラウンドロビンの違い

負荷分散を実現するための方法はロードバランサーだけではありません。よくロードバランサーと対比されるものとして「 DNS ラウンドロビン」が挙げられます。

記事の冒頭でもご説明した通り、 DNS ラウンドロビンは DNS の仕組みで利用サーバーを動的に切り替えることで、複数サーバーにリクエストを転送し負荷分散を実現する方法です。

両者における最大の違いは「専用機器を使うか否か」という点です。ロードバランサーは負荷分散用の専用機器を使う前提ですが、 DNS ラウンドロビンは DNS サーバーの設定ファイルに書き込みを行うことで負荷分散を実現するため、追加で機器を用意する必要はありません。

負荷分散の効果という意味では、 DNS ラウンドロビンよりもロードバランサーの方が優秀です。

以下、代表的な違いを表にまとめました。

ロードバランサー DNS ラウンドロビン
価格 高い 安い
サーバー障害検知 ×
通信の継続性 ×
柔軟性 ×

このように、ロードバランサーと DNS ラウンドロビンには多くの違いが存在し、機能面においては全体的にロードバランサーの方が優秀です。上表で示した各項目については、次章以降で詳しくご説明します。

ロードバランサーのメリット

サーバー故障を監視できる

ロードバランサーを使うことでサーバー故障の監視が可能になります。そのため、故障中のサーバーにリクエストを転送するリスクはなく、安心してサービスを運用することができます。

一方、 DNS ラウンドロビンではサーバーの障害検知を行うことはできません。そのため、故障中のサーバーにリクエストを送信する可能性があり、その場合は利用者目線では「不具合」として見なされるリスクがあります。

セッションを維持できる

セッションとは、通信の始まりから終わりまでを意味する一連の動きのことです。つまり、「セッションを維持できる」というのは「通信の継続性を担保できる」という意味です。

わかりやすい例として EC サイトでご説明します。 EC サイトでは商品の「検索」「選定」「購入」まで、一連の作業を web ブラウザの中で行います。途中でセッションが切れてしまった場合、お気に入りの商品が消えてしまったり、入力したクレジットカード情報を再入力しなければいけないなど、様々な弊害が出てきます。

ロードバランサーはセッションを維持できるため、 EC サイトのような通信の継続性を求められるケースでも安心して利用できます。一方、 DNS ラウンドロビンの場合はセッションを維持することはできません。

柔軟性の高い負荷分散を実現できる

負荷分散における「柔軟性」とは「分散効率」と読み替えるとイメージしやすいです。ロードバランサーは「リーストコネクション」という負荷分散のアルゴリズムを採用しており、負荷の少ないサーバーを優先して自動的にリクエストを割り当てていきます。

そのため、常にリソースの全体最適をはかりながら負荷分散を行うことができ、効率的なサーバー運用を実現できます。一方、 DNS ラウンドロビンはサーバー負荷に関係なく順番にリクエストを割り当てるため、柔軟性は低いと言えます。

ロードバランサーのデメリット

コストが高い

ロードバランサーは負荷分散用の「専用機器(装置)」を購入するため、 DNS ラウンドロビンよりもコストは大きくなります。ロードバランサーの種類は多岐にわたるため、事前にサービスごとの違いをチェックしておきましょう。

一方、 DNS ラウンドロビンは DNS サーバーの設定ファイルに書き込みを行うことで負荷を分散する手法です。そのため、ロードバランサーのような専用機器を購入する必要はなく、比較的安価に負荷分散を実現することができます。

自社に適したサービスを選びにくい

一口にロードバランサーと言っても、その種類は多岐にわたります。多くの会社がロードバランサー製品を提供しており、それぞれのサービスごとに特徴や強みは異なります。

そのため、自社に適したロードバランサーを選びにくい点はデメリットの一つだと言えるでしょう。自社が優先すべき要素を明確化し、各サービスの価格や機能を徹底的にチェックした上で最適なロードバランサーを選択してください。

ロードバランサーの選び方

まずはロードバランサーの提供形態を理解しましょう。大きく分けて、ロードバランサーの提供形態は以下の3つに分類されます。

  • ハードウェア型(従来のハードウェア専用機を利用)
  • ソフトウェア型(負荷分散機能を持ったソフトウェアを利用)
  • クラウド型(負荷分散機能をクラウド環境で利用)

以下、各シーンにおいてオススメなロードバランサーの選び方をご紹介します。

高い処理能力が必要な場合

ロードバランサーに対して高い処理能力を求める場合はハードウェア型がオススメです。ハードウェア専用機はロードバランサーに最適化されているため、とても高い処理能力を誇ります。

ただし、ハードウェア専用機はコストが高い点が大きなデメリットです。ものによっては数百万円クラスの製品も存在するため、自社が求める機能を明確化した上でハードウェアを検討することが大切です。

導入コストを抑えたい場合

ロードバランサーの導入コストを抑えたい場合はソフトウェア型がオススメです。ソフトウェア型のロードバランサーは比較的低コストで導入でき、安いものであれば数万円から利用することが可能です。また、 OSS (オープンソースソフトウェア)として無料提供されているサービスも存在します。

ただし、ソフトウェア型のロードバランサーは搭載するサーバーの処理能力によってパフォーマンスが左右されます。また、ハードウェア型と比較すると機能面で見劣りするケースが多く、必要最低限の機能に絞られている場合があるため、各製品の特徴を正しく理解しておくことが大切です。

リソースを柔軟に変更したい場合

柔軟にリソースを変更したい場合はクラウド型がオススメです。例えば、ハードウェア専用機では予想以上のアクセスで処理の限界を超えてしまったり、逆に過剰投資になってしまうリスクが存在します。

一方、クラウド型であれば、自社の状況に合わせて柔軟にリソースを変更でき、実際の使用量に応じた適正な IT 投資を実現することができます。特定時期にアクセスが集まるような場合は、ピーク時に合わせたリソース調整が可能なため、クラウド型が有効な選択肢になります。

さらにクラウド型のメリットとして、利用開始までの期間が早い点が挙げられます。新しく機器やソフトウェアを用意する必要がないため、契約後すぐに利用でき、簡単な設定だけで運用をスタートできます。

ただし、クラウド型のロードバランサーを使う上ではセキュリティ面のチェックが必要不可欠です。クラウド型はインターネット上のサーバーを利用する形態であるため、専用機器をオンプレミスで用意するハードウェア型と比較すればセキュリティの信頼性は劣ります。

そのため、クラウド型のロードバランサーを選ぶには、サービスの提供会社がとても重要になります。過去実績が豊富であり、セキュリティ面も万全な信頼できる会社を選びましょう。

まとめ

ロードバランサーの3つの提供形態について、メリット・デメリットを表でまとめました。

提供形態 メリット デメリット
ハードウェア型 処理性能が高い 多額のコストが発生する
ソフトウェア型 導入コストを抑えられる 機能が限定的なケースが多い
クラウド型 柔軟にリソースを変更できる サービスによってはセキュリティレベルが低い

このようにロードバランサーには多くの提供形態があり、それぞれ特徴や強みは異なります。まずは自社の要件や求める機能を明確にし、最適なサービスを選択する必要があります。

ただし、現在は「 IoT 」や「人工知能( AI )」などの新技術の発展に伴い、企業が扱うデータ量は増加し、必要な処理量も増えています。また、社会情勢も刻一刻と変化しているため、柔軟なリソース変更が可能なクラウド型がオススメです。

例えば、 Google が提供しているパブリッククラウドサービス「 Google Cloud(GCP) 」にも負荷分散の機能が搭載されています。

世界的企業である Google が提供しているサービスであるため、セキュリティ面は安全です。また、 Google Cloud (GCP)は負荷分散だけでなく、企業の生産性向上を実現する様々なソリューションを内包したサービスです。

ロードバランサーの導入を考えているのであれば、一度 Google Cloud (GCP)を検討してみてはいかがでしょうか。

Google Cloud (GCP)については、以下の記事が参考になります。
Google Cloud Platform™ (GCP) とは

まとめ

本記事では、負荷分散やロードバランサーの基礎的な内容から、ロードバランサーのメリット、デメリット、選び方まで一挙にご紹介しました。

安定した企業経営を実現するためには、ロードバランサーによる負荷分散が必要不可欠です。ロードバランサーには様々な種類があるため、自社の状況に合わせて適切なサービスを選ぶことが大切です。

ロードバランサーには様々な提供形態がありますが、変化の激しい現代においては柔軟性のあるクラウド型がオススメです。代表的な例として、 Google Cloud(GCP) にも負荷分散の機能が搭載されており、高いセキュリティを保ちつつ、効率的な負荷分散を実現できます。

本記事を参考にして、ロードバランサーの導入を検討してみてはいかがでしょうか。



弊社トップゲートでは、 Google Cloud (GCP) 、または 20ID以上のGoogle Workspace(旧G Suite) 導入をご検討をされているお客様へ「Google Meet で無料個別相談会」を実施いたします。導入前に懸念点を解決したい方、そもそも導入した方がいいのかをお聞きしたい方はお気軽にお申し込みください!

トップゲート経由で Google Cloud (GCP)をご契約いただけると Google Cloud (GCP)の利用料金はずっと3%オフとお得になります!

お申込みはこちら



メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!

メルマガ登録はこちら

記事を探す

GCP のメリットを最大限に活用しよう!

Google Cloud・Google Workspace のご相談・
お見積り依頼はお気軽に
お問合せフォーム