Cisco Global Site Selector CLI-Based グローバル サーバ ロード バランシング コンフィギュレーション ガイド Software Version 2.0
DNS スティッキの設定
DNS スティッキの設定
発行日;2012/02/03 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 3MB) | フィードバック

目次

DNS スティッキの設定

DNS スティッキの概要

ローカル DNS スティッキ

スティッキ データベース

グローバル DNS スティッキ

GSS スティッキ ピア メッシュ

スティッキ メッシュの不一致解決

スティッキ ピア メッシュ内の通信

CLI へのログインおよび特権 EXEC モードのイネーブル化

DNS スティッキのクイック スタート ガイド

GSS のシステム クロックと NTP サーバの同期化

プライマリ GSSM CLI を使用したスティッキの設定

DNS スティッキの設定

DNS 規則でのスティッキのイネーブル化

スティッキ DNS 規則の概要

VIP タイプの回答グループを使用する DNS 規則へのスティッキの追加

スティッキ グループの作成

DNS スティッキ グループの概要

DNS スティッキ グループの作成

スティッキ グループの IP アドレス ブロックの削除

スティッキ グループの削除

スティッキ データベースのエントリの削除

スティッキ データベース エントリのダンプ

スティッキ データベースの定期的なバックアップの実行

スティッキ データベース エントリのロード

トラブルシューティングを目的としたローカル レベルでの GSS DNS スティッキのディセーブル化

DNS スティッキの設定

この章では、クライアント D プロキシからの要求に回答する際に、GSS が Domain Name System(DNS; ドメイン ネーム システム)スティッキをサポートするように設定する方法について説明します。GSS は、ローカル DNS スティッキも、また GSS ネットワーク ピア間でのグローバル DNS スティッキもサポートします。

この章の主な内容は、次のとおりです。

DNS スティッキの概要

DNS スティッキのクイック スタート ガイド

GSS のシステム クロックと NTP サーバの同期化

プライマリ GSSM CLI を使用したスティッキの設定

トラブルシューティングを目的としたローカル レベルでの GSS DNS スティッキのディセーブル化

各 GSS は、GSS デバイスの スティッキ アプリケーション メッシュ統計情報を表示する包括的な show CLI コマンドをサポートしています。さらに、プライマリ GSSM GUI では、GSS ネットワークの スティッキ 統計情報も表示されます。スティッキ 統計情報の表示についての詳細は、「GSS グローバル サーバ ロードバランシング統計情報の表示」を参照してください。

DNS スティッキの概要

スティッキ性は、固定回答または回答キャッシングとも呼ばれ、これによって GSS はクライアント D プロキシに返された DNS 応答を記憶し、その後クライアント D プロキシが同じ要求を行った場合に同じ回答を返すことができます。DNS 規則でスティッキ機能をイネーブルにすると、GSS は、元のバーチャル IP(VIP)アドレスが引き続き使用可能であれば、要求側クライアント D プロキシに対して、ベストエフォート方式で常に同一の A レコード応答を提供します。

サイトをブラウズする多くのユーザにとって、新しいサイトへのリダイレクトは透過的に実行されます。しかし、e- コマースやその他のトランザクションを実行していると、リダイレクト時に接続が切断され、e- コマース トランザクションが失われるという経験をしたユーザもいるはずです。GSS で DNS スティッキをイネーブルにすれば、e- コマース クライアントはトランザクションの間、特定のサーバへの接続が維持され、たとえクライアントのブラウザが DNS マッピングをリフレッシュしても、接続が切断されなくなります。

ブラウザの中には、ブラウザ インスタンスのライフタイムの間、または数時間、クライアントの接続を維持できるものもあれば、30 分の接続制限を超えると 再度 DNS 解決を必要とするものもあります。このような時間制限は、e- コマース トランザクションを完了するのに十分な長さとは限りません。新たな DNS 解決の結果、クライアントは元のサーバとは異なるサーバに接続され、トランザクションが中断してしまう可能性もあります。DNS スティッキは、DNS再解決が発生しても、クライアントがトランザクションを完了できるようにするために役立ちます。

GSS の DNS スティッキに関して、ここで説明する内容は次のとおりです。

ローカル DNS スティッキ

スティッキ データベース

グローバル DNS スティッキ

ローカル DNS スティッキ

ローカル DNS スティッキを設定すると、各 GSS デバイスは、同じ GSS デバイスから同じドメイン名へのその後のクライアント D プロキシ要求が最初の要求と同じロケーションに固定されるように試みます。DNS スティッキは、あるクライアント D プロキシから特定のホステッド ドメインまたはドメイン リストへのすべての要求に対し、ユーザが設定可能なスティッキ非アクティブ間隔の間、回答が有効である限り、GSS が同じ回答を与えることを保証します。

各 GSSは、その GSS が要求側クライアント D プロキシに送信する回答に基いて、ローカル スティッキ データベースをダイナミックに確立し、維持します。その後、同じクライアント D プロキシからの要求を受信し、データベース内の回答が有効であれば、GSS はキャッシュされている回答をクライアント D プロキシに返します。

GSS がスティッキ ロードバランシング動作を実行するように設定するには、DNS 規則と分散句でオプションを設定します。DNS 規則で使用されるスティッキ方式として、ホステッド ドメインとの一致またはホステッド ドメイン リストとの一致を選択します。ドメインに対するスティッキを指定した場合、GSS はそのドメインに対するクライアント D プロキシからのすべての要求に同じスティッキ回答を提供します。ドメイン リストに対するスティッキを指定した場合、GSS はそのドメイン リスト内のすべてのドメインに対するクライアント D プロキシからの要求すべてに同じスティッキ回答を提供します。

GSS は、クライアントにスティッキ回答を返す前に、キープアライブ状態を確認します。リソースの状態による GSS の動作は次のとおりです。

リソースが使用可能な場合(オンライン状態)、GSSはこの回答を D プロキシに返す DNS 応答として使用します。

リソースは使用可能(オンライン状態)だが、その回答に対応する VIP が過負荷状態である場合、GSS は引き続き、この回答をD プロキシに返す DNS 応答として使用します。スティッキは、常に、関連づけられている DNS 規則の負荷しきい値超過よりも優先されます。

リソースが使用不可(オフライン状態)の場合、GSS は新しい回答を選択し、前の回答の代わりに、この回答をスティッキ データベースに挿入します。

スティッキ データベース

スティッキ データベースは、GSS がローカル レベルまたはグローバル レベルで DNS スティッキに関する判断を行う際に、コア インテリジェンスとして使用されます。GSS は、クライアント D プロキシから要求を収集し、これらの要求をスティッキ データベースとしてメモリに保存します。要求は、クライアント D プロキシ、または D プロキシ IP アドレスのリストを表すデータベース ID(スティッキ グループとして設定、「スティッキ グループの作成」を参照)によって識別できます。D プロキシ IP アドレスは、グローバル サブネット マスクがデフォルトの 255.255.255.255 以外の値に設定されている場合には、スティッキ グローバル ネットマスクの形式にすることも可能です。

スティッキ データベースには、DNS 規則と一致する各要求への回答が保存されます。保存される回答は、単一ドメイン(ワイルドカード表現を含む)に対するものもあれば、設定されたドメイン リストに対するものもあります。これらのコンポーネントは、DNS応答のルックアップ、保存、スティッキの持続性に GSS が使用する各スティッキ データベース キーを構成します。

プライマリ GSSM はスティッキ グループの作成をサポートしています。したがって、各 GSS デバイスがそのスティッキ データベースに保存する D プロキシ IP アドレスの複数のブロックを単一エントリとして設定できます。このようにすると、GSS は、複数の D プロキシに対して、スティッキ データベース内のエントリを 1 つだけ使用し、複数のエントリを使用せずにすみます。GSS は 1 つのスティッキ グループ内のすべての D プロキシを単一の D プロキシとして処理します。

スティッキ データベース内のエントリはすべて、ユーザが指定したグローバル スティッキ 無活動タイムアウトに基いて、エージングアウトされます。スティッキ無活動タイムアウト値は、回答がスティッキ データベース内で有効性を保つ期間です。GSS は、要求側クライアントに回答を返すたびに、その回答の有効時間をこの値にリセットします。クライアントがその回答を要求せずに、スティッキ無活動タイムアウト値が経過すると、GSS はその回答を無効とみなし、スティッキ データベースから削除します。GSS のグローバル スティッキ無活動タイムアウト デフォルト値を指定することも、また各 DNS 規則の無活動タイムアウト値を変更することもできます。


) スティッキ無活動タイムアウトは、指定値が経過してから 5 分以内に実行されます。各エントリは、設定されたスティッキ無活動タイムアウト値の間はスティッキ データベース内に維持されます。また、指定値を経過後5分までは、スティッキ データベース内に置かれている可能性があります。


DNS 要求の受信時に、GSS は D プロキシ IP アドレス(またはスティッキ グループ ID)と要求されたホステッド ドメインまたは要求内のドメイン リスト情報に基いて、スティッキ データベースを検索し、一致するエントリを探します。一致するエントリが見つかると(ヒット)、GSSは前の DNS 回答を要求側 D プロキシに返し、ユーザが設定したスティッキ無活動タイムアウトを最初の値にリセットします。一致するエントリが見つからないと(ミス)、GSS はスティッキ回答を返さず、その代わり、その要求に対して通常のロードバランシングを実行して、新しい回答を見つけだし、スティッキ データベースに新しいエントリを追加します。

GSS は、スティッキ データベース内に最大 400,000 のエントリをサポートします。スティッキ データベース内のエントリ数が 400,000 に近づくと、GSS は残り時間の最小パーセンテージに基いて自動的にデータベースからエントリを削除します。

グローバル DNS スティッキ

ここでは、グローバル DNS スティッキ機能と、ピア メッシュで機能する GSS の動作について説明します。具体的な内容は次のとおりです。

GSS スティッキ ピア メッシュ

スティッキ メッシュの不一致解決

スティッキ ピア メッシュ内の通信

GSS スティッキ ピア メッシュ

グローバル DNS スティッキがイネーブルに設定されると、同じネットワーク内の各 GSS デバイスは、他の GSS デバイスとスティッキ データベースの回答を共有します。メッシュ内の各 GSS デバイスは、クライアント D プロキシからの要求と応答を独自のローカル データベースに保存し、この情報をネットワーク内の他の GSS デバイスと共有します。同じネットワーク内のどの GSS に対しても、その後に同じドメイン名へのクライアント D プロキシ要求があれば、そのクライアントは「固定」されます。

メッシュ内の GSS デバイスがホステッド ドメインまたはドメイン リストに対するクライアントからのクエリーを受信した場合、グローバル スティッキによって、ネットワーク内の各 GSS は、ベスト エフォート方式で、要求側クライアントに同じ回答を返すように試行できます。この処理は、最初およびその後の要求にネットワーク内のどの GSS が選択されるかに関係なく実行されます。個々の GSS デバイスは協力して、ネットワーク全体のグローバル スティッキ データベースを維持します。

ピア メッシュの各 GSS は、他のピアからアップデートを受信し、ローカルに取得した変更をリモート ピアに送信します。GSS デバイスはピア メッシュ内の他の GSS デバイスと次の情報を共有します。

実行されたスティッキ データベース ルックアップ

応答で提供された固定回答

関連するタイム スタンプおよびスティッキ無活動タイムアウトの詳細情報

各 GSS がリモート GSS ピアにアップデートを送信するのは、次の場合です。

D プロキシ要求が着信し、対応するデータベース エントリがない場合。GSS は要求側クライアントに新しい回答を返し、その回答をローカル データベースに入力します。

要求側クライアントに、以前の回答を返す場合。GSS はその回答の有効時間を最初のスティッキ無活動タイムアウト値にリセットします。

スティッキ データベース内に既存の回答が存在するが、キープアライブによってその回答は応答不能(オフライン)であることがわかった場合。この場合、GSS は、DNS 規則を使用して新しい回答を選択し、スティッキ データベース内の以前の回答を上書きして、すべてのピアに新しい回答を伝えます。

sticky database delete CLI コマンドによって、スティッキ データベースから 1 つ以上のエントリが削除された場合。

通常のスティッキ無活動タイムアウトやスティッキ データベースのオーバーフローによってスティッキ データベースから回答が削除された場合には、GSS はピアに情報を送信しません。この作業は、メッシュ内の各 GSS が個別に実行することになっています。

ローカル GSS ノードがネットワーク内のピアの 1 つから情報を受信すると、その GSS はそのローカル スティッキ データベースで、受信した各エントリのルックアップを実行します。ルックアップの結果に応じて、GSS は次のいずれかの処理を実行します。

ローカル スティッキ データベース内にそのエントリが見つからなければ、GSS はデータベースに回答を追加します。

スティッキ データベース内に同じエントリがあれば、GSS はその回答の有効時間を最初のスティッキ無活動タイムアウト値にリセットします。

GSS はすべての GSS 間通信の暗号化をサポートしているので、メッシュ ピア間で転送されるスティッキ データベース情報の完全性を維持できます。各 GSS は MD5 ベースのハッシュ方式を使用して、アプリケーション データをメッシュ全体に送信します。

メッシュ内のすべての GSS が使用するシークレット ストリングを指定することにより、メッシュ内の GSS デバイス間通信を認証し、不正なデバイス アクセスを防止することができます。このシークレット ストリングは、GSS デバイス間の認証と暗号化の鍵として使用されます(イネーブルに設定されている場合)。各 ローカル GSS は、リモート ピアとの接続の確立に、CHAP 方式を使用します。

スティッキ メッシュの不一致解決

場合によっては、メッシュ内の 2 つ以上の GSS デバイスが同時に同じスティッキ要求に回答する可能性もあります。GSS デバイスがそれぞれのアップデートを各ピアに送信すると、受信した GSS は不一致を検出します。ピア ネットワークで不一致が検出されると、各 GSSは、有効期間のスタンプが最も大きいエントリのレコード(つまり最も新しいレコード)を維持する方法で不一致を解決します。不一致エントリのタイム スタンプが同一の場合、GSS は、コンフィギュレーション ID に基いて最も新しく設定された回答を含むエントリを使用します。

ドメイン リストによって複数の要求をグループにまとめている場合や、スティッキ マスクまたはスティッキ グループを使用して D プロキシ クライアントをグループにまとめている場合は、通常よりも不一致が発生しやすくなります。たとえば、ドメイン A と B の DNS 規則を設定している場合、あるクライアントが GSS 1 にドメイン A を要求し、もう 1 つのクライアントはドメイン B を要求する可能性があります。この GSS が両方の要求を同時に受信すると、2 つのクライアントが異なる回答を受信することもあります。

グローバル スティッキ メッシュの不一致は、次の方法で軽減できます。

スティッキ DNS 規則は、1 つのドメインだけに設定する。どうしても必要な場合以外は、スティッキ方式として domain-list オプションを使用しないでください。

ドメイン ワイルドカードをしようしない。ワイルドカードのドメインはドメイン リストと同じ問題を発生させます。

スティッキ分散句の DNS ttl に小さい値を使用しない。各スティッキ分散句の ttl に大きい値を設定すると、スティッキ データベースはクライアント D プロキシが回答の再解決を試行する前に回答を同期化できます。

スティッキ ピア メッシュ内の通信

メッシュ内 GSS 間のパケットが正常に転送されるようにするには、次に示す要件を満たす必要があります。

メッシュ内の各 GSS デバイスのシステム クロックが Network Time Protocol(NTP)サーバと同期化されていること。GSS のシステム クロックが他の GSS ピアに対して同期外れ(3 分を超えて)の状態にある場合、この GSSは、ユーザによってシステム クロックが同期化されるまで、他の GSS デバイスからのアップデート メッセージを無視します。詳細については、「GSS のシステム クロックと NTP サーバの同期化」を参照してください。

ピア メッシュ内の各 GSS のグローバル サブネット マスク値が同一であること。GSS は、異なるサブネット マスクの GSS から受信したグローバル スティッキ メッセージをすべて廃棄します。ピアのグローバル スティッキ マスクに差異が生じるのは、プライマリ GSSM で設定が変更されたのに、ネットワーク障害のためにピアがその変更を受信していない場合だけです。詳細については、「DNS スティッキの設定」を参照してください。

ピア メッシュ内の各 GSS の GSS ソフトウェア バージョンが同一であること。

これらの条件が満たされていないと、GSS はスティッキ メッシュ内の他の GSS ピアと適切にパケットを送受信できません。

次のいずれかの処理を実行すると、GSS はグローバル スティッキ メッシュを脱退し、再加入します。

gss restart コマンドによって、ローカル GSS ノード上で GSS ソフトウェアを再起動する。

ローカル GSS ノードに対して、 sticky stop および sticky start のコマンドを入力する。

reload コマンドによって、ローカル GSS ノードのコールド リスタートを実行する。

スティッキ プロパティ コンフィギュレーションモードで、 enable global コマンドを入力する。

GSS は、メッシュへの再加入時に、ピア GSS のスティッキ データベースのロードを試行します。GSS は、最小 Round-Trip Time(RTT; ラウンドトリップ時間)を使用して、データベース アップデートの要求先ピアの優先順位を判断します。GSS ピアを使用できない場合には、使用可能な最後の定期データベースダンプ ファイルからローカル レベルでスティッキ データベースをリストアします。GSS は、メッシュに再加入し、そのメッシュ内の GSS ピアからデータベースを取得できない場合には常に、データベース ダンプ ファイルからスティッキ データベースをリストアします。ロードが完了すると、その GSS デバイスのローカル データベースには、完全なスティッキ データベースが保存されます。

スティッキ メッシュへの再加入時に、ローカル GSS ノードに特定の GSS ピアとの同期化を試行させたい場合は、その GSS デバイスの優先 GSS ピアを指定できます。優先 GSS ピアを指定すると、ピア同期化に伴うネットワーク問題(通常、ネットワーク トラフィック バーストが発生)も軽減できます。最も近い(最小 RTT)と識別される GSS 以外のピアにネットワーク トラフィックを向けることができます。

優先ピアを 1 つ指定すると、ローカル GSS ノードは、メッシュへの再加入時に、必ずその優先 GSS ピアとのスティッキ データベースの同期化を試行します。GSSの優先ピアが使用不能の場合、そのローカル GSS ノードは、最も近い最新のスティッキ データベースを見つけるために残りのメッシュ ピアにクエリーを送信します。

GSS デバイスのメッシュに対する脱退と再加入および GSS デバイスの再起動に伴うネットワーク接続問題がスティッキ データベースの同期化に及ぼす影響はごくわずかです。スティッキ データベースのエントリは、その使用状況やユーザが定義したスティッキ無活動タイムアウト値に基いて、常に再コンバージされています。

CLI へのログインおよび特権 EXEC モードのイネーブル化


) GSS で特権 EXEC モードにログインし、イネーブルにできるのは、admin 特権が設定されているユーザだけです。ユーザ アカウントの作成および管理については、『Cisco Global Site Selector Administration Guide』を参照してください。


プライマリ GSSM にログインして、CLI で特権 EXEC モードをイネーブルにするには、次の手順を実行します。

1. Telnet または SSH を通じてプライマリ GSSM にリモートからログインする場合は、GSSM のホスト名または IP アドレスを入力して、CLI にアクセスします。

端末と GSSM の間で直接シリアル接続を使用する場合は、端末エミュレーション プログラムを使用して CLI にアクセスします。専用端末を使用した GSS デバイスへの直接接続、および SSH または Telnet を使用したリモート接続の確立については、『 Cisco Global Site Selector Getting Started Guide 』を参照してください。

2. GSSM ログイン用の GSS 管理ユーザ名およびパスワードを指定します。CLI のプロンプトが表示されます。

gssm1.example.com>
 

3. CLI のプロンプトで、次のように特権 EXEC モードをイネーブルにします。

gssm1.example.com> enable
gssm1.example.com#

DNS スティッキのクイック スタート ガイド

表8-1 は、ローカル および グローバルの DNS スティッキを GSS に設定する際に必要な手順の概要をまとめたものです。各手順には、作業の完了に必要な GSSM CLI コマンドが示されています。GSS の DNS スティッキ設定手順の詳細は、表のあとの各項の説明を参照してください。

 

表8-1 DNS スティッキの設定の主な手順

作業およびコマンドの例

1. 複数の GSS デバイスでグローバル スティッキを使用する場合は、メッシュ内の各 GSS の CLI にログインし、特権 EXEC モードをイネーブルにして、システム クロックを NTP サーバと同期化します。

たとえば、次のように入力します。

gssm1.example.com> enable
gssm1.example.com# config
gssm1.example.com(config)# ntp-server 172.16.1.2 172.16.1.3
gssm1.example.com(config)# ntp enable

2. グローバル サーバ ロードバランシング コンフィギュレーションモードを開始します。

たとえば、次のように入力します。

gssm1.example.com(config)# gslb
gssm1.example.com(config-gslb)#

3. sticky-properties コマンドを使用して、スティッキ プロパティ コンフィギュレーションモードを開始します。

たとえば、次のように入力します。

gssm1.example.com(config-gslb)# sticky-propertie
gssm1.example.com(config-gslb-stkyprop)#

4. スティッキ プロパティ コンフィギュレーションモードから、スティッキをイネーブルにして、モード(グローバルまたはローカル)を指定します。

たとえば、GSS ネットワークのグローバル DNS スティッキをイネーブルにする場合は、次のように入力します。

gssm1.example.com(config-gslb-stkyprop)# enable global
gssm1.example.com(config-gslb-stkyprop)# exit
gssm1.example.com(config-gslb)#

5. スティッキ プロパティ コンフィギュレーションモードで、デフォルトの DNS スティッキ コンフィギュレーションと GSS 間のグローバル スティッキ メッシュ値を設定します。次のキーワードおよび引数を使用できます。

encryption メッシュ内の GSS デバイスが送信するデータの暗号化をイネーブルまたはディセーブルにします。有効なオプションは次のとおりです。

enable メッシュ内の GSS ピア間で転送されるデータの暗号化をイネーブルにします。

key name ― GSS デバイス間の認証と暗号化(イネーブルに設定されている場合)用のシークレット ストリング鍵を指定します。

mask netmask ― スティッキ データベースが対応できるクライアント数を増やす目的で、隣接した D プロキシ アドレスをグループ化する際に GSS が使用するグローバル サブネット マスクを指定します。

timeout seconds ― 未使用の回答がスティッキ データベース内で有効である最大時間を指定します。

favored-peer スティッキ メッシュへの再加入時にローカル GSS デバイスに特定の優先 GSS ピアとの同期化を試行させたい場合は、メッシュ内の各ローカル GSS デバイスについて、GSS デバイスと優先 GSS ピア(異なる GSS デバイス)の組み合わせを指定します。

これらの設定に関する詳細は、「DNS スティッキの設定」を参照してください。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-stkyprop)# enable global
gssm1.example.com(config-gslb-stkyprop)# encryption key SECRETKEY gssm1.example.com(config-gslb-stkyprop)# timeout 120
gssm1.example.com(config-gslb-stkyprop)# exit
gssm1.example.com(config-gslb)#

6. dns rule コマンドを使用して、DNS 規則を作成します。

たとえば、次のように入力します。

gssm1.example.com(config)# gslb
gssm1.example.com(config-gslb)# dns rule drule02 owner WEB-SERVICES source-address-list WEB-GLOBAL-LISTS domain-list E-COMMERCE query A
gssm1.example.com(config-gslb-rule[rule-name])#

7. 次のように、 sticky method コマンドを入力することにより、GSS が DNS 規則で DNS スティッキをサポートする方法(ドメインまたはドメイン リスト)を定義します。

gssm1.example.com(config-gslb-rule[rule-name])# sticky method domain
gssm1.example.com(config-gslb-rule[rule-name])#

8. DNS 規則に設定されているグローバル タイムアウト値を上書きする場合は、新しい timeout 値を指定します。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-rule[rule-name])# sticky method domain timeout 250
gssm1.example.com(config-gslb-rule[rule-name])#

9. clause コマンドと sticky enable オプションを使用して、DNS 規則の分散句 1 を設定し、その DNS規則のスティッキをイネーブルにします。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-rule[rule-name])# clause 1 vip-group ANSGRP-VIP-01 sticky enable
gssm1.example.com(config-gslb-rule[rule-name])#

10. (任意)必要に応じて、 clause コマンドのその他の値を設定します。次のキーワードおよび引数を使用できます。

count number ― DNS 規則と一致する要求に対して GSS が返すアドレス レコード(A レコード)の数を指定します。

ttl number ― 要求側 DNS プロキシがGSS から送信された応答をキャッシュし、そのキャッシュを有効な回答とみなす時間を秒単位で指定します。

method ― (任意)各分散句の方式を指定します。方式には次の種類があります。

round-robin ― GSSは、要求受信時に使用可能な回答をリスト内で順番に使用します。これがデフォルトの設定です。

ordered ― GSS は優先度に基いてリストから回答を選択します。

least-loaded ― GSS は、回答グループの各 VIP が報告する負荷に基いて回答を選択します。

weighted-round-robin ― GSSは、要求が受信されたときに使用可能な回答のリストを順番に使用します。ただし、要求は、そのリソースに割り当てられた重み値によって判別される比率に従って、優先的な回答に送信されます。

hashed ― GSSは、要求に格納された情報から作成される一意の値に基いて回答を選択します。有効なハッシュ方式のタイプは、 source-address domain-name 、または both です。

これらの設定に関する詳細は、「VIP タイプの回答グループを使用する DNS 規則へのスティッキの追加」をサンショウしてください。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-rule[rule-name])# clause 1 vip-group ANSGRP-VIP-01 sticky enable ttl 30 method ordered
gssm1.example.com(config-gslb-rule[rule-name])#

11. 分散句 2 についても clause コマンドを使用し、ステップ 9 と 10 を繰り返します。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-rule[rule-name])# clause 2 vip-group ANSGRP-VIP-02 sticky enable ttl 60 method least-loaded
gssm1.example.com(config-gslb-rule[rule-name])#
 

) 分散句 1 で最初にスティッキをイネーブルにしないと、分散句 2 でスティッキをイネーブルに設定することはできません。GSS のこの制限は、分散句 2 でスティッキを設定せずに、分散句 3でスティッキをイネーブルにしようとした場合も同様です。


 

12. 分散句 3 に対する clause コマンドも入力し、ステップ 9 と 10 を繰り返します。

13. (任意)スティッキ データベースで、複数の D プロキシ IP アドレスを、単一エントリとしてグループにまとめ、ルール コンフィギュレーションモードを終了してから、グローバル サーバ ロードバランシング モードで、 sticky group コマンドを使用します。

たとえば、次のように入力します。

gssm1.example.com(config-gslb-rule[rule-name])# exit
gssm1.example.com(config-gslb)# sticky group StickyGroup1 ip 192.168.3.0 netmask 255.255.255.0

GSS のシステム クロックと NTP サーバの同期化

GSS ネットワークでグローバル スティッキを使用している場合は、メッシュ内のすべての GSS デバイス のクロックを同期化して、GSS がピア メッシュ内の その他の GSS デバイスと通信できるようにする必要があります。GSS のシステム クロックが他の GSS ピアと同期していない(3 分を超えて)場合、この GSSは、ユーザによってシステム クロックが同期化されるまで、他の GSS デバイスからのアップデート メッセージを無視します。


) メッシュ内の各 GSS のシステム クロックを Network Time Protocol(NTP)サーバと同期化することを強く推奨します。NTP は、ネットワーク全体のコンピュータのクロックを専用タイム サーバと同期化するように設計されているプロトコルです。


プライマリ GSSM から GSS デバイスの DNS スティッキをイネーブルにする場合は、必ず事前に、そのグローバル メッシュ内の各 GSSデバイスに NTP サーバを指定してください。これによって、GSS デバイスがグローバル スティッキ ピア メッシュに加入する前に、各 GSS デバイスのクロックが確実に同期化されます。


) CLI での GSS デバイスへのログインおよび特権 EXEC モードのイネーブル化については、「CLI へのログインおよび特権 EXEC モードのイネーブル化」を参照してください。


ntp-server グローバル コンフィギュレーション モード コマンドを使用して、GSS クロック同期化用の NTP サーバを 1 つ以上指定します。この CLI コマンドの構文は次のとおりです。

ntp-server ip_or_host

ip_or_host 引数には、クロックの同期化に使用するネットワーク内の NTP タイム サーバの IP アドレスまたはホスト名を指定します。最大 4 つの IP アドレスまたはホスト名を指定できます。ドット付き 10 進表記(例:172.16.1.2)で IP アドレスを入力するか、またはニーモニックのホスト名(例:myhost.mydomain.com)を入力します。

ntp enable グローバル コンフィギュレーション モード コマンドを使用して、NTP サービスをイネーブルにします。この CLI コマンドの構文は次のとおりです。

ntp enable

GSS デバイスに 2 つの NTP タイム サーバの IP アドレスを指定し、NTP サービスをイネーブルにする例を示します。

gssm1.example.com> enable
gssm1.example.com# config
gssm1.example.com(config)# ntp-server 172.16.1.2 172.16.1.3
gssm1.example.com(config)# ntp enable

プライマリ GSSM CLI を使用したスティッキの設定

ここkでは、GSS デバイスに DNS スティッキの動作を設定し、プライマリ GSSM で DNS 規則にスティッキ性を追加し、スティッキ データベースを管理する方法を説明します。具体的な内容は次のとおりです。

DNS スティッキの設定

DNS 規則でのスティッキのイネーブル化

スティッキ グループの作成

スティッキ データベースのエントリの削除

スティッキ データベース エントリのダンプ

スティッキ データベースの定期的なバックアップの実行

スティッキ データベース エントリのロード

DNS スティッキの設定

GSS には、デフォルト値として機能する DNS スティッキ設定値があります。DNS 規則でスティッキがイネーブルに設定されると、この設定値が GSS ネットワークで使用されます。スティッキを設定できるのは、VIP タイプの回答グループを使用する DNS 規則だけです。また、スティッキが DNS 規則でアクティブになるのは、次の条件が満たされた場合だけです。

グローバル レベルまたはローカル レベルでスティッキがイネーブルに設定される。CLI で、enable global または enable local コマンドを入力します。

スティッキ方式のオプション(ドメインまたはドメイン リスト)が選択される。CLI で、sticky method domain または sticky method domain list コマンドを入力します。

スティッキがDNS 規則の分散句内でイネーブルに設定される。CLI で、sticky enable コマンドを入力します。

グローバル サーバ ロードバランシング コンフィギュレーションモードから、 sticky-properties コマンドを使用し、スティッキ プロパティ コンフィギュレーションモードを開始します。スティッキ プロパティ コンフィギュレーションモード で、コマンドを入力し、スティッキをイネーブルにして、GSS ネットワークの DNS スティッキの設定値を修正します。スティッキの設定値は、スティッキ プロパティ コンフィギュレーションモードを終了するか、新しいモードを開始するとすぐに適用されます。

スティッキ プロパティ コンフィギュレーションモードから、スティッキをイネーブルにしてスティッキの値を設定するには、次のうち 1 つ以上のコマンドを指定します。

enable グローバル レベルまたはローカル レベルの DNS スティッキをイネーブルにします。有効なオプションは次のとおりです。

global GSS メッシュ全体のアクティブな各 GSS デバイスのグローバル DNS スティッキをイネーブルにします。グローバル DNS スティッキを使用すると、ローカル スティッキの機能はすべて有効になり、ネットワーク内の各 GSS デバイスは、ピア メッシュ内のピア GSS デバイス間で回答を共有します。ピア メッシュは、メッシュ内の GSS デバイスが同じ質問を受信した場合に要求側クライアント D プロキシに同じ回答が返されるように試行します。

local アクティブな各 GSS デバイスの DNS スティッキはローカル レベルでのみイネーブルになります。各 GSS は、同じドメイン名に対するその後の要求が最初の要求と同じロケーションに「固定」されるように試行します。スティッキ データベース情報は、GSS メッシュ内の GSS デバイス間で共有されません。

encryption メッシュ内の GSS デバイスが送信するデータの暗号化をイネーブルまたはディセーブルにします。このコマンドが有効なのは、 global コマンドがイネーブルに設定されている場合だけです。GSS はすべての GSS 間通信の暗号化をサポートしているので、メッシュ ピア間で転送されるスティッキ データベース情報の完全性を維持できます。このコマンドはデフォルトではディセーブルになります(データはクリア テキストで送信されます)。有効なオプションは次のとおりです。

enable メッシュ内の GSS ピア間で転送されるデータの暗号化をイネーブルにします。各 GSS は MD5 ベースのハッシュ方式を使用して、アプリケーション データをメッシュ全体に送信します。

key name ― (任意)GSS デバイス間の認証と暗号化(イネーブルに設定されている場合)用のシークレット ストリング鍵を指定します。他と重複しない最大 31 文字の英数字の名前を入力します。スペースが含まれた名前は引用符で囲む必要があります(例:"name 1")。

mask netmask ― スティッキ データベースが対応できるクライアント数を増やす目的で、隣接した D プロキシ アドレスをグループ化する際に GSS が使用するグローバル サブネット マスクを指定します。このマスクは、スティッキ データベースにアクセスする前にクライアントの送信元 IP アドレスに適用されます。ドット付き 10 進表記(例:255.255.255.0)でサブネット マスクを入力します。デフォルトのグローバル マスクは 255.255.255.255 です。

着信 D プロキシ アドレスの DNS スティッキ グループを定義した場合(スティッキ グループの作成を参照)、着信 D プロキシ アドレスが定義済みの DNS スティッキ グループのいずれのエントリとも一致しないと、GSS はこのグローバル ネットワーク値を使用して、グループの D プロキシ ネットワーク アドレスを計算します。

timeout seconds ― 未使用の回答がスティッキ データベース内で有効である最大時間を指定します。この値によって、スティッキ データベース エントリのエージング アウト プロセスが定義されます。GSS は、要求側クライアント D プロキシに回答を返すたびに、その回答の有効時間をこの値にリセットします。クライアントが再度その回答を要求せずに、スティッキ タイムアウト値が経過すると、GSS はその回答を無効とみなし、スティッキ データベースから削除します。15 ~ 10080 分(168時間)の値を 5 分単位で指定してください(15、20、25、30 のように、10080 までの値を指定可能)。デフォルト値は 60 分です。

各 DNS 規則に個別に timeout 値を設定することもできます。DNS 規則に timeout 値を設定した場合、その値によってグローバル timeout 値が上書きされます。


) スティッキ タイムアウトは、指定値が経過してから 5 分以内に実行されます。各エントリは、設定されたスティッキ タイムアウト値の間はスティッキ データベース内に維持されます。また、指定値を経過後5分までは、スティッキ データベース内に置かれている可能性があります。


favored-peer スティッキ メッシュへの再加入時にローカル GSS デバイスに特定の GSS ピアとの同期化を試行させたい場合は、メッシュ内の各ローカル GSS デバイスに優先ピアを指定します。優先 GSS ピアを指定すると、ピア同期化に伴うネットワーク問題(通常、ネットワーク トラフィック バーストが発生)も軽減できます。最も近い(最小 RTT)と識別される GSS 以外のピアにネットワーク トラフィックを向けることができるからです。このコマンドが有効なのは、 global オプションがイネーブルに設定されている場合だけです。次のいずれか1つを指定します。

GSS 優先ピア GSS デバイスに関連付ける ローカル GSS デバイスの名前。ピア GSS デバイスは、 GSS-peer 変数で指定する別の GSS デバイスの名前です。

GSS-peer GSS 変数で指定した GSS デバイスに関連付ける優先 GSS ピアの名前。

必要に応じて、何度か favored-peer コマンドを再入力して、スティッキ メッシュ内の GSS デバイスに優先 GSS ピアを割り当てます。

GSSがメッシュに加入するのは次の場合です。

リロード

電源投入

gss stop gss start のコマンドを順番に入力した場合

reload コマンドを入力した場合

sticky stop sticky start のコマンドを順番に入力した場合

global オプションをイネーブルにした場合

メッシュへの再加入時に、ローカル GSS デバイスはまず、そのスティッキ データベース エントリを優先 GSS ピアと同期化しようとします。優先ピアが使用不能の場合、その GSS は、最も近い最新の(ラウンドトリップ時間が最小の)スティッキ データベースを見つけるために、残りのメッシュ ピアにクエリーを送信します。

たとえば、あるメッシュに 4 つの GSS デバイスがあり(gss_1、gss_2、gss_3、gss_4F)、gss_1 と gss_2 が両方ともブートアップ プロセス中であるとします。ローカル デバイス gss_1 をその GSS ピアとして gss_3 に誘導し、ローカル デバイス gss_2 をその GSS ピアとして gss_4 に誘導することが可能です。メッシュ内の優先 GSS ピアを指定しておけば、ブート中の GSS デバイスは、データベース同期化要求が達成される前に別のデータベース要求の完了を待たずにすみます。

GSS ピアを指定しないと、GSSは、最小 RRT を使用して、データベース アップデートの要求先ピアの優先順位を判断します。

mask netmask ― スティッキ データベースが対応できるクライアント数を増やす目的で、隣接した D プロキシ アドレスをグループ化する際に GSS が使用するグローバル サブネット マスクを指定します。このマスクは、スティッキ データベースにアクセスする前にクライアントの送信元 IP アドレスに適用されます。ドット付き 10 進表記(例:255.255.255.0)でサブネット マスクを入力します。デフォルトのグローバル マスクは 255.255.255.255 です。

着信 D プロキシ アドレスの DNS スティッキ グループを定義した場合(スティッキ グループの作成を参照)、着信 D プロキシ アドレスが定義済みの DNS スティッキ グループのいずれのエントリとも一致しないと、GSS はこのグローバル ネットワーク値を使用して、グループの D プロキシ ネットワーク アドレスを計算します。

timeout minutes ― 未使用の回答がスティッキ データベース内で有効である最大時間を指定します。この値によって、スティッキ データベース エントリのエージング アウト プロセスが定義されます。GSS は、要求側クライアント D プロキシに回答を返すたびに、その回答の有効時間をこの値にリセットします。クライアントが再度その回答を要求せずに、スティッキ タイムアウト値が経過すると、GSS はその回答を無効とみなし、スティッキ データベースから削除します。15 ~ 10080 分(168時間)の値を 5 分単位で指定してください(15、20、25、30 のように、10080 までの値を指定可能)。デフォルト値は 60 分です。

各 DNS 規則に個別に timeout 値を設定することもできます。DNS 規則に timeout 値を設定した場合、その値によってグローバル timeout 値が上書きされます。


) スティッキ タイムアウトは、指定値が経過してから 5 分以内に実行されます。各エントリは、設定されたスティッキ タイムアウト値の間はスティッキ データベース内に維持されます。また、指定値を経過後5分までは、スティッキ データベース内に置かれている可能性があります。


たとえば、グローバル スティッキをイネーブルにして、暗号鍵とタイムアウト値を指定する場合は、次のように入力します。

gssm1.example.com(config-gslb)# sticky-properties
gssm1.example.com(config-gslb-stkyprop)# enable global
gssm1.example.com(config-gslb-stkyprop)# encryption key SECRETKEY
gssm1.example.com(config-gslb-stkyprop)# timeout 120
gssm1.example.com(config-gslb-stkyprop)# exit
gssm1.example.com(config-gslb)#
 

スティッキの設定値をデフォルトにリセットするには、次のように、 no 形式でこのコマンドを使用します。

gssm1.example.com(config-gslb-stkyprop)# no timeout 120
gssm1.example.com(config-gslb-stkyprop)# no mask 255.255.255.0
gssm1.example.com(config-gslb-stkyprop)# exit
gssm1.example.com(config-gslb)#

DNS 規則でのスティッキのイネーブル化

ここでは、次の内容について説明します。

スティッキ DNS 規則の概要

VIP タイプの回答グループを使用する DNS 規則へのスティッキの追加

スティッキ DNS 規則の概要

DNS スティッキをイネーブルにしてスティッキの値を設定してから、ルール コンフィギュレーションモードで、 sticky method clause のコマンドを使用し、DNS 規則にスティッキ性を追加します。GSS は、一致するドメイン( domain オプション)または一致するドメイン リスト( domain-list オプション)で、DNS 規則の DNS スティッキ性をサポートします。domain と domain-list のスティッキ方式は、ユーザ設定可能なスティッキ期間に、一致するホステッドドメインまたはドメイン リストに対するクライアント D プロキシからのすべての要求に同じ回答を与えるよう GSS に指示します。

DNS 規則の句でスティッキをイネーブルにすると、GSS は、D プロキシ IP アドレスと要求されたドメイン情報の組み合わせに基いて、スティッキ データベースをフックアップして一致するエントリを探します。回答が見つかると、GSS は要求側 D プロキシにその回答を DNS 応答として返します。回答がオフラン状態である場合、または回答が見つからなかった場合、GSS は DNS 規則の分散方式句を評価して、新しい回答を選択します。

DNS 規則の各分散句に個別にスティッキを設定できます。ただし、分散句 1 で最初にスティッキをイネーブルにしないと、分散句 2 でスティッキをイネーブルに設定することはできません。GSS のこの制限は、分散句 2 でスティッキを設定せずに、分散句 3でスティッキをイネーブルにしようとした場合も同様です。


) DNS 規則に DNS スティッキとネットワーク プロキシミティを使用する場合、スティッキは常にプロキシミティよりも優先されます。所定の DNS 規則と一致する有効なスティッキ回答がある場合、GSS はクライアント D プロキシに回答を返す際に、プロキシミティを考慮しません。


VIP タイプの回答グループを使用する DNS 規則へのスティッキの追加

VIP タイプの回答グループを使用する DNS 規則にスティッキを追加するには、次の手順を実行します。

1. ローカルまたはグローバルの DSN スティッキをまだイネーブルにしていなければ、イネーブルにします。詳細については、「DNS スティッキの設定」を参照してください。

2. dns rule コマンドを使用して、DNS 規則を作成します。詳細は、「DNS 規則の作成および変更」html?bid=0900e4b1825ae631#58783" CLASS="cXRef_Color">「DNS 規則の作成」を参照してください。

3. sticky method コマンドを使用して、GSS が DNS 規則でどのように DNE スティッキ性をサポートするかを定義します。

domain ― ドメインに対する DNS スティッキをイネーブルにします。単一の D プロキシからのすべての要求に関して、GSS は 同じドメイン回答を送信します。ドメイン ワイルドカード(たとえば、*.cisco.com)と照合する規則の場合は、ワイルドカードに指定されたグローバル コンフィギュレーション ID を使用するエントリが一緒に固定されます。GSS はワイルドカードと一致する個々のドメインの区別を試行しません。

domain-list ― 一致するドメイン リストに対する DNS スティッキをイネーブルにします。GSSは、すべてのドメインをドメイン リストにまとめて、これらを単一のホステッド ドメインとして処理します。GSS は、ドメイン リスト内のワイルドカードを非ワイルドカード ドメインと同じように処理します。


) スティッキはデフォルトではディセーブルになります。ディセーブルに設定されている場合、GSS は DNS 規則との一致を条件として、適合するすべてのドメインおよびクライアントの DNS 要求に回答し、スティッキ データベースにはアクセスせず、またネットワーク内のピア間でスティッキ データベース情報を共有することもありません。


4. 新しい timeout 値を指定することにより、DNS 規則に設定されているグローバル タイムアウト値を上書きします。スティッキ データベースがエントリのルックアップ要求を受信せずに維持される最大時間を入力します。GSS は、要求側クライアント D プロキシに回答を返すたびに、その回答の有効時間をこの値にリセットします。クライアントが再度その回答を要求せずに、スティッキ タイムアウト値が経過すると、GSS はその回答を無効とみなし、スティッキ データベースから削除します。15 ~ 10080 分の値を 5 分単位で指定してください(15、20、25、30 のように、10080 までの値を指定可能)。

たとえば、次のように入力します。

gssm1.example.com(config-gslb)# dns rule drule02
gssm1.example.com(config-gslb-rule[rule-name])# sticky method domain timeout 250
gssm1.example.com(config-gslb-rule[rule-name])#

) スティッキの timeoutは、指定値経過後 5 分以内に実行されます。各エントリは、設定されたスティッキ タイムアウト値の間はスティッキ データベース内に維持されます。また、指定値を経過後5分までは、スティッキ データベース内に置かれている可能性があります。


5. ルール コンフィギュレーションモードで、 clause number vip-group name コマンドを使用し、分散句 1 を設定します。このコマンドの構文は次のとおりです。

clause number vip-group name [ count number | sticky { enable | disable } | ttl number | method { round-robin | least-loaded | ordered | weighted-round-robin | hashed { domain-name | source-address | both }}]

このコマンドのキーワードと引数は次のとおりです。

number ― 分散句 1、2、または3。VIP タイプの回答を使用する分散句を最大 3 つ指定できます。

vip-group name ― すでに作成されている VIP タイプ回答グループの名前を指定します。

count number ― (任意)DNS 規則と一致する要求に対して GSS が返すアドレス レコード(A レコード)の数を指定します。デフォルトは 1 レコードです。

sticky ― (任意)その句でスティッキをアクティブにするには、 enable を指定します。その句でスティッキをアクティブにしない場合は、 disable (デフォルト)を指定します。 enable を指定する場合は、 sticky method オプション(ステップ 3 を参照)が domain または domain-list に設定されていることを確認してください。

ttl number ― (任意)要求側 DNS プロキシがGSS から送信された応答をキャッシュし、そのキャッシュを有効な回答とみなすTime-To-Live(TTL; 存続可能時間)を秒単位で指定します。有効な入力値は、0 ~ 604,800 秒です。デフォルトは 20 秒です。

method ― (任意)各分散句の方式を指定します。方式には次の種類があります。

round-robin ― GSSは、要求受信時に使用可能な回答をリスト内で順番に使用します。これがデフォルトの設定です。

least-loaded ― GSS は、回答グループの各 VIP が報告する負荷に基いて回答を選択します。最も軽い負荷を報告した回答が要求の応答に選択されます。Least-loaded オプションを使用できるのは、KAL-AP キープアライブを使用する VIP タイプの回答グループの場合だけです。

ordered ― GSSは、優先順位に基いてリストから回答を選択します。優先順位の番号が小さい回答ほど先に使用されます。リストの下部にある回答は、上にある回答が要求に応答できない場合に限って使用されます。順序リスト内の番号は不連続でもかまいません。


) 回答グループ内に同じ番号の回答がある場合、GSSはその番号の最初の回答だけを使用します。1 つの回答グループ内の各回答の順位が重複しないように指定することを推奨します。


weighted-round-robin ― GSSは、要求が受信時に使用可能な回答をリスト内で順番に使用します。ただし、要求は、そのリソースに割り当てられた重み値によって判別される比率に従って、優先的な回答に送信されます。

hashed ― GSSは、要求に格納された情報から作成される一意の値に基いて回答を選択します。GSS は 2 つのハッシュ分散方式をサポートしています。GSS では、次のように、1 つまたは両方のハッシュ分散方式を指定回答グループに適用できます。次のいずれか1つを入力します。

domain-name ― GSS は、要求されたドメイン名から作成されたハッシュ値に基いて回答を選択します。

source-address ― GSS は、要求の送信元アドレスから作成されたハッシュ値に基いて回答を選択します。

both ― GSS は、送信元アドレスとドメイン名の両方に基いて回答を選択します。

6. clause コマンドを入力して、分散句 2 および 3 についても設定プロセスを繰り返します。


) 分散句 1 で最初にスティッキをイネーブルにしないと、分散句 2 でスティッキをイネーブルに設定することはできません。GSS のこの制限は、分散句 2 でスティッキを設定せずに、分散句 3でスティッキをイネーブルにしようとした場合も同様です。


たとえば、すでに作成されている DNS 規則 drule02 の分散句 1 および 2 にスティッキ性をセットアップするには、次のように入力します。

gssm1.example.com(config-gslb)# dns rule drule02
gssm1.example.com(config-gslb-rule[rule-name])# clause 1 vip-group ANSGRP-VIP-01 sticky enable method ordered
gssm1.example.com(config-gslb-rule[rule-name])# clause 2 vip-group ANSGRP-VIP-02 sticky enable method least-loaded
gssm1.example.com(config-gslb-rule[rule-name])#

分散句を削除する場合は、次のように no 形式の clause コマンドを使用します。

gssm1.example.com(config-gslb-rule[rule-name])# no clause 2 vip-group ANSGRP-VIP-02 sticky enable method least-loaded
gssm1.example.com(config-gslb-rule[rule-name])#

スティッキ グループの作成

プライマリ GSSM はスティッキ グループの作成をサポートします。スティッキ グループを使用すると、各 GSS デバイスがそのスティッキ データベースに保存する D プロキシ IP アドレスの複数のブロックを単一エントリとして設定できます。このようにすると、GSS は、複数の D プロキシに対して、スティッキ データベース内のエントリを 1 つだけ使用し、複数のエントリを使用せずにすみます。GSS は 1 つのスティッキ グループ内のすべての D プロキシを単一の D プロキシとして処理します。

ここでは、次の内容について説明します。

DNS スティッキ グループの概要

DNS スティッキ グループの作成

スティッキ グループの IP アドレス ブロックの削除

スティッキ グループの削除

DNS スティッキ グループの概要

プライマリ GSSM CLI からスティッキ グループを作成すると、設定のスケーラビリティが向上し、自動スクリプトを通じてスティッキ グループを簡単に作成できます。プライマリ GSSM は最大 800 のスティッキ グループをサポートします。各スティッキ グループには、IP アドレスおよびサブネット マスク(ドット付き 10 進表記)のブロックが 1 ~ 30 個含まれます。

スティッキ データベース内の D プロキシ IP アドレスをグループにまとめると、プロキシ ホッピングに対処できます。一部の ISP は D プロキシを回転させます。あるユーザのブラウザが DNS サーバ A を使用してホスト名を解決し、その後同じ名前を解決するのに DNS サーバ B を使用するという可能性もあります。DNS スティッキ機能は、実際のクライアントの IP アドレスではなく、クライアントの D プロキシ IP アドレスを覚えているので、この技術はプロキシ ホッピングと呼ばれています。つまり、GSS は、回転される D プロキシそれぞれを個別のクライアントと認識するのです。スティッキ グループを使用すると、D プロキシのグローバル グループを設定することにより、このようなプロキシ ホッピングの問題を解決できます。

CLI から複数の D プロキシ IP アドレスの DNS スティッキ グループを作成するだけでなく、グローバル ネットマスクを設定して、連続する D プロキシをグループにまとめることもできます(DNS スティッキの設定を参照)。着信 D プロキシ アドレスと一致する DNS スティッキ グループがない場合、GSS デバイスはグローバル ネットマスクを使用します。GSS は完全な着信 D プロキシ IP アドレス(255.255.255.255)とグローバル ネットマスクを、DNS スティッキ データベースの探索用のキーとして使用します。デフォルトのグローバル マスクは 255.255.255.255 です。

図 8-1 に、DNS スティッキ グループのエントリ 192.168.9.0 255.255.255.0 と
172.16.5.1 255.255.255.255 を通じて、D プロキシ 192.168.9.2、92.168.9.3、172.16.5.1 からの DNS 要求をすべて、グループ識別名 StickyGroup1 に対応付ける方法を示します。着信 D プロキシ IP アドレスと一致するものがスティッキ グループ テーブル内にない場合、GSS はユーザが指定したグローバル ネットマスクを使用して、データベース キーとするネットワーク アドレスを計算します。この例では、192.168.2.1 および 192.168.7.2 からの DNS 要求は、192.168.2.0 および 192.168.7.0 と、指定されたグローバル ネットマスク 255.255.255.0 に結合されたデータベース エントリを使用します。

図 8-1 スティッキ グループのデータベース エントリの探索

 

DNS スティッキ グループの作成

プライマリ GSSM CLI から、 sticky group グローバル サーバ ロードバランシング コンフィギュレーションモード コマンドを使用することにより、DNS スティッキ グループを作成して、DNS スティッキ グループの名前を指定し、そのグループに IP アドレス ブロックを追加できます。すでに設定されている IP アドレス ブロックをスティッキ グループから削除したり、スティッキ グループを削除する場合は、このコマンドを no 形式で使用します。

プライマリ GSSM の CLI でスティッキ グループを作成すると、設定のスケーラビリティが向上し、自動スクリプトを通じてスティッキ グループを簡単に作成できます。スティッキ グループは、プライマリ GSSM のデータベースに保存され、ネットワーク内のすべての GSS デバイスが同じスティッキ グループ コンフィギュレーションを受信します。スタンバイ GSSM や個々の GSS デバイスの CLI でスティッキ グループを作成することはできません。

このコマンドの構文は次のとおりです。

sticky group groupname ip ip-address netmask netmask

オプションと変数は次のとおりです。

groupname ― 他と重複しない英数字の DNS スティッキ グループ名。最大 80 文字です。名前にスペースを含めることはできません。

ip ip-address ― ドット付き 10 進表記で IP アドレス ブロックを指定します(例:192.168.9.0)。

netmask netmask ― ドット付き 10 進表記で IP アドレス ブロックのサブネット マスクを指定します(例:255.255.255.0)。

IP アドレス ブロック 192.168.9.0 255.255.255.0 のスティッキ グループ StickyGroup1 を作成する例を示します。

gssm1.example.com# config
gssm1.example.com(config)# gslb
gssm1.example.com(config-gslb)# sticky group StickyGroup1 ip 192.168.9.0 netmask 255.255.255.0
 

次のいずれかの作業を実行する場合は、再度 sticky group コマンドを入力します。

DNS スティッキ グループに複数の IP アドレス ブロックを追加する。

別の DNS スティッキ グループを作成する。

各スティッキ グループに含めることのできる IP アドレスおよびサブネット マスクのブロック数は最大 30 です。GSS は DNS スティッキ グループ間での IP アドレスとサブネット マスクの重複を許可しません。

スティッキ グループの IP アドレス ブロックの削除

すでに設定されている IP アドレス ブロックをスティッキ グループから削除するには、 no 形式で sticky group ip コマンドを使用します。

gssm1.example.com# config
gssm1.example.com(config)# gslb
gssm1.example.com(config-gslb)# no sticky group StickyGroup1 ip 192.168.3.0 netmask 255.255.255.0

スティッキ グループの削除

スティッキ グループを削除するには、次のように、 no 形式で sticky group コマンドを使用します。

gssm1.example.com# config
gssm1.example.com(config)# gslb
gssm1.example.com(config-gslb)# no sticky group StickyGroup1

スティッキ データベースのエントリの削除

sticky database delete コマンドを使用すると、各 GSS デバイスのスティッキ データベースからエントリを削除できます。グローバル スティッキ コンフィギュレーションで操作すると、sticky database delete コマンドの結果が GSS メッシュ全体に伝播され、GSS ネットワーク内のピア間の同期が維持されます。


注意 sticky database delete all コマンドは、スティッキ データベース からすべてのエントリを削除して、データベースを空にしたい場合に使用します。削除した スティッキ データベース エントリを元に戻すことはできないので、このコマンドを入力する前に、スティッキ データベース からエントリを永続的に削除してよいかどうかを確認してください。

削除するスティッキ エントリを確認するために、スティッキ データベース内のエントリを表示するには、 show sticky database コマンドを使用します(「GSS グローバル サーバ ロードバランシング統計情報の表示」「スティッキ データベース ステータスの表示」 を参照)。

スティッキ データベースからエントリを削除するには、 sticky database delete コマンドを使用します。このコマンドの構文は次のとおりです。

sticky database delete { all | answer { name/ip_address } | domain { name } | domain-list { name } | group { name } | inactive minimum { minutes } maximum { minutes } | ip { ip_address } netmask { netmask } | rule { rule_name }}

オプションと変数は次のとおりです。

all ― スティッキ データベース メモリからすべてのエントリを削除します。すべての データベース エントリを削除してよいかどうか確認するため、"Are you sure?" というプロンプトが表示されます。すべてのエントリを削除する場合は y 、削除操作をキャンセルする場合は n を指定します。

answer name/ip_address ― 特定の回答に関連付けられているすべてのスティッキ エントリを削除します。回答の名前を指定してください。回答に名前がない場合は、ドット付き 10 進表記でスティッキ回答の IP アドレスを指定します(例:192.168.9.0)。

domain name ― 指定ドメインに関連付けられているすべてのスティッキ エントリを削除します。すでに作成されているドメインの正確な名前を指定してください。

domain-list name ― 指定のドメイン リストに関連付けられているすべてのスティッキ エントリを削除します。すでに作成されているドメイン リストの正確な名前を指定してください。

group name ― 指定のスティッキ グループに関連付けられているすべてのスティッキ エントリを削除します。すでに作成されているスティッキ グループの正確な名前を指定してください。

inactive minimum minutes maximum minutes ― 指定された最小時間から最大時間に、クライアント D プロキシがルックアップ要求を受信しなかったスティッキ エントリをすべて削除します。有効な入力値は、0 ~ 10100 分です。最大値を指定しないと、GSS は指定した最小値以上の時間、非アクティブ状態であったエントリをすべて削除します。GSS は、次のいずれかの状況が発生した場合、エラーを返します。

最小値よりも小さい値が最大値に設定された場合

最大値と最小値に値がスティッキ無活動タイムアウト値の許容範囲外の場合

ip ip-address netmask netmask ― 指定の D プロキシ IP アドレスおよびサブネット マスクに関連付けられたスティッキ エントリをすべて削除します。ドット付き 10 進表記で、要求側クライアントの D プロキシの IP アドレス(例:192.168.9.0)およびサブネット マスク(例: 255.255.255.0)を指定します。

rule rulename ― 指定の DNS 規則に関連付けられているすべてのスティッキ エントリを削除します。すでに作成されている DNS 規則の正確な名前を指定してください。

たとえば、D プロキシ IP アドレス 192.168.8.0 とサブネット マスク 255.255.255.0 を削除する場合は、次のように入力します。

gssm1.example.com# sticky database delete ip 192.168.8.0 netmask 255.255.255.0

スティッキ データベース エントリのダンプ

GSS は、ほぼ 20 分ごとに、スティッキ データベースのエントリをディスク上のバックアップ ファイルに自動的にダンプします。GSS はこのバックアップ ファイルを使用して、システムの再起動またはリブート時にスティッキ データベースを初期化し、GSS がデータベースの内容を回復できるようにします。グローバル スティッキがイネーブルに設定されている場合、GSS は、メッシュへの再加入時に、そのメッシュ内の GSS ピアからデータベースを取得できなければ常に、データベース ダンプ ファイルからスティッキ データベースをリストアします。

スティッキ データベースのすべてのエントリまたは選択したエントリを、ユーザ開始バックアップ ファイルとして指定したファイルにダンプできます。その後、ftp コマンドを EXEC モードまたはグローバル コンフィギュレーション モードで使用して FTP クライアントを開始すれば、そのファイルをリモート マシンとの間で転送できます。

GSS のスティッキ データベース XML 出力ファイルのすべての内容を表示するには、 type コマンドを使用します。ファイル内容の表示に関する詳細は、『 Cisco Global Site Selector Administration Guide 』を参照してください。

GSS には、スティッキ データベースのエントリをダンプする際の細かさを指定するオプションがあります。GSS は、バイナリと XML の出力形式をサポートしています。任意で、スティッキ データベースからダンプする情報を明確にするために、エントリ タイプ フィルタを指定することも可能です。

形式を指定して、エントリ タイプを指定しないと、GSS はスティッキ データベースから、すべてのエントリを自動的にダンプします。

既存のスティッキ データベース ダンプ ファイルを同じファイル名で上書きしようとすると、GSS は次のメッセージを表示します。

Sticky Database dump failed, a file with that name already exists.(スティッキ データベースのダンプに失敗しました。同じ名前のファイルがあります。)

スティッキ データベースのエントリを出力するには、 sticky database dump コマンドを使用します。このコマンドの構文は次のとおりです。

sticky database dump { filename } format { binary | xml } entry-type { all | group | ip }

オプションと変数は次のとおりです。

filename ― そのスティッキ データベース エントリを含むGSS ディスク上の出力ファイルの名前。このファイルは /home ディレクトリにあります。

format ― バイナリまたは XML 形式でスティッキ データベース エントリをダンプします。ファイルの内容を別の GSS のスティッキ データベース にロードする場合は、形式タイプとしてバイナリ エンコーディングを選択します。有効なエントリは次のとおりです。

binary ― 指定のスティッキ エントリを真のバイナリ形式でダンプします。このファイルを使用できるのは、 sticky database load コマンドだけです。

xml ― 指定のスティッキ エントリを XML 形式でダンプします。XML ファイルの内容には、データ フィールドとデータ記述が含まれます。このファイルの内容は、 type コマンドで表示できます。出力 XML ファイルの内容表示方法の定義については、 付録 B「スティッキおよびプロキシミティの XML スキーマ ファイル」 を参照してください。


) XML 形式でのスティッキ データベース エントリのダンプは、リソース消費の大きい操作です。スティッキ データベースのサイズや使用する GSS プラットフォームによって異なりますが、この操作の完了には、2 ~ 4 分かかることもあります。パフォーマンスの低下を避けるため、GSS の通常動作中は、XML 形式での スティッキ データベースのダンプを実行しないことを推奨します。


entry-type ― ダンプするスティッキ データベース エントリのタイプを指定します。有効なエントリは次のとおりです。

all ― スティッキ データベースからすべてのエントリをダンプします。

group ― スティッキ グループ IDを持つすべてのエントリをデータベースからダンプします。

ip ― 送信元 IP アドレスを持つすべてのエントリをデータベースからダンプします。

スティッキ データベースから D プロキシ送信元 IP アドレスを XML 形式で sdb2004_06_30 ファイルにダンプする例を示します。エントリの数が多い場合は、経過メッセージが表示される場合もあります。

gssm1.example.com# sticky database dump sdb2004_06_30 format xml entry-type ip
Starting Sticky Database dump.
 
gssm1.example.com# sticky database dump sdb2004_06_30 format xml entry-type ip
Sticky Database dump is in progress...
Sticky Database has dumped 15678 of 34512 entries
 
gssm1.example.com# sticky database dump sdb2004_06_30 format xml entry-type ip
Sticky Database dump completed. The number of dumped entries: 34512
gssm1.example.com#
 

ダンプが終了すると、完了(completed)メッセージが表示され、CLI プロンプトが再表示されます。

スティッキ データベースの定期的なバックアップの実行

定期バックアップ時間になる前に、スティッキ データベース エントリを GSS ディスク上の出力ファイルにダンプするように GSS に指示することも可能です。たとえば、GSS をシャットダウンする前に最新のスティッキ データベース エントリを確実に保存するために、データベース回復手段としてスティッキ データベースのダンプを開始することもできます。

GSS メモリ内にあるスティッキ データベースの即時バックアップを実行するには、 sticky database periodic-backup now コマンドを使用します。GSS は、スティッキ データベース ファイルとしてシステム ダンプ ファイルにスティッキ データベース エントリを送信します。リブートまたは再起動時に、GSS はこのファイルを読み取り、ブート時にその内容をロードしてスティッキ データベースを初期化します。

このコマンドの構文は次のとおりです。

sticky database periodic-backup now

たとえば、次のように入力します。

gssm1.example.com# sticky database periodic-backup now

スティッキ データベース エントリのロード

GSS は、ファイルから GSS メモリ内の既存のスティッキ データベースへのスティッキ データベースのロードとマージをサポートしています。このマージ機能を利用すると、ある GSS から別の GSSへ、エントリを追加できます。GSS メモリにロードするには、ファイルがバイナリ形式でなければなりません。

GSS はロードされたデータベース エントリを検証し、ソフトウェア バージョンの互換性を確認してから、メモリにスティッキ データベース エントリを追加します。GSS は、スティッキ データベース内の重複するエントリを上書きしません。

ディスクのスティッキ データベースをGSS メモリ内の既存のスティッキ データベースにロードし、マージするには、 sticky database load コマンドを使用します。このコマンドの構文は次のとおりです。

sticky database load filename


) 既存のスティッキ データベースとのエントリのマージではなく、GSS のすべてのスティッキ データベース エントリを交換したい場合は、sticky database load コマンドを入力する前に、sticky database delete all コマンドを入力してスティッキ データベース メモリからすべてのエントリを削除します。


GSS デバイス上の既存のスティッキ データベースにロードしてマージするスティッキ データベース ファイルの名前を指定します。GSS メモリにロードするには、ファイルがバイナリ形式でなければなりません(スティッキ データベース エントリのダンプを参照)。FTP クライアントを開始し、リモート GSS からこの GSS にスティッキ データベース ファイルを転送するには、EXEC モードまたはグローバル コンフィギュレーション モードで ftp コマンドを使用します。

GSS スティッキ データベース内の既存のエントリに、GSS3SDB ファイルからエントリをロードし、マージする例を示します。

gssm1.example.com# sticky database load GSS3SDB

トラブルシューティングを目的としたローカル レベルでの GSS DNS スティッキのディセーブル化

デバイスのトラブルシューティングまたはデバッグを目的として、グローバル レベルでイネーブルに設定されたスティッキ オプションをローカル レベルで上書きする必要がある場合は、1 つの GSS に対して、DNS スティッキをディセーブルにできます。ローカル レベルでのディセーブル設定は、実行コンフィギュレーション ファイルには保存されません。プライマリ GSSM でスティッキがイネーブルに設定されている場合、デバイスの再起動時に、GSS は DNS スティッキを再度イネーブルにします。

プライマリ GSSM のスティッキ イネーブル オプションをローカル レベルで上書きするには、sticky stop および sticky start のコマンドを使用します。

sticky stop コマンドを入力すると、GSS は即座に次の動作を停止します。

スティッキ データベースのスティッキ ルックアップ

新しい要求の場合のスティッキ データベースへのアクセス

スティッキ データベースの定期的なダンプ

スティッキ データベース エントリのエンジング アウトのプロセス

GSS は引き続き、DNS 規則とキープアライブ状態に従って、DNS 要求に回答します。

ある GSS に対してローカル レベルでスティッキをディセーブルにした場合、ユーザが次のいずれかの操作を実行するまで、スティッキはディセーブル状態のままになります。

sticky start CLI コマンドを入力する。

gss restart CLI コマンドを入力して GSS ソフトウェアを再起動する。

reload CLI コマンドを入力して、GSS デバイスのコールド リスタートを実行する。

ネットワークでグローバル DNS スティッキを使用している場合、ピア メッシュに GSS デバイスが再加入すると、その GSS はデータベース エントリをメッシュ内の他のピアと同期化しようとします。GSS は、最も近く最も新しいスティッキ データベースを見つけるために、各ピアにクエリーを送信します。ピアからアップデートを取得できない場合、GSS は以前ディスクに保存したデータベースからスティッキ データベース エントリを初期化します(ファイルが存在し有効であれば)。ファイルがない場合または無効の場合には、GSSは空のスティッキ データベースから開始します。

sticky stop コマンドを使用して、ローカル レベルで GSS デバイスの DNS スティッキをディセーブルにする例を示します。

gssm1.example.com# sticky stop
 

sticky start コマンドを使用して、ローカル レベルで GSS デバイスの DNS スティッキをイネーブルに戻す例を示します。

gssm1.example.com# sticky start