アプリケーション ネットワーキング サービス : Cisco LocalDirector 400 シリーズ

LocalDirector によるサーバ障害の防止

2015 年 11 月 26 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2003 年 6 月 3 日) | 英語版 (2015 年 8 月 22 日) | フィードバック


Cisco は Cisco LocalDirector のための終りの販売をアナウンスしました。 詳細については、LocalDirector 400 シリーズ 廃止および終りの販売注意および製品速報参照して下さい。


目次


概要

この資料は LocalDirector がなぜ失敗する場合があるサーバ提供し方法で情報を壊れるサーバから LocalDirector を防ぐ提供したものですか原因および原因を。

LocalDirector はこれらの理由により失敗する場合がありますサーバ:

  • サーバが新しい接続に応答しない。

  • サーバが Transmission Control Protocol(TCP; 伝送制御プロトコル)リセットを使用して接続に応答する。

  • LocalDirector 設定で data コマンドが使用されている。

  • 実サーバからの応答メッセージが受信されない。

  • LocalDirector が、サーバから TCP SYN への応答を確認できない(NO ANSWER)。

  • LocalDirector がサーバから TCP RST を受信する(RST REASSIGN)。

LocalDirector の実サーバの障害発生原因が何であるかを判定するには、問題を診断する必要があります。 show real コマンドを使用すればこれと同じような出力が表示されます:

LocalDirector (config)# show real

  Real Machines:                                                  
     Machine             Connect  State  Thresh   No Answ Reassigns    TCP Reset Reassigns   DataIn Conns 
     server2:0:0:tcp       0      Failed    8           8                      0                  0 
     server1:0:0:tcp       0      Failed    8           0                      8                  0 
     Machine - IP address or name of the server, port(if a port-bound server), bind_id, and protocol.
     Connect - The current number of connections to the server. This does not include direct connections 
	 to the server that are bridged by the LocalDirector.
     State - IS(in service), OOS(out-of-service), failed or testing.
     Thresh - Threshold value for reassignments before server is marked as failed. Default 8.
     No Answer Reassigns - Number of connections that are not answered by a real server.
     TCP Reset Reassigns - Number of connections that are reassigned because a
     real server responded with an RST packet on a new connection.
     DataIn Conns - Number of clients requesting but not receiving data.

前提条件

要件

このドキュメントに関する特別な要件はありません。

使用するコンポーネント

このドキュメントは、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

サーバ障害の原因

基本環境では、LocalDirector はさまざまな理由でサーバ障害を宣言しますが、そのすべてがサーバ側の問題です。

サーバが新しい接続に応答しない

サーバが新しい接続に応答しないと、No Answer Reassign カウンタが増加し始めます。

サーバが TCP リセットを使用して接続に応答する

サーバが TCP リセットを使用して接続に応答すると、TCP Reset Reassign 値が増加し始めます。 前の値のどちらかが threshold —デフォルトになら 8 達すれば— LocalDirector はサーバが失敗したと宣言します。 続いて LocalDirector は、再試行の後にライブ接続を指示することで、サーバをサービス状態に戻そうとします。 デフォルトは 1 分です。 障害が発生したサーバが、状態をチェックするためにライブ接続を受信するまでの時間を何分にするかを指定するには、retry コマンドを使用します。

data コマンドの使用

LocalDirector 設定で data コマンドを使用しても、サーバ障害の原因になる可能性があります。 クライアントへのオープン接続が確立されていても要求に応答するデータを送信していないサーバに対して、接続の数を制限するには、data コマンドを使用します。 TCP ハンドシェイクが行われ、HTTP GET などのクライアントからの要求が通過するまで、data コマンドは待機します。 data コマンドは、サーバがタイムアウトすることなく、要求を満たすデータを用いて応答することを確認します。

TCP ハンドシェイクの後で、サーバがクライアントのデータ要求に応答しない場合、データ カウンタには 1 が加算されます。 データ カウンタが LocalDirector の設定で指定されている数値に達すると、アプリケーション障害が原因でサーバは障害状態にあるとしてマークされます(実マシン 'x' の アプリケーション障害)。 サーバが TCP リセットを送信している理由、または接続に応答しない理由を調査します。

LocalDirector が、サーバに障害が発生したことを報告するまでの待機時間を長くしたい場合は、threshold コマンドを使用してしきい値を増やします。

LocalDirector が実サーバに送信する接続の最大数を設定するには、maxconns コマンドを使用します。 maxconns の値を削除するには、no maxconns コマンドを使用します。 maxconns コマンドのデフォルト値は 0 で、接続の制限はありません。

まず、この仮想サーバを実サーバにバインドする必要があります。 maxconns コマンドのアクションは、この仮想サーバにバインドされているすべての実サーバに適用されます。 デフォルトは無制限であるため、最大値は使用可能なリソースにのみ制限されます。 ただし、制限を設定してサーバへの過負荷を回避できます。 Reassign しきい値を、事実上無制限を意味する 0 に設定することで、サーバ状態のテストを無効にすることができます。 サーバが自動的にアウト オブ サービスになることはなく、単にタイムアウトになるだけです。 TCP リセットが行われると、カウンタの値が増えます。

応答メッセージなし

クライアントからの TCP SYN パケットが割り当てられた後、実サーバから応答メッセージが確認できない場合も、サーバに障害が発生する可能性があります。 これは、次の 2 つの形式で発生します。

  • 実サーバがダウンしているか、応答できない。

  • クライアントに戻るパスで、実サーバの応答が LocalDirector を迂回している。 LocalDirector は応答を確認できず、Network Address Translation(NAT; ネットワーク アドレス変換)を使用してパケットを仮想アドレスに戻すことができない。

サーバに障害が発生したと見なすまでの期間を短くするには、しきい値および reassign 値を小さくして障害カウンタを調整します。

LocalDirector によるサーバ障害の防止

接続を拒否するサーバ障害を LocalDirector で防止するには、しきい値および reassign 値を増やします。 たとえば、1 秒間に 400 の接続を受信するサイトでは、しきい値を 30 まで増やさなければならない場合があります。

データ

データコマンドからの出力例はここにあります:

localdirector(config)# data ? 
   data {real_id | virtual_id} [number of connections]  
   localdirector(config)# data 192.168.1.1:0:0:tcp 30

注: virtual_id が指定されている場合、その仮想サーバによって表されているすべての実サーバが影響を受けます。

show real

show real コマンドは、それぞれの実サーバの、未応答の接続の数を示します。

localdirector(config)# show real
   Real Machines:
                                                       No Answer    TCP Reset   DataIn 
   Machine                   Connect   State  Thresh   Reassigns    Reassigns   Conns 
   192.168.1.1:0:0:tcp          0       OOS     8         0             0         0

show data

show data コマンドは、data コマンドで設定されている値を示します。

localdirector(config)# show data  
        Real Machine(s)                  DataIn 
        192.168.1.1:0:0:tcp                50 

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 15061