このトピックでは、ネットワーク計画担当者が CBR コンポーネントを Caching Proxy と共に インストールおよび構成する際に考慮する必要のある事項について説明します。
CBR コンポーネントは Caching Proxy と連携し、HTTP および SSL トラフィック のロード・バランスを取って、要求を転送します。CBR を使用すると、cbrcontrol コマンドによって CBR 構成ファイルを使用して構成するサーバーのロード・バランシングを行うことができます。
CBR の 3 つの主な機能である executor、manager、 および advisor は互いに対話して、着信要求をサーバー間でバランスを取って ディスパッチします。ロード・バランシング要求とともに、executor は、新規接続と活動接続の数をモニターし、この情報を manager に提供します。
CBR コンポーネントを使用すれば、クライアント要求内容の正規表現一致に基づいて要求を処理しなければならない一組のサーバーを指定することができます。CBR を 使用してサイトを区分化することによって、異なるコンテンツまたはアプリケーション・サービスが別々のサーバー・セットで処理されるように できます。この区分化は、サイトにアクセスするクライアントには見えません。
サイトを分割する 1 つの 方法は、いくつかのサーバーを CGI 要求のみを処理するために割り当て、別のサーバー・セットをその他のすべての要求を 処理するために割り当てる方法です。サイトを分割すると、 集中的に数値計算を行う CGI スクリプトが原因で通常の HTML トラフィックに対して サーバーがスローダウンするのを防ぐことができ、クライアントにとっては全般的な応答時間が短くなります。この方式を使用すれば、通常の要求に対してより強力なワークステーションを割り当てることもできます。この割り当て により、すべてのサーバーをアップグレードする労力をかけずに、より短い応答時間をクライアントに 提供できます。また、CGI 要求に対してより強力なワークステーションを割り当てることもできます。
もう 1 つのサイト区分化方法は、登録が必要なページにアクセスするクライアントを 1 つのサーバー・セットに割り当て、その他のすべての要求を別のサーバー・セットに割り当てることです。この区分化 は、信頼して登録したクライアントによって使用される可能性のあるリソース を、サイトを偶然見た人が占有してしまうことを防止します。また、登録済みのクライアントにサービスを提供するために、もっと強力な ワークステーションを使用することもできます。
より柔軟性の高い優れたサービスを 提供できるように、上記の方法を組み合わせることもできます。
CBR では 各タイプの要求に対して複数のサーバーを指定できるため、クライアント応答が最良となるように要求のロード・バランスを取ることができます。 各タイプの内容に複数のサーバーを割り当てることができるため、1 つのワークステーションまたはサーバーが失敗してもユーザーは保護されます。CBR は、この失敗を認識し、引き続きクライアント要求をセット内の他のサーバーでロード・バランシングします。
Caching Proxyは、そのプラグイン・インターフェースを使用して CBR プロセスと通信します。この通信が機能するために、CBR はローカル・マシン上で 実行していなければなりません。2 つの別個のプロセスがあるため、 Caching Proxy の複数インスタンスが実行して、CBR の 1 つのインスタンス と連動することができます。このセットアップを、複数の Caching Proxy 間でアドレスまたは 機能を分離するように構成したり、マシンのリソース使用率が向上するようにクライアント・トラフィックを いくつかの Caching Proxy で処理するように構成したりできます。プロキシー・インスタンスは、トラフィック要件に最も適した内容によって、別々のポート上で listen したり、または同一ポート上で固有の IP アドレスにバインドしたりすることができます。
CBR および Caching Proxy は、指定のルール・タイプを使用して HTTP 要求数を調べます。Caching Proxy は、 実行していれば、クライアント要求を受け入れ、最適なサーバーについて CBR コンポーネントに照会します。この照会に基づき、CBR は優先順位が付けられたルールのセットとこの要求を突き合わせます。ルールと一致した場合は、事前に構成されたサーバー・セットから適切なサーバーを選択します。最後に、CBR は選択したサーバーを Caching Proxy に通知し、そのサーバーで要求が代行されます。
あるクラスターをロード・バランシングの対象として定義した後、 そのクラスターへのすべての要求に、サーバーを選択するルールがあることを 確認する必要があります。特定の要求と一致しないルールが見つかると、クライアントは Caching Proxy からエラー・ページを受け取ります。すべての要求をあるルールと一致させるための最も簡単な方法は、常に真であるルールを高い優先順位番号で作成することです。このルールを使用する サーバーは、より低い優先順位番号を持つルールで明示的に処理されない要求を すべて処理できなければなりません。優先順位番号が低いルールが先に 評価されます。
ルール・ベースのロード・バランシングについて詳しくは、『使用中または使用不可のサーバーに対するトラフィックを管理するルールの構成』トピック を参照してください。
Caching Proxy 付きの CBR は、クライアントからプロキシーへの (クライアント - プロキシー・サイド) SSL 送信と、プロキシーから SSL サーバーへの (プロキシー - サーバー・サイド) サポート送信を受信できます。CBR 構成内でサーバーに SSL ポートを 定義してクライアントから SSL 要求を受け取るようにすることで、CBR を使用してセキュア (SSL) サーバー間でロード・バランスを取る 完全に保護されたサイトを保守できます。
proxy uri_pattern url_pattern address
ここで、 cbrcontrol server add cluster@443 mapport 80
mapport のポート番号は、任意の正整数値にできます。デフォルトは、クライアントからの着信ポートのポート番号値です。Executor
Port:443
Server1 mapport 80
Server2 mapport 8080
Port:443
Server3 mapport 80
Server4 mapport 8080
Advisor ssl2http 443