default-focus-right

レイヤ7 負荷分散

オープンシステム相互接続 (Open Systems Interconnection、OSI) モデル (OSI 参照モデル) では、ネットワーク通信は7つの論理レイヤにグループ化され、各レイヤで OSI 標準化プロトコルを使用して通信します(下図参照)。負荷分散はいくつかのレイヤで実行できます。

レイヤ7 負荷分散とは?

OSI 参照モデルで、レイヤ7 は適用可能な最高レベルであり、HTTP などのアプリケーション層プロトコルでより深いコンテキストを提供します。アプリケーション層で動作するレイヤ7 負荷分散は、このアプリケーションレベルの情報を認識して、メッセージのコンテンツに基づいた、より複雑な負荷分散の決定を行い、コンテンツに最適化と変更 (HTTP ヘッダー操作、圧縮、暗号化など) を適用できます。アプリケーションの稼働状況の監視で、信頼性と可用性が確保できます。

レイヤ7 負荷分散は、リバースプロキシとも呼ばれます。

レイヤ7負荷分散 - OSI 参照モデル

図: OSI 参照モデル

レイヤ4 負荷分散 vs レイヤ7 負荷分散

レイヤ4 負荷分散は、伝送制御プロトコル (TCP) やユーザーデータグラムプロトコル (UDP) などのトランスポート層で動作します。通常、レイヤ4 でのルーティング決定は、追加のパケットインスペクションなしで送信元/送信先の IP/ポートに基づいて行われます。レイヤ4 負荷分散はメッセージの内容を検査したり変更したりせず、ルーティング決定にアプリケーション情報を適用できません。

HTTP は OSI 参照モデルのレイヤ5、6、7の機能を組み合わせており、Kemp LoadMaster のレイヤ7 負荷分散は、便宜上、レイヤ7 負荷分散という用語を使っていますが、レイヤ5、レイヤ6、レイヤ7の情報を機能強化のために利用しています。

レイヤ7 負荷分散が受信したリクエストは、通常、設定されたアルゴリズムに基づいてアプリケーションに配信されます。Kemp LoadMaster は、次の負荷分散アルゴリズムを利用します。

  • ラウンドロビン
  • 重み付けラウンドロビン
  • 最少接続
  • 重み付け最少接続
  • エージェントベースアダプティブ
  • SDN アダプティブ
  • 固定重み付け
  • 重み付け応答時間
  • ソース IP ハッシュ
  • URL ハッシュ

負荷分散アルゴリズムについては、Load Balancing Algorithms and Techniques (英語) を参照してください。

レイヤ 7 負荷分散の機能

パーシステンス

パーシステンス機能により、個々のクライアントからのすべてのリクエストを同じサーバーに送信して、そのアプリケーションコンテキストを維持することができます。

Kemp LoadMaster は、次のパーシステンス手法を提供しています。

  • ソース IP アドレス
  • スーパー HTTP
  • スーパー HTTP とソース IP
  • サーバー Cookie
  • サーバー Cookie またはソース IP
  • アクティブ Cookie
  • アクティブ Cookie またはソース IP
  • すべての Cookie のハッシュ
  • すべての Cookie のハッシュまたはソース IP
  • URL ハッシュ
  • HTTP ホストヘッダー
  • HTTP クエリのハッシュ
  • 選択されたヘッダー
  • SSL のセッション ID
  • UDP セッション開始プロトコル (Session Initiation Protocol、SIP)

コンテンツスイッチング

レイヤ7 コンテンツスイッチング (URL 書き換えとも呼ばれます) により、クライアントからのリクエストに含まれるアプリケーション層からの情報を使用して、コンテンツとコンテキストに基づいてパケットを処理するのに最適なサーバーにトラフィックを誘導できます。

SSL (Secure Socket Layer) オフロード

ネットワークパケットの SSL/TLS 暗号化の処理は、リソースを集中的に使用するタスクであり、Web サーバーとアプリケーションサーバーでこれを行うとコンテンツ配信用に最適化する必要があるサーバーに追加のオーバーヘッドがかかりますが、レイヤ7 負荷分散にオフロードすることによりサーバーへの負荷を軽減します。

Kemp LoadMaster は、以下の機能を提供します。

  • 復号化と再暗号化
  • 以下を含む完全な証明書管理:
    • クライアント証明書
    • 証明書のインポートと維持
  • OCSP サポート
  • SNI サポート
  • 以下を含む完全な暗号スイート管理:
    • A 評価の Qualys スキャンをサポートするためのデフォルトのベストプラクティス
    • FIPS、ECDSA_Default、ECDSA_BestPractices などを含む事前設定された暗号スイート
    • アプリケーション用に独自の暗号スイートを作成および調整する機能
  • これを適用し、LoadMaster へのアクセスをコントロールおよび指定する機能

ヘルスチェック

ヘルスチェックは、ロードバランサーがアプリケーションサーバーとアプリケーションにクエリを実行し、正しく動作してトラフィックを受信できるかどうかを判断する手段として進化しました。負荷分散アルゴリズムは、ヘルスチェックの結果を尊重し、利用可能でタイムリーに応答できるアプリケーションサーバーとアプリケーションにのみリクエストを送信します。

ロギングと監視

レイヤ7 負荷分散は、Web サイトおよびアプリケーションサーバーとの間で送受信されるすべてのレイヤ 4-7 トラフィックを検査します。このアクティビティはすべてログに記録され、ネットワーク情報に関する監視とトレースに役立ちます。これらは分析のために専用の監視ツールに渡すことができ、疑わしいアクティビティを特定できます。ログは、ログを収集するネットワークデバイスから送信され、リモートで分析されるのがベストプラクティスです。

Kemp LoadMaster レイヤ 4-7 負荷分散の機能

LoadMaster は、レイヤ4 負荷分散のシンプルさと、レイヤ7 負荷分散が提供する、コンテンツに応じたより複雑で高機能なオプション (ヘルスチェック、FIPS 140-2 レベル 1 のサポート、キャッシュ/圧縮、コンテンツのスイッチング、自動化対応 API などを含む) を組み合わせています。

Kemp LoadMaster 負荷分散の機能については、LoadMaster 機能リストをご参照ください。

最適化された高性能ロードバランサー、LoadMaster でアプリケーション常時稼働を実現

無料試用の申し込み お問い合わせ