Citrix ADC

パス監視を使用したクラスタ内のサービスの監視

クラスタ設定では、モニタリングサービスの所有権がノード間で分散されます。したがって、異なるノードは異なるサービスを監視します。サービスを監視するノードは、サービス所有者と呼ばれます。サービス所有者だけがサーバーをプローブし、サーバーに割り当てられたサービスのステータスを監視します。さらに、クラスタ内の他のすべてのノードにサービスのステータスを伝達します。分散型監視の欠点は、すべてのノードとサーバー間のネットワーク接続とリンク状態が決定されないことです。この欠点を克服するには、パスモニタリングを使用できます。

パスモニタリングは、サーバが提供するノードとサービス間のネットワーク接続とリンク状態をチェックします。ノードは ICMP ping を送信して、サーバが到達可能かどうかを検証します。

パス監視の仕組み

3つのノードN1、N2、およびN3で構成されるCitrix ADCクラスタの例を考えてみましょう。N2は、HTTPサービス(S1)の状態を監視するサービス所有者です。サービス状態をクラスタ内の他のノードにアドバタイズします。パス監視は、クラスタ内のすべてのノードで、すべてのサービスに対して有効になります。各ノードは ICMP ping だけをサーバに送信します。サービスの所有者は、HTTP サービスリクエストと ICMP ping の両方を送信します。各ノードは、パス監視状態をサービス所有者に報告します。

パス監視を使用したクラスタ内のサービスの監視

次の 2 つのパラメーターは、ノードのサービス状態を決定します。

  • S = サービス所有者によってアドバタイズされたサービス状態
  • P = 各ノードのパス監視状態

ノードがサーバに到達できるかどうかは、そのノードのパス監視状態を決定します。

次の表は、pathMonitorIndv パラメータが有効または無効の場合に、パス監視状態に基づいてサービス状態セットを示しています。

パラメーター パス監視の状態 サービスの状態
pathMonitorIndv = NO; This is the default configuration. P1 = DOWN S1 = DOWN
  P2 = UP S1 = DOWN
  P3 = UP S1 = DOWN
pathMonitorIndv = YES P1 = DOWN S1 = DOWN
  P2 = UP S1 = UP
  P3 = UP S1 = UP

この例では、サービス所有者は、パス監視状態が DOWN に設定されているノードに基づいて、すべてのノードのサービス状態を決定します。いずれかのノードのパス監視状態が DOWN の場合、サービス所有者はすべてのノードのサービス状態を DOWN に設定します。すべてのノードのサービス状態は、各ノードのパス監視状態が UP の場合にのみ UP に設定されます。

pathMonitorIndv パラメーターを有効にすると、個々のノードのパス監視を使用できます。このパラメータを使用すると、サービス所有者は、各ノードのパス監視状態に基づいて、各ノードのサービス状態を設定できます。

pathMonitorIndv パラメータが設定されている場合、永続性などの一部の機能が壊れる可能性があります。

パス監視の設定

パスモニタリングは、すべてのサービスおよびサービスグループに適用できます。パスモニタリングパラメータは、デフォルトで無効になっています。

CLI を使用してサービス/サービスグループのパスモニタリングを有効にするには

コマンドプロンプトで、次のように入力します。

add service <service name> <IP address> <service type> <port> [-pathMonitor <YES | NO>] [-pathMonitorIndv <YES | NO>]

add servicegroup <servicegroup name> <service type> [-pathMonitor <YES | NO>] [-pathMonitorIndv <YES | NO>]

例:

add service s1 1.1.1.1 HTTP 80 -pathMonitor YES
add servicegroup sg_1 HTTP -pathMonitor YES

add service s1 1.1.1.1 HTTP 80 -pathMonitor YES -pathMonitorIndv YES
add servicegroup sg_1 HTTP -pathMonitor YES -pathMonitorIndv YES

次のように、set コマンドからパスモニタリングパラメータを設定することもできます。

set service <service name> [-pathMonitor <YES | NO>] [-pathMonitorIndv <YES | NO>]
set servicegroup <servicegroup name> [-pathMonitor <YES | NO>] [-pathMonitorIndv <YES | NO>]

例:

set service s1 -pathMonitor YES
set servicegroup sg_1 -pathMonitor YES


set service s1 -pathMonitorIndv YES
set servicegroup sg_1 -pathMonitorIndv NO

GUI を使用してサービス/サービスグループのパスモニタリングを有効にするには

  1. [トラフィック管理] > [負荷分散] > [サービス] に移動します。

    サービスグループの場合は、[トラフィック管理] > [負荷分散] > [サービスグループ] に移動します。

  2. [サービス/サービスグループ] ペインで、リストからサービス/ サービスグループを選択し、ダブルクリックして開きます。
  3. [サービスの設定] タブで、[編集] をクリックします。
  4. [パス監視]を選択します。
  5. 適用する場合は、[個別のパス監視] を選択し、[OK] をクリックします。

個々のパスモニタリングを有効にできるのは、パスモニタリングを有効にしている場合だけです。

パス監視を使用したクラスタ内のサービスの監視