[AIX HP-UX Linux Solaris Windows]

ハイ・ アベイラビリティーの構成

ハイ・アベイラビリティー機能では、2 番目の Dispatcher マシンが使用されます。最初の Dispatcher マシンは、単一 Dispatcher 構成の場合と同様に、すべてのクライアント・トラフィックに対してロード・バランシングを実行します。 2 番目の Dispatcher マシンは、最初のマシンの「状態」をモニターし、最初の Dispatcher マシンの失敗を検出した場合に、ロード・バランシングのタスクを引き継ぎます。

このタスクについて

ハイ・ アベイラビリティーを構成すると、この 2 つのマシンには、それぞれ特定のロール、すなわち、プライマリーまたはバックアップのいずれかが割り当てられます。プライマリー・マシンは、処理の進行とともに接続データをバックアップ・マシンに送信します。プライマリー・マシンが活動状態 (ロード・バランシングを行っている) の間は、バックアップは待機状態で継続的に更新され、必要な場合にはいつでも引き継ぎできる状態になっています。

この 2 つのマシンの間の通信セッションは、heartbeat と呼ばれます。heartbeat により、それぞれのマシンが相手の「状態」をモニターできます。 バックアップ・マシンが活動マシンの失敗を検出すると、後を引き継いでロード・バランシングを開始します。この時点で 2 つのマシンの状況が反転します。すなわち、バックアップ・マシンが活動状態になり、プライマリー・マシンが待機状態になります。
注: ハイ・ アベイラビリティーの構成では、プライマリー・マシンとバックアップ・マシンの両方が同一の構成で同じサブネット上になければなりません。

完全な構文については、dscontrol highavailabilityを参照してください。下記のタスクの多くの詳細については、Load Balancer マシンの構成を参照してください。

ハイ・ アベイラビリティーの構成のヒント:

  1. 単一の Dispatcher マシンを構成して、バックアップなしでパケットを経路指定するには、始動時にハイ・ アベイラビリティーコマンドを出してはなりません。
  2. ハイ・ アベイラビリティー用に構成された 2 つの Dispatcher マシンを、単独で実行する 1 つのマシンに変換するには、いずれか一方のマシンの executor を停止してから、他方のマシンでハイ・ アベイラビリティー機能 (heartbeat、範囲、およびバックアップ) を削除します。
  3. [Linux] Linux for s/390: 上記 2 つの例の両方で、必要に応じて、ネットワーク・インターフェース・カードをクラスター・アドレスで別名割り当てしなければなりません。
  4. ハイ・ アベイラビリティー構成で 2 つの Dispatcher マシンを実行する際に、2 つのマシン上で executor、 クラスター、ポート、またはサーバーのパラメーター (port stickytime など) に異なる値を設定すると、予期しない結果が生じる場合があります。

手順

  1. [Linux] Linux for S/390 オペレーティング・システムを実行している場合、2 つの Dispatcher マシンのそれぞれに別名スクリプト・ファイルを作成します。 詳しくは、ハイ・ アベイラビリティーで実行するスクリプトを参照してください。
  2. サーバーを両方の Dispatcher サーバー・マシンで開始します。
  3. executor を両方のマシンで開始します。
  4. 各 Dispatcher マシンの非転送先アドレス (NFA) が構成されており、Dispatcher マシンのサブネットに対する有効な IP アドレスになっていることを確認します。
  5. 両方のマシンで heartbeat 情報を追加します。
    dscontrol highavailability heartbeat add source_address destination_address
    source_address および destination_address は、Dispatcher マシンの IP アドレス (DNS 名または IP アドレスのいずれか) です。値は、各マシンごとに反転します。 以下に例を示します。
    Primary - highavailability heartbeat add 9.67.111.3 9.67.186.8
    Backup  - highavailability heartbeat add 9.67.186.8 9.67.111.3
    少なくとも 1 つの heartbeat ペアには、送信元アドレスおよび宛先アドレスとしてそのペア の NFA が必要です。可能な場合には、heartbeat ペアの少なくとも 1 つを、 通常のクラスター・トラフィックではなく別個のサブネットにまたがるようにしてください。 heartbeat トラフィックを別個に保持すると、非常に重いネットワーク負荷の最中に起こる偽の引き継ぎを防ぎ、 フェイルオーバー後の完全なリカバリーの時間を短縮させます。
    1. オプション: 実行プログラムがハイ・アベイラビリティー heartbeat のタイムアウトに使用する秒数を設定してください。デフォルトは 2 秒です。 以下に例を示します。
      dscontrol executor set hatimeout 3
      
  6. 両方のマシンで、reach add コマンドを使用して、Dispatcher が全サービスを保証するために到達できなければならない、IP アドレスのリストを構成します。 リーチ・ターゲットをお勧めしますが、必須ではありません。詳しくは、heartbeat およびリーチ・ターゲットによるサーバー障害の検出を参照してください。 以下に例を示します。
     dscontrol highavailability reach add 9.67.125.18
    
  7. バックアップ情報を各マシンに追加します。
    1. プライマリー・マシンの場合は、以下のようになります。
      dscontrol highavailability backup add primary [auto | manual] port
    2. バックアップ・マシンの場合は、以下のようになります。
       dscontrol highavailability backup add backup [auto | manual] port
      注: port には、マシン上の未使用のポートを選択します。入力したポート番号は、 パケットを受信しているのが正当なホストであることを確認するためのキーとして使用されます。
  8. 各マシンの HA 状況をチェックします。
     dscontrol highavailability status
    

    マシンには、それぞれ正しいロール (バックアップとプライマリー) および状態があるはずです。 プライマリーは活動状態でなければなりません。バックアップは待機モードでなければなりません。リカバリー・ストラテジーは同じでなければなりません。

  9. 両方のマシンのクラスター、ポート、およびサーバー情報をセットアップします。
  10. オプション: 接続レコードおよび類縁性レコードの複製を使用可能にします。
    新フィーチャー 新フィーチャー: この機能を使用すれば、HA パートナー間で接続レコードおよび類縁性レコードを複製することができるようになります。レコードが複製されると、接続および類縁性状態が保持され、引き継ぎが発生した後でも接続が継続できるようになります。newfeat
    • 接続レコードおよび類縁性レコードに対する複製を使用可能にします。
      dscontrol port set cluster@port repstrategy both
    • 接続レコードのみの複製を使用可能にします。
      dscontrol port set cluster@port repstrategy connection
    • 類縁性レコードのみの複製を使用可能にします。
      dscontrol port set cluster@port repstrategy affinity
    • 複製を使用不可にします。
      dscontrol port set cluster@port repstrategy none
    このコマンドの詳細については、dscontrol port コマンドに関するトピックを参照してください。
  11. 両方のマシンの manager および advisor を開始します。



サブトピック
heartbeat およびリーチ・ターゲットによるサーバー障害の検出
障害が発生したサーバーに対するハイ・ アベイラビリティーのリカバリー・ストラテジー
ハイ・ アベイラビリティーで実行するスクリプト
関連資料
dscontrol port
タスク・トピック タスク・トピック    

ご利用条件 | フィードバック

最終更新最終更新: Jun 21, 2011 12:49:06 PM EDT
ファイル名: tprf_highavail.html