Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

ミラー構成、フェイルオーバー、および負荷分散

複数の Web サーバ間の負荷分散とフェイルオーバー

ほとんどの環境では、Web サーバ層で負荷を分散して高可用性を実現するために、複数の Web サーバが使用されます。 一般に、参加する Web サーバに対してユーザ接続を行うには、ロード・バランサが必要です。 最適なパフォーマンスと復元力を得るには、ハードウェア・ベースのソリューションの使用をお勧めします。 Cisco ACE 4710 や F5 BigIP LTM アプライアンスなどの負荷分散システムは、Web サーバ群の前面に配置されます。 この構成では、分散キャッシュ・クラスタのように、複数の InterSystems IRIS サーバ・インスタンスも存在している場合、各 Web サーバ (および Web ゲートウェイ・インスタンスも含めて) を特定の InterSystems IRIS® サーバ・インスタンスに接続するように構成してください。

ソフトウェア・ベースの負荷分散およびフェイルオーバー・システムは、ハードウェア・ベースのソリューションほど堅牢ではありませんが、非常に低コストで導入できます。 ソフトウェア・ベースのソリューションの例としては、HAProxy や Apache Group の mod_proxy_balancer があります。詳細は、HAProxy のサイト www.haproxy.orgOpens in a new tab を参照してください。

Important:

Web アプリケーションに対して必ずスティッキー・セッションを有効にしておいてください。セッションが存続している間は、それぞれのユーザ・セッションを同一のバックエンド InterSystems IRIS サーバで維持する必要があります。ただし、当然のことながら、フェイルオーバー・イベントが発生した場合はこの限りではありません。

上記のアプローチが最も推奨される方法ですが、Web ゲートウェイには複数の InterSystems IRIS サーバ (すなわち、複数の InterSystems IRIS インスタンスの CSP サーバ) 間で負荷分散やフェイルオーバーを実装するための基本の (ソフトウェアベースの) システムが用意されています。この機能については、以下のセクションで説明します。

複数の InterSystems IRIS サーバ・インスタンス間の負荷分散とフェイルオーバー

複数 (同等) の InterSystems IRIS サーバ・インスタンスが含まれる構成 (分散キャッシュ・クラスタなど) では、Web ゲートウェイは、それらの InterSystems IRIS インスタンス間で負荷分散とフェイルオーバーを実装するための基本 (ソフトウェアベース) の機能を Web アプリケーションに提供します。 しかし、第一に推奨されるのは、前述のような外部ソリューションです。

Web ゲートウェイによって提供されるフェイルオーバー・メカニズムでは、フェイルオーバー・クラスタリングや InterSystems IRIS ミラーリングなどの一般的な高可用性構成において、複数の InterSystems IRIS データベース・サーバ間にフェイルオーバーを実装する必要はありません。 それらのテクノロジは仮想 IP ベースのフェイルオーバーを提供しており、その IP アドレスに接続するように Web ゲートウェイを構成できます。

このセクションの残りの部分では、Web ゲートウェイによって提供される負荷分散およびフェイルオーバー機能について説明します。

Web ゲートウェイの負荷分散およびフェイルオーバーは、Web ゲートウェイ管理ページの [アプリケーションアクセス] セクションで構成されます。"アプリケーション・アクセスの構成" を参照してください。

[システム管理] > [構成] > [ウェブゲートウェイ管理] に移動して、[アプリケーションアクセス] を選択します。InterSystems IRIS サーバのリストを、アプリケーション (パス) に対して定義できます。 [代替サーバの使用目的] パラメータの下にリストされているオプションを使用して、そのサーバの使用目的を選択します。 以下のオプションを使用できます。

  • フェイルオーバー

  • 負荷分散とフェイルオーバー

既定の対策は、リストで定義されている最初の InterSystems IRIS サーバを使用することです。この既定のサーバに続いて代替 InterSystems IRIS サーバのリストがあり、それぞれ Server # と指定されます (# はサーバ番号です)。

構成画面には、最初は 3 つの空のサーバ・スロットのみが表示されていますが、追加のスロットが表示され、任意の数の代替サーバを定義できます。それぞれのサーバは、[有効] または [無効] としてマークできます。 既定の設定は [有効] です。

負荷分散は、ラウンドロビン方式で実装されます。 新しい各ユーザ・セッションは、次に使用可能な代替サーバに接続されます。 ユーザ・セッションがサーバで確立されると、Web ゲートウェイはサーバが使用不可能にならない限り、そのサーバでセッションを維持しようとします。このサーバが使用不可能になった場合、セッションはリスト内で次に使用可能なサーバにフェイルオーバーされます。 ステート認識セッション (保持モード = 1) の場合、どのような状況でもフェイルオーバーは行われないので、ホスト・サーバが使用不可能になるとセッションは閉じます。

CSP サーバが、[サーバ応答タイムアウト] パラメータで指定された期間に応答しない場合、Web ゲートウェイはそのサーバをオフラインとマークし、負荷分散には使用しません。ただし、Web ゲートウェイのレジストリ機能が有効な場合 (これらは既定で有効です)、Web ゲートウェイは定期的にオフラインの CSP サーバへの再接続を試みます。CSP サーバへの接続に成功すると、Web ゲートウェイはこれをオンラインにマークし、自動的に再度負荷分散に使用します。

ミラー構成

ミラー InterSystems IRIS 構成を使用すると、データベースは参加するミラー・メンバ間で複製 (またはミラーリング) されます。 InterSystems IRIS ミラー・セット構成は、インストールに参加するミラー・メンバのセットを表します。InterSystems IRIS ミラーリングの詳しい説明は、"高可用性ガイド" の "ミラーリング" を参照してください。

プライマリ・メンバに対してネットワークのリダイレクトを提供するためにミラー仮想 IP (または同等のテクノロジ) が使用される場合は、そのアドレスに接続するように Web ゲートウェイを構成します。それ以上のアクションは必要ありません。 仮想 IP アドレスは常にミラー・プライマリにマップされます。

ミラー仮想 IP を使用できない (または特定の災害シナリオでは機能しない) 構成の場合、Web ゲートウェイをミラー認識になるように構成できます。 Web ゲートウェイがミラー認識の場合、どのメンバがプライマリかを決定する責任を負います。 Web ゲートウェイをミラー認識にするには、Web ゲートウェイの [サーバ接続] セクションで、[構成はミラーを認識する] を選択し、ミラー・メンバのいずれかのアドレスを指定します。

Note:

Web ゲートウェイ構成をミラー認識にするのが適切でない状況があります。 例えば、管理ポータルをサポートする Web ゲートウェイ構成は、ミラー認識になるように構成してはなりません。このポータルはミラーの状態にかかわりなく、常に特定の InterSystems IRIS サーバに接続する必要があるからです。

ミラー認識の Web ゲートウェイ構成が、ミラー・メンバでない InterSystems IRIS サーバに接続する場合、接続は失敗し、影響を受けるクライアントは Server Availability エラーを受け取ります。

Web ゲートウェイは、最初に接続するメンバから、フェイルオーバー・メンバおよび災害復旧 (DR) メンバのリストを入手します。 Web ゲートウェイはこのリストをローカル構成ファイル (CSPRT.ini) に維持します。 その後、Web ゲートウェイがその構成で定義されたメンバに接続できなくなる場合、以前にローカルに記録されたリストを使用して、代替メンバを識別し、それに接続できるようにします。

Web ゲートウェイは、プライマリを見つけるまで、メンバ・リストを循環します。プライマリが見つからない場合、Web ゲートウェイは、ゲートウェイ構成で定義されたサーバに既定で設定されます。

  • Web ゲートウェイは、プライマリとして定義されたメンバが見つかるまで、リストを繰り返し循環します。

  • 密接なループ構造がパフォーマンスに与える悪影響を回避するため、Web ゲートウェイは各サイクルの終了後、試行回数に相当する秒数の間、停止します。

  • 特定の HTTP 要求では、Web ゲートウェイは、[サーバ応答タイムアウト] パラメータで定義された時間を超えてプライマリを見つけることはありません。

  • プライマリを検索する場合、Web ゲートウェイが最初に接続するのは、常にフェイルオーバー・メンバです。 フェイルオーバー・メンバの中にプライマリが見つからない場合のみ、非同期メンバを試行します。 非同期メンバを手動でプライマリと指定する場合のみ、非同期メンバはプライマリになります。

最初の接続時に、ミラー・メンバが Web ゲートウェイ・システム・ステータス・フォームに表示されます。 ミラー・メンバは、(Web ゲートウェイの [サーバ接続] セクションで定義されたとおりに) 現行の構成名で表示されます。その際に、ツールのヒントとしてミラー・セット名、ミラー、ミラー・メンバ名が表示されます。

[ミラー名] および [ミラー・ステータス] が [InterSystems IRIS サーバ] テーブルに表示されます。 ミラー・セットおよびミラー・メンバの名前が [ミラー名] 列に表示されます。現在のメンバ・ステータスが [ミラー・ステータス] 列に表示されます。[メンバタイプ] (Failover または Async) が表示され、プライマリ・メンバには Primary.というラベルが付けられます。

FeedbackOpens in a new tab