ロード バランサーを使用すると、アプリケーションをサポートするために、リソース (オンプレミスまたはクラウド) 間でネットワーク トラフィックを動的に分散できます。
ロード バランサは、トラフィック プロキシとして機能し、ネットワークまたはアプリケーションのトラフィックを複数のサーバー上のエンドポイントに分散するソリューションです。 ロード バランサは、トラフィックのピーク時に容量を分散し、アプリケーションの信頼性を高めるために使用されます。 個々のサービスやクラウドの負荷を軽減することでアプリケーションの全体的なパフォーマンスを向上させ、さまざまなコンピューティング サーフェス間で需要を分散して、アプリケーションとネットワーク セッションの維持に役立ちます。
現代のアプリケーションは、何百万ものセッションを同時に処理し、正しいテキスト、ビデオ、画像、その他のデータを各ユーザーに高速かつ確実に返す必要があります。 このような大量のトラフィックを処理するために、ほとんどのアプリケーションには、重複したデータを持つ多数のリソース サーバーが存在します。
負荷分散は、アプリケーションをサポートするリソースのネットワーク全体にネットワーク トラフィックを動的に分散します。 ロード バランサは、ユーザーとサーバー グループの間に配置され、目に見えない仲介者として機能し、すべてのリソース サーバーが均等に使用されるようにするデバイスまたはサービスです。 ロード バランサは、使用量や需要が急増した場合でも信頼性と可用性を高め、稼働時間の増加とユーザー エクスペリエンスの向上を実現します。
場合によっては、クライアントがショッピング カートにアイテムを入れてから購入を完了する場合など、セッションの期間中、クライアントからのすべてのリクエストが同じサーバーに送信されることが不可欠です。 クライアントとサーバー間の接続を維持することをセッション永続性と呼びます。 セッションの永続性がなければ、情報をサーバー間で同期する必要があり、複数回取得する可能性があり、パフォーマンスの効率が低下します。
ユーザーと顧客は、情報を検索したり取引を実行したりするために、ほぼリアルタイムの機能に依存しています。 ピーク需要や使用時間であっても、遅延時間や信頼性の低い一貫性のない応答があると、顧客を永久に遠ざけてしまう可能性があります。 また、コンピューティング需要の急増は、着信する需要、つまり「負荷」が高すぎて簡単に対応できない場合、内部サーバーまたはサーバー システムに大混乱を引き起こす可能性があります。
ロード バランサを使用する利点は次のとおりです。
負荷分散アルゴリズムには、その動作方法によって静的と動的の 2 種類があります。 静的負荷分散は、分散ネットワーク内の既存のサーバーのパフォーマンス容量情報を持つアルゴリズムを使用して、サーバーへの着信負荷を測定します。 動的負荷分散では、実行時に削減する必要がある負荷の量と、どのシステムが負荷を負担するかを動的に識別できます。 入力負荷の変動が大きいシステム向けに設計されています。
以下に、一般的な負荷分散アルゴリズムの種類をいくつか示します。
静的負荷分散の例: ある企業が、大部分が静的なコンテンツを含む Web サイトをホストしています。 このシナリオは、トラフィックのニーズが予測可能で一貫しているため、静的ロード バランサに最適です。 企業は、静的ロード バランサがトラフィックを分散できる 2 台 (またはそれ以上) の同一の Web サーバーを使用できます。
動的負荷分散の例: 企業ではトラフィックの急増、増加、減少が起こります。 予測可能なものもあれば、予測不可能なものもあります。 これらの組織は動的負荷分散の恩恵を受けるでしょう。 こうした企業には、ブラックフライデーの営業時間や日付を発表する電子商取引小売業者、季節性ワクチンのオンライン予約が可能になったと発表したばかりのヘルスケア企業、失業保険受給者に毎週の特定の曜日に申請することを義務付けている政府の失業保険機関、自然災害にオンラインで迅速に対応する必要がある救援組織などが含まれる。 こうしたトラフィックと需要の急増や急増の一部は計画可能ですが、一部は計画できません。 このようなシナリオでは、動的負荷分散アルゴリズムにより、顧客やユーザーが最も必要とするときにアプリやリソースへのアクセスが確保されます。
オープン システム インターコネクション (OSI)モデルと呼ばれるアーキテクチャには、さまざまな機能を備えたさまざまな種類のロード バランサが存在します。 このモデルには 7 つのレイヤーがあります。 ネットワーク ファイアウォールはレベル 1 から 3 まであります (L1 - 物理配線、L2 - データ リンク、L3 - ネットワーク)。 一方、負荷分散はレイヤー 4 から 7 (L4 トランスポート、L5 セッション、L6 プレゼンテーション、L7 アプリケーション) で行われます。 ロードバランサは通常、レイヤー 4 とレイヤー 7 で使用されます。
クラウドベースのロードバランサーは、トラフィックの急増に対応し、サーバーの使用を最適化するだけのトラフィックコントローラーではありません。 クラウドネイティブ ロードバランサーは、トラフィックのボトルネックを発生する前に視覚化するのに役立つ予測分析も提供します。 その結果、あらゆる企業が IT ソリューションを最適化するのに役立つ実用的な洞察が得られます。
アプリケーション負荷分散: 企業がアプリケーションのパフォーマンスと可用性にますます依存するようになるにつれて、アプリケーションの負荷分散は、拡張、運用の合理化、コストの節約に役立ちます。
グローバル サーバー負荷分散: 世界中にユーザーと顧客がいる場合、企業は、ユーザーを最も近いエンドポイントに送信するグローバル サーバー負荷分散によって負荷の可用性を高めることができます。
DNS 負荷分散: ドメイン ネーム システム (DNS) でドメインを構成して、ドメインへのユーザー要求がサーバー マシンのグループ全体に分散されるようにする方法は、 DNS ロード バランシングと呼ばれます。
ネットワーク負荷分散: アプリケーション配信コントローラ (ADC) は、物理サーバーのプロキシとして機能する物理アプライアンスまたは仮想アプライアンスであり、アプリケーションまたはネットワーク機能を管理し、それらをサポートするネットワーク負荷分散ソリューションに依存します。 ADC は、キャッシュ、圧縮、 SSL 処理のオフロードなどの他の技術も使用して、 Web アプリケーションのパフォーマンスを向上させます。 通常の構成では、ADC は Web サーバーとアプリケーション サーバーのグループの前に配置され、それらのサーバーとクライアント間の要求と応答を仲介し、エンド ユーザーにはグループが 1 つの仮想サーバーのように見えます。
HTTP(S) 負荷分散: 複数の Web サーバー グループまたはアプリケーション サーバー グループにトラフィックを分散してリソース使用率を最適化する手法は、HTTP(S) ロード バランシングと呼ばれます。
内部負荷分散: 内部ロードバランサはプライベートサブネットに割り当てられており、パブリック IP はありません。 通常はサーバー ファーム内で動作します。
直径: Diameter ロード バランサは、ネットワーク内の複数のサーバーにシグナリング トラフィックを分散します。 最もコスト効率の高い方法の 1 つは、データ転送層ではなく、直径制御プレーンを拡張することです。 (Diameter のロード バランシングは静的または動的に行うこともできます。)
他にも、単独で使用することも、クラウドネイティブ ロード バランサーとネットワーク内で使用できるタイプのロード バランサー ソリューションがあります。 注目すべきタイプをいくつか紹介します。
ハードウェア ロード バランサー: ハードウェア ロード バランサーは、特殊なオペレーティング システムを搭載した物理デバイスであり、通常はオンプレミスの複数のアプリケーション サーバーに Web トラフィックを分散するようにプログラムできます。
ソフトウェア ロード バランサー: ソフトウェア ロード バランサは物理ロード バランサのように動作しますが、ソフトウェア プログラム上で実行されます。 このソフトウェアは、静的および動的な負荷分散を使用して単一障害点を排除し、あらゆる種類のトラフィック要求を通じてアプリを利用できるようにします。
仮想ロードバランサー: ハードウェア ロード バランサーとソフトウェア ロード バランサーを組み合わせたタイプのロード バランサーは、仮想ロード バランサーです。 ハードウェア バックエンド サーバー間でネットワーク トラフィックの負荷を分散するのに役立つアプリケーション配信コントローラー ソフトウェアを使用します。
ホワイトペーパー
負荷分散の基礎: ナットとボルト ›
ユースケース
アプリケーションの負荷分散 ›
ホワイトペーパー
AWS での負荷分散: オプションを知る ›
ホワイトペーパー
負荷分散の基礎: ADC への進化 ›