高可用性サポート

このトピックでは、複数のサーバーを使用してアクティブ-パッシブ構成で高可用性を構成する方法について説明します。このモードでは、ロードバランサーがすべてのリクエストをルーティングするアクティブなDigital Labサーバーが1つと、障害が発生した場合に引き継ぐ準備ができている別のパッシブDigital Labサーバーがあります。パッシブDigital Labサーバーの準備が常に整っていることを確認するために、両方のサーバーが常に稼働していることを監視することをお勧めします。

このセクションは、UFT Digital Labにのみ関連します。

PostgreSQLデータベースの高可用性の構成については、PostgreSQLのドキュメントを参照してください。

前提条件

このセクションでは、高可用性を実装するための前提条件を示します。

データベースの前提条件

  • Digital Lab組み込みPostgreSQLではなく、別のマシンにインストールされた外部データベースを使用する必要があります。
  • 現在UFT Digital Lab組み込みPostgreSQLを使用している場合は、外部PostgreSQLに移行します。詳しくは、エクスポートしたデータを外部データベースに移行するを参照してください。
  • Digital LabのPostgreSQL接続のデフォルトの最大数 (デフォルトでは100) を200に増やします。詳細については、PostgreSQLのドキュメントを参照してください。

ファイルストレージの前提条件

  • Digital Labファイルを保存する場所がネットワーク上にあることを確認してください。

  • Digital Labファイルストレージが現在Digital Labサーバー上にある場合は、別のマシンに移動します。詳しくはファイルストレージシステムを移行するを参照してください。

トップに戻る

Digital Labのインストール

このセクションでは、高可用性を実現するために2台のサーバーにDigital Labをインストールする方法について説明します。

  1. 最初のDigital Labサーバーをインストールします。インストール中に、サーバー構成でロードバランサーFQDNを使用し、外部PostgreSQLを使用することを示し、ファイルのストレージパスを指定します。インストール中に、組み込みコネクターチェックボックスをオフにします。このサーバーはアクティブモードです。
  2. 2台目のDigital Labサーバーをインストールします。インストール中に、サーバー構成でロードバランサーFQDNを使用し、同じデータベースとファイルのストレージパスを使用することを選択します。データベースにクエリを実行することにより、サーバーはアクティブサーバーがあることを検出し、パッシブモードになります。インストール中に、組み込みコネクターチェックボックスをオフにします。

ヒント: すでにサーバーをインストールしている場合は、ロードバランサーFQDNを使用するようにサーバー構成を変更します。詳細については、Digital Labサーバーの再構成を参照してください。

アクティブサーバーとパッシブサーバーの両方が常に稼働していることを監視することをお勧めします。サーバーに障害が発生した場合は、必ずサーバーを再起動して、パッシブUFT Digital Labサーバーの準備が常に整っていることを確認してください。デバイスは、高可用性サーバーに直接接続するのではなく、スタンドアロンコネクターを使用して接続する必要があることに注意してください。

トップに戻る

ロードバランサーの構成

実装を完了するには、ロードバランサーを構成します。

現在アクティブなDigital Labサーバーを確認するには、次のREST APIリクエストを使用するようにロードバランサーを構成します。

GET https://<サーバーアドレス>:<サーバーポート>/rest/v2/status/active

  • サーバーがアクティブな場合は、200 OK応答を受け取ります。
  • サーバーがパッシブの場合、サーバーは503 - Service Unavailable応答を返します。

サンプルHAProxy設定

以下は、一般的なロードバランサーの例です。haproxy.cfgファイルのbackendセクションにHAProxy (高可用性プロキシ) 構成を使用します。

backend webservers

  ...
  option httpchk GET /rest/v2/status/active HTTP/1.0
  server server1 <address>:<port> check fall 1 rise 1
  server server2 <address>:<port> check fall 1 rise 1

トップに戻る

その他の参照項目: