Catalyst 6500 シリーズ スイッチ コンテント スイッチング モジュール インストレーション コンフィギュレーション ノート Software Release 4.1(2)
実サーバおよびサーバ ファームの設定
実サーバおよびサーバ ファームの設定
発行日;2012/01/07 | ドキュメントご利用ガイド | ダウンロード ; この章pdf | フィードバック

目次

実サーバおよびサーバ ファームの設定

サーバ ファームの設定

実サーバの設定

DFP の設定

クライアントNATプールの設定

サーバ開始型接続の設定

URL ハッシュの設定

URLハッシュ プレディクタの設定

先頭パターンおよび終了パターンの設定

実サーバおよびサーバ ファームの設定

この章では、サーバおよびサーバ ファームの設定方法について説明します。この章の構成は次のとおりです。

「サーバ ファームの設定」

「実サーバの設定」

「DFP の設定」

「クライアントNATプールの設定」

「サーバ開始型接続の設定」

「URL ハッシュの設定」

サーバ ファームの設定

サーバ ファームまたはサーバ プールは、同一コンテンツが含まれるサーバの集まりです。サーバ ファームを設定してサーバを追加するとき、およびサーバ ファームを仮想サーバにバインドするときは、サーバ ファーム名を指定します。サーバ ファームを設定する手順は、次のとおりです。

サーバ ファーム名を指定します。

ロードバランシング アルゴリズム(プレディクタ)およびファームの属性を設定します。

1組の実サーバを設定または指定します(「実サーバの設定」を参照)。

実サーバの属性を設定または指定します

各サーバ ファームに帯域内ヘルス モニタリングを設定することもできます(「帯域内ヘルス モニタリングの設定」を参照)。サーバ ファームにリターン コード マップを割り当てると、リターン コードの解析を設定することができます(「HTTP リターン コード チェックの設定」を参照)。

サーバ ファームを設定する手順は、次のとおりです。

 

コマンド
目的

ステップ 1

Router(config-module-csm)# serverfarm serverfarm-name

サーバ ファームを作成し、名前を付けて、サーバ ファーム コンフィギュレーション モードを開始します12

ステップ 2

Router(config-slb-sfarm)# predictor [ roundrobin | leastconns | hash url | hash address [ source | destination ] [ ip-netmask ] | forward ]]

ロードバランシング予測アルゴリズムを設定します 2。指定しなかった場合のデフォルトは roundrobin です。

ステップ 3

Router(config-slb-sfarm)# nat client client-pool-name

(オプション)NATモード クライアントをイネーブルにします2「クライアントNATプールの設定」を参照)。

ステップ 4

Router(config-slb-sfarm)# no nat server

(オプション)ロードバランシング決定時に宛先IPアドレスを変更しないことを指定します。

ステップ 5

Router(config-slb-sfarm)# probe probe-name

(オプション)probeコマンドを使用して定義できるプローブにサーバ ファームを関連付けます2

ステップ 6

Router(config-slb-sfarm)# bindid bind-id

(オプション)1つの物理サーバを複数のサーバ ファームにバインドして、それぞれに異なる重み付けを伝えます2 bindid コマンドは DFP で使用されます。

ステップ 7

Router(config-slb-sfarm)# failaction {purge | reassign}

(オプション)実サーバとの接続が失敗した場合の動作を設定します。2

ステップ 8

Router(config-slb-sfarm)# health retries 20 failed 600

サーバ ファーム内のすべてのサーバに帯域内ヘルス モニタリングを設定します。

ステップ 9

Cat6k-2(config-slb-sfarm)# retcode-map NAME_OF_MAP

HTTP リターンエラー コード チェックを設定します(タイプ レコードのマップの設定が必要です)。

ステップ 10

Router(config-slb-sfarm)# real ip_address

実サーバを定義します。

ステップ 11

Router(config-slb-real)# inservice

実サーバをイネーブルにします。

ステップ 12

Router# show module csm slot serverfarm serverfarm-name [detail]

1 つまたはすべてのサーバ ファームに関する情報を表示します。

1.モードまたはサブモードを終了するには、exitコマンドを入力します。メニューのトップ レベルに戻るには、end コマンドを入力します。

2.デフォルトの設定に戻すには、このコマンドのno形式を使用します。

最小接続プレディクタを設定する場合は、スロースタート メカニズムを実行して、サービス状態になったばかりのサーバに高いレートの新しい接続を送信しないようにします。アクティブ接続数が最も少ない実サーバに、最小接続プレディクタを使用して次のサーバ ファーム接続要求を割り当てます。

新しい環境変数 REAL_SLOW_START_ENABLE が今回のリリースから組み込まれています。この目的は、サービスを開始するときに実サーバが起動するレートを制御することです。スロースタート起動は、最小接続方式を使用して設定されているサーバファーム専用です。

この変数の設定可能な範囲は、0 ~ 10 です。0 を設定すると、スロー スタート機能はディセーブルになります。1 ~ 10 の値は、新規にアクティブになったサーバの起動速度を指定します。1 を指定すると、起動速度が最も遅くなります。10 を指定すると、CSM は新規にアクティブになったサーバにより多くの要求を割り当てます。デフォルト値は 3 です。

設定値が N の場合、CSM は初めから 2 ^ N(2 の N 乗)の要求を新規アクティブ サーバに割り当てます(その時点で終了した接続がないと仮定)。このサーバがより多くの接続を終了すると、起動がより速くなります。この起動が停止するのは、新規にアクティブになったサーバが現在オープンしている接続数とサーバ ファーム内の他のサーバのオープンしている接続数が同じになった場合です。

次に、最小接続( leastconns )アルゴリズムを使用してp1_natという名前のサーバ ファームを設定する例を示します。

Router(config-module-csm)# serverfarm pl_nat
Router(config-slb-sfarm)# predictor leastconns
Router(config-slb-sfarm)# real 10.1.0.105
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.1.0.106
Router(config-slb-real)# inservice

実サーバの設定

実サーバはサーバ ファームに割り当てられた物理装置です。実サーバはロードバランス対象のサービスを提供します。クライアント要求を受信したサーバは、CSMに応答を送信し、CSMからクライアントにその応答が転送されます。

実サーバ コンフィギュレーション モードで実サーバを設定するには、実サーバをサーバ ファームに割り当てるときにサーバのIPアドレスおよびポートを指定します。サーバ ファーム モードから実サーバ コンフィギュレーション モードを開始して、実サーバを追加します。

実サーバは次のように設定できます。

no inservice:CSM サービスは利用できません。適用される固定(sticky)および新規の接続はありません。


) no inserviceを指定した場合、CSMはオープンしている接続を解除しません。オープンしている接続を解除するには、clear module csm slot connectionコマンドを使用して手作業でこの操作を実行する必要があります。


inservice:CSM はサービス実行中です。モジュールに対して固定(sticky)および新規接続を設定できます。

inservice standby:CSM はスタンバイ状態です。固定(sticky)を設定できます。新規接続は許可されていません。

実サーバを設定するには、次の作業を実行します。

 

コマンド
目的

ステップ 1

Router(config-slb-sfarm)# real i p-address [ port ]

実サーバをサーバ ファームのメンバーとして指定し、実サーバ コンフィギュレーション モードを開始します。オプションの変換ポートを設定することもできます3 4

ステップ 2

Router(config-slb-real)# weight weighting-value

(オプション)ラウンドロビンまたは最小接続が選択されている場合は、仮想サーバ予測アルゴリズムの重み付け値を設定して、サーバ ファーム内のその他のサーバに対する相対的なサーバの作業負荷容量を割り当てます 2


) サーバの順序が先頭(最初のサーバ)から開始できるのは、設定時またはサーバ ステートの変更(プローブまたはDFPエージェントのいずれか)時のみです。


最小接続プレディクタを設定する場合は、スロースタート メカニズムを実行して、サービス状態になったばかりのサーバに高いレートの新しい接続を送信しないようにします。

ステップ 3

Router(config-slb-real)# maxconns max-conns

(オプション)実サーバのアクティブな接続数の最大値を設定します 2 。アクティブな接続数が指定した最大値に到達すると、接続数が最小スレッシュホールドより小さくなるまで、新しい接続が実サーバに送信されなくなります。

ステップ 4

Router(config-slb-real)# minconns min-conns

(オプション)最小接続スレッシュホールドを設定します2

ステップ 5

Router(config-slb-real)# inservice

CSMで使用できるように、実サーバをイネーブルにします25

ステップ 6

Router# show module csm slot [sfarm serverfarm-name ] [detail]

(オプション)設定された実サーバに関する情報を表示します。sfarmオプションを指定すると、特定の仮想サーバに関連付けられた実サーバに関する情報だけが表示されます。detailオプションを指定すると、実サーバの詳細情報が表示されます。

ステップ 7

Router# show module csm slot [ vserver virtserver-name ] [ client ip-address ] [ detail ]

CSMに対するアクティブな接続が表示されます。vserverオプションを指定すると、特定の仮想サーバに関連付けられた接続に関する情報だけが表示されます。clientオプションを指定すると、特定のクライアントの接続だけが表示されます。detailオプションを指定すると、接続に関する詳細情報が表示されます。

3.モードまたはサブモードを終了するには、exitコマンドを入力します。メニューのトップ レベルに戻るには、end コマンドを入力します。

4.デフォルトの設定に戻すには、このコマンドのno形式を使用します。

5.設定する実サーバごとに、ステップ1~ステップ5を繰り返します。

次に、実サーバを作成する例を示します。

Router(config-module-csm)# serverfarm serverfarm
Router(config-slb-sfarm)# real 10.8.0.7
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.8.0.8
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.8.0.9
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.8.0.10
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.1.0.105
Router(config-slb-real)# inservice
Router(config-slb-sfarm)# real 10.1.0.106
Router(config-slb-sfarm)# inservice
Router(config-slb-real)# end
Router# show mod csm slot reals detail
Router# show mod csm slot conns detail
 

no inservice コマンドを使用することによって、実サーバがサービスを停止すると、CSM は適切にサーバをシャットダウンします。このコマンドを使用すると、既存のセッションは完了またはタイム アウトされます。ただし、新しいセッションはすべて実サーバにロードバランスされるのではなく、この仮想サーバ用のサーバ ファーム内の他のサーバにロードバランスされます。


) no inserviceを指定した場合、CSMはオープンしている接続を解除しません。オープンしている接続を解除するには、clear module csm slot conn コマンドを使用して手作業でこの操作を実行する必要があります。


スタンバイ状態では、ファイアウォールに障害が発生した場合、失敗したアクションを再度割り当てることができます。ファイアウォール接続の再割り当てを行うように設定するには、次の3つの適切なシャットダウン オプションを使用します。

サーバ ファームに対して失敗したアクションの再割り当てを設定します。

アクションの失敗に備えて、ほかの実サーバのバックアップとして実サーバの1つを割り当てます。

バックアップ実サーバは、inserviceを有効にするか、またはスタンバイ バックアップ状態に設定できます。スタンバイ状態では、プライマリ実サーバに障害が発生した場合にのみ、バックアップ実サーバが新規接続を受け付けます。

サービスから実サーバを削除する例を示します。

Router(config-slb-real)# no inservice
 

サーバ ファームの設定の詳細については、「サーバ ファームの設定」を参照してください。

実サーバがヘルス プローブに失敗し、サービスが停止される場合も、CSMは適切なサーバ シャットダウンを実行します。CSM ヘルス プローブの設定の詳細については、「ヘルス モニタリング用プローブの設定」を参照してください。

要求するクライアントが使用不能なサーバ(Cookie、SSL ID、送信元IPなどを使用している)に固定されている場合、この接続はファーム内の使用可能なサーバに分散されます。使用不能なサーバに固定されている場合は、 inservice standby コマンドを入力してください。 inservice standby コマンドを入力すると、このサーバに固定されている接続および既存の接続があるサーバを除き、いかなる接続もスタンバイ実サーバに送信されません。指定のスタンバイ時間が経過すると、 no inservice コマンドを使用して、既存のセッションだけを実サーバに送信することができます。次に、固定(sticky)接続がサーバ ファーム内のサービス中の実サーバに送信されます。

DFP の設定

Dynamic Feedback Protocol(DFP)を設定すると、サーバから CSM にフィードバックしてロードバランシングを強化することができます。DFP により、(物理サーバ上の)ホスト エージェントは仮想サービスを提供するホスト システムのステータスの変化を動的に報告できます。


) DFPエージェントはオプションのホスト マシンに配置できます。DFPエージェントは、エージェントによって管理される実サーバのIPアドレスおよびポート数には関係しません。DFPマネージャは、DFPエージェントとの接続を確立し、DFPエージェントからロード ベクターを受信します。


DFPを設定する手順は、次のとおりです。

 

コマンド
目的

ステップ 1

Router(config-module-csm)# dfp [password password ]

DFPマネージャを設定し、オプションのパスワードを指定し、DFPエージェント サブモードを開始します67

ステップ 2

Router(config-slb-dfp)# agent ip-address port [ activity-timeout [ retry-count [ retry-interval ]]]

キープアライブ メッセージの間隔、連続する接続試行回数または無効なDFPレポート数、および接続試行間隔を設定します2

ステップ 3

Router# show module csm slot dfp [ agent [ detail | ip-address port ] | manager [ ip_addr ] | detail | weights ]

DFPマネージャおよびエージェント情報を表示します。

6.モードまたはサブモードを終了するには、exitコマンドを入力します。メニューのトップ レベルに戻るには、end コマンドを入力します。

7.デフォルトの設定に戻すには、このコマンドのno形式を使用します。

次に、DFPの設定例を示します。

Router(config-module-csm)# dfp password password
Router(config-slb-dfp)# agent 123.234.34.55 5 6 10 20
Router(config-slb-dfp)# exit

クライアントNATプールの設定

クライアントの Network Address Translation(NAT; ネットワーク アドレス変換)プールを設定すると、NAT によってクライアント要求の送信元 IP アドレスがサーバ側 VLAN の IP アドレスに変換されます。 nat コマンドのserverfarmサブモードでNATプール名を使用して、クライアントNATプール用として設定すべき接続を指定します。

クライアントNATプールを設定するには、次の作業を実行します。

 

コマンド
目的

ステップ 1

Router(config-module-csm)# natpool pool-name start-ip end-ip netmask mask

コンテント スイッチング NAT を設定します。このコマンドを使用するには、1 つ以上のクライアント アドレス プールを作成する必要があります89

ステップ 2

Router(config-module-csm)# serverfarm serverfarm-name

serverfarmサブモードを開始して、クライアントNATを適用します。

ステップ 3

Router(config-slb-sfarm)# nat client clientpool-name

設定されたNATプールをサーバ ファームに関連付けます。

ステップ 4

Router# show module csm natpool [name pool-name ] [detail]

NATの設定を表示します。

8.モードまたはサブモードを終了するには、exitコマンドを入力します。メニューのトップ レベルに戻るには、end コマンドを入力します。

9.デフォルトの設定に戻すには、このコマンドのno形式を使用します。

次に、クライアントNATプールを設定する例を示します。

Router(config)# natpool pool1 102.36.445.2 102.36.16.8 netmask 255.255.255.0
Router(config)# serverfarm farm1
Router(config-slb-sfarm)# nat client pool1
 

HTTP のヘッダー挿入とは、CSM がクライアント IP アドレスなどの情報を HTTP ヘッダーに挿入する機能です。HTTPのヘッダー挿入は、ヘッダー マップ内から設定します。設定については、「HTTP のヘッダー挿入」を参照してください。

サーバ開始型接続の設定

サーバ用の NAT を使用すると、実サーバで接続を開始することができます。また、サーバ NAT コンフィギュレーション内に一致するエントリがない接続を開始する場合は、サーバに対してデフォルト設定を使用することができます。デフォルトでは、NATを使用しなくてもCSMはサーバを送信元とする接続を確立できます。

サーバ用 NAT を設定する手順は、次のとおりです。

 

コマンド
目的

ステップ 1

Router(config)# static [drop | nat [ ip-address | virtual]]

サーバを送信元とする接続を設定します。オプションにより、接続のドロップ、指定されたIPアドレスによるNAT設定、接続に関連付けられた仮想IPアドレスによるNAT設定を行うこともできます1011

ステップ 2

Router(config-slb-static)# real ip-address [ subnet-mask ]

スタティック NATサブモードを設定し、サーバにこのNATオプションを指定します。複数のNATコンフィギュレーション オプションで同じ実サーバを使用することはできません。

10.モードまたはサブモードを終了するには、exitコマンドを入力します。メニューのトップ レベルに戻るには、end コマンドを入力します。

11.デフォルトの設定に戻すには、このコマンドのno形式を使用します。

URL ハッシュの設定

接続用のサーバ ファームを選択すると、そのサーバ ファーム内の特定の実サーバを選択できます。最小接続、ラウンドロビン、またはURLハッシュのいずれかで、実サーバを選択できます。

URL ハッシュとは、レイヤ7接続に対応するロードバランシング プレディクタです。サーバ ファーム単位で、CSM に URL ハッシュを設定できます。CSM は URL に基づいたハッシュ値を使用して実サーバを選択します。このハッシュ値は、URL全体で計算する場合と URL の一部を使用して計算する場合があります。URL の一部分でハッシュする場合、URL の中で先頭パターンと終了パターンを指定し、指定された先頭パターンから終了パターンまでの URL 部分だけがハッシュされるようにします。CSM はソフトウェアリリース 2.1(1)から URL ハッシュをサポートしています。

先頭パターンと終了パターンを指定しなかった場合(「先頭パターンおよび終了パターンの設定」を参照)、URL全体がハッシュされ、実サーバの選択に使用されます。

URLハッシュ プレディクタの設定

URL全体を使用するか、それとも先頭パターンおよび終了パターンを使用するかに関係なく、URLハッシュ プレディクタを使用する予定のすべてのサーバ ファームについて、URLハッシュを設定する必要があります。

サーバ ファームにロードバランシング プレディクタとしてURLハッシュを設定する手順は、次のとおりです。

 

コマンド
目的
Router(config-slb-sfarm)# predictor hash url

サーバ ファームにURLハッシュおよびロードバランシング プレディクタを設定します。

次に、サーバ ファームに URL ハッシュおよびロードバランシング プレディクタを設定する例を示します。

Router(config)# mod csm 2
Router(config-module-csm)# serverfarm farm1
Router(config-slb-sfarm)# predictor hash url
Router(config-slb-sfarm)# real 10.1.0.105
Router(config-slb-real)# inservice
Router(config-slb-real)# exit
 

URLハッシュを使用すると、キャッシュ サーバの性能が向上します。ただし、ハッシュ メソッドは実サーバ用の重み付けを認識しません。実サーバに割り当てられた重み付けは、ラウンドロビンおよび最小接続プレディクタ メソッドで使用されます。


) サーバの順序が先頭(最初のサーバ)から始められるのは、設定時またはサーバ ステートの変更(プローブまたはDFPエージェントのいずれか)時のみです。


実サーバに異なる重み付けを作成すると、サーバ ファーム内のキャッシュ サーバの複数のIPアドレスを表示できます。また、同じIPアドレスを異なるポート番号で使用することもできます。


) サーバ ウェイトはハッシュ プレディクタには使用されません。


URLハッシュ プレディクタを使用して、重みを付けて実サーバを設定する手順は、次のとおりです。

 

コマンド
目的

ステップ 1

Router(config-slb-sfarm)# serverfarm MYFARM

MYFARMという名前のサーバを作成します。

ステップ 2

Router(config-slb-sfarm)# real 1.1.1.1 80

ポート80の実サーバを指定します。

ステップ 3

Router(config-slb-sfarm)# inservice

サービス状態の実サーバをイネーブルにします。

ステップ 4

Router(config-slb-sfarm)# real 1.1.1.1 8080

ポート8080の実サーバを指定します。

ステップ 5

Router(config-slb-sfarm)# inservice

サービス状態の実サーバをイネーブルにします。

先頭パターンおよび終了パターンの設定

仮想サーバ レベルで先頭パターンおよび終了パターンを設定することができます。定義したパターンは、URLハッシュがイネーブルになっている仮想サーバですべてのポリシーが割り当てられている、あらゆるサーバ ファームに適用されます。

先頭パターンおよび終了パターンによって、ハッシュ対象になるURL部分が区切られ、その仮想サーバに割り当てられているポリシーに属するサーバ ファームから実サーバを選択するためのプレディクタとして使用されます。

URL全体ではなく、URLの一部分をハッシュする場合は、 vserver vserver-name サブモードで url-hash begin-pattern pattern-aコマンドおよび url-hash end-pattern pattern-bコマンドを使用して、先頭パターンおよび終了パターンを指定します。先頭パターンから終了パターンまでのハッシュが行われます。

たとえば、次のURLで先頭パターンを c&k= に、終了パターンを & にした場合は、 c&k=c の部分だけがハッシュされます。

http://quote.yahoo.com/q?s=csco&d= c&k=c1 &t=2y&a=v&p=s&l=on&z=m&q=l\


) 先頭パターンおよび終了パターンは、固定定数文字列に限定されます。汎用正規表現をパターンとして指定することはできません。先頭パターンを指定しなかった場合、URLの先頭からハッシュが開始されます。終了パターンを指定しなかった場合、URLの末尾でハッシュが終了します。


次に、URLハッシュの先頭パターンおよび終了パターンを設定する例を示します。

Router(config-module-csm)#
Router(config-module-csm)# vserver vs1
Router(config-slb-vserver)# virtual 10.1.0.81 tcp 80
Router(config-slb-vserver)# url-hash begin-pattern c&k= end-pattern &
Router(config-slb-vserver)# serverfarm farm1
Router(config-slb-vserver)# inservice
Router(config-slb-vserver)#
Router(config-slb-vserver)# exit
Router(config-module-csm)# exit