Sun Cluster Data Service for Sun Java System Application Server ガイド (Solaris OS 版)

Sun Cluster HA for Sun Java System Application Server のインストールと構成

ここでは Sun Cluster HA for Sun Java System Application Server をインストールして構成する手順について説明します。

この章では、次の手順について説明します。

Sun Cluster HA for Sun Java System Application Server の概要

この節では、Sun Java System Application Server の高可用性を Sun Cluster HA for Sun Java System Application Server によってどう実現するかについて説明します。 Sun Cluster HA for Sun Java System Application Server のインストールと構成の新しい情報については、『 Sun Cluster Data Service Release Notes for Solaris OS』を参照してください。

Sun Java System Application Server は、アプリケーションサービスと Web サービスの広範囲な配備に適した、高性能 Java 2 Enterprise Edition (J2EE™) 1.3 準拠プラットフォームを提供します。 企業ユーザーのニーズを満たし、Sun Cluster ソフトウェアの制御下で実行できるように設計されたプラットフォームです。

Sun Cluster HA for Sun Java System Application Server の最新版は Sun Java System Application Server 7.0 と連動するよう設計されています。Sun Java System Message Queue は、Sun Java System Application Server と同時にインストールされます。 Sun Java System Message Queue を構成して高可用性を実現するには、『Sun Cluster Data Service for Sun Java System Message Queue ガイド (Solaris OS 版)』を参照してください。

リッチクライアントは、Sun Java System Application Server に直接接続できます。 Web クライアントは、フロントエンドの Web サーバーを通じて Sun Java System Application Server に接続できます。 Sun Java System Application Server は、パススループラグインインストールを Sun Java System Web Server に提供します。

アーキテクチャが依存するプログラムの存在は、Sun Cluster HA for Sun Java System Application Server を実装するための前提条件ではありません。 データベース、Web サーバーといったアーキテクチャが依存するプログラムは、高可用性対応として構成すべきですが、別のクラスタで実行することは可能です。

データサービス、リソースグループ、リソースなどの関連トピックについては、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービスの計画」と『Sun Cluster の概念 (Solaris OS 版)』を参照してください。

Sun Cluster HA for Sun Java System Application Server は、次のどちらの方式で構成できます。

手順については、フェイルオーバーデータサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成するおよび 複数ノードでマスターされるサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成するを参照してください。

フェイルオーバー構成の概要

Sun Cluster HA for Sun Java System Application Server は、ある一時点では 1 ノードのみによってマスターされるフェイルオーバーアプリケーションサーバーを構成するために必要な拡張プロパティを備えた、データサービスです。 ドメインの管理サーバーをフェイルオーバーリソースとして、可用性を高めることもできます。 Web クライアントは Sun Java System Application Server に直接接続できます。

クラスタ環境では、Sun Java System Application Server のコマンド行または GUI 管理ツールの使用に制限があります。 アプリケーションインスタンスや管理サーバーをリソースグループとして構成する前に、構成に関する制限事項を参照し、クラスタにおける asadmin または Sun Java System Application Server Administrative Interface の使い方を確認してください。 リソースとリソースグループの構成の詳細は、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービスの構成のガイドライン」を参照してください。

ここで説明する標準構成を使用して、Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画を行なってください。 Sun Cluster HA for Sun Java System Application Server は、他の構成もサポートする場合があります。 ただし、Enterprise Services の担当者に連絡し、他の構成に関する情報を得る必要があります。

次の図に、2 ノードクラスタで動作する Sun Java System Application Server の標準フェイルオーバー構成を示します。 Sun Cluster HA for Sun Java System Application Server をフェイルオーバーデータサービスとして構成するための追加情報については、構成に関する制限事項を参照してください。

図 1–1 フェイルオーバーデータサービス構成の 2 ノードクラスタ

イラスト: この図については、前の本文中で説明しています。

マルチマスター構成の概要

同時に複数のノード上でマスターされるように、Sun Cluster HA for Sun Java System Application Server を設定することもできます。 マルチマスター構成では、フロントエンドの Web 層を使用してアプリケーションサーバーに要求を振り分けることによって、スケーラビリティが得られます。 アプリケーションサーバーが提供するパススループラグインをフロントエンドの Web 層とともに使用して、稼働している Sun Java System Application Server インスタンスの 1 つに要求を転送する必要があります。

論理ホスト名で待ち受けるクラスタ上で動作するように、高可用性 Sun Java System Web Server を構成します。 Web 層がアプリケーションサーバーと同じクラスタで動作する場合は、クラスタのプライベート IP アドレスに要求が渡されるように、プラグインを構成する必要があります。 Sun Java System Web Server インスタンスが別のクラスタで動作するように構成することもできます。 Web 層が別個のクラスタで動作している場合は、Sun Java System Application Server リソースを実行できるクラスタメンバーの物理ホスト名に要求が渡されるように、プラグインを構成します。 物理ホスト名の一例は phys-schost-1 です。

複数のノードでマスターされる Sun Cluster HA for Sun Java System Application Server 構成の場合、プライベートインタコネクトを使用して、Sun Java System Web Server と Sun Java System Application Server 間でトラフィックを転送できます。


注 –

同時に複数のノードでマスターされるデータサービスとして Sun Cluster HA for Sun Java System Application Server を構成する場合、Sun Java System Web Server をインストールして構成する必要があります。 すべてのクラスタノードで同じ Sun Java System Web Server 構成を使用する必要があります。


Sun Java System Application Server の複数のインスタンス間では、負荷を分散できます。 負荷を分散できるようにするには、Sun Java System Application Server のプラグインを Sun Java System Web Server 構成に読み込みます。 Sun Java System Application Server のフロントエンドとして使用する場合、フェイルオーバーリソースまたはスケーラブルリソースとして Sun Java System Web Server を構成できます。

Sun Java System Application Server インスタンスは、HTTP リスナーが Sun Java System Application Server のデフォルトであるすべてのインタフェース (0.0.0.0) で待ち受けることができるように、構成されます。


注 –

複数のノードでマスターされるデータサービスの場合、 IIOP リスナーの可用性は高くなりません。


次の図に、同時に 2 ノードでリソースをマスターする Sun Java System Application Server の構成を示します。

図 1–2 マルチノード上でデータサービスをマスターする 2 ノードクラスタ

イラスト: この図については、前の本文中で説明しています。

作業マップ : Sun Cluster HA for Sun Java System Application Server のインストールと構成

インストールと構成の作業が説明されている節を次の表に示します。 指定された順番どおりに、各作業を行ってください。

表 1–1 作業マップ : Sun Cluster HA for Sun Java System Application Server のインストールと構成

作業 

参照先  

Sun Java System Application Server のインストールと構成の計画 

Sun Java System Application Server のインストールと構成の計画

ネットワークリソースの構成と起動 

ネットワークリソースを構成して起動する (フェイルオーバー構成の場合)

Sun Java System Application Server のインストールと構成 

Sun Java System Application Server をインストールして構成する

フロントエンドの Sun Java System Web Server のインストールと構成 

Sun Java System Web Server プラグインのインストールと構成を実行する

Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画 

Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画

Sun Cluster HA for Sun Java System Application Server パッケージのインストール 

Sun Cluster HA for Sun Java System Application Server のインストール

フェイルオーバーデータサービスとしての Sun Cluster HA for Sun Java System Application Server の登録と構成 

Sun Cluster HA for Sun Java System Application Server の登録と構成

複数のノードでマスターされるサービスとしての Sun Cluster HA for Sun Java System Application Server の登録と構成 

複数ノードでマスターされるサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成する

リソース拡張プロパティの構成 

Sun Cluster HA for Sun Java System Application Server 拡張プロパティの構成

Sun Cluster HA for Sun Java System Application Server のインストールと構成の確認 

Sun Cluster HA for Sun Java System Application Server のインストールと構成の確認

障害モニター情報の表示と概要 

Sun Cluster HA for Sun Java System Application Server 障害モニターの操作


注 –

Sun Cluster 構成で複数のデータサービスを実行している場合は、任意の順序でデータサービスを設定できます。ただし、 Sun Cluster HA for Sun Java System Application Server が Sun Cluster HA for DNS に依存する場合は、DNS を最初に設定する必要があります。 詳細は、『 Sun Cluster Data Service for Domain Name Service (DNS) ガイド (Solaris OS 版)』を参照してください。 DNS ソフトウェアは、Solaris オペレーティング環境に含まれています。 クラスタが別のサーバーから DNS サービスを取得する場合は、最初に、クラスタが DNS クライアントになるように構成してください。


Sun Java System Application Server のインストールと構成の計画

Sun Java System Application Server のインストールと構成を行う前に、この節をチェックリストとして使用してください。

構成に関する制限事項

インストールを始める前に、次の制限事項と要件を検討します。

フェイルオーバー用ネットワークリソースの構成と起動

フェイルオーバーデータサービス用に Sun Java System Application Server をインストールして構成する前に、インストールと構成の完了後にサーバーに使用させるネットワークリソースを設定します。 ネットワークリソースを構成して起動するには、次のコマンド行手順を実行します。 同時に複数のノードでマスターされるサービス用として Sun Java System Application Server を構成する場合は、Sun Java System Application Server をインストールして構成するに進んでください。

ネットワークリソースを構成して起動する (フェイルオーバー構成の場合)

この手順を実行するには、構成に関する次の情報が必要です。


注 –

この手順は、すべてのクラスタメンバー上で実行します。


  1. クラスタメンバー上でスーパーユーザーになります。

  2. 使用しているすべてのネットワークアドレスがネームサービスデータベースに追加されていることを確認します。

    Sun Cluster のインストール時に、この確認を行なっておく必要があります。 『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の計画に関する章を参照してください。


    注 –

    ネームサービスの検索エラーを回避するために、すべての論理ホスト名をすべてのクラスタノード上の /etc/inet/hosts ファイルに指定しておく必要があります。 サーバーの /etc/nsswitch.conf のネームサービスマッピングは、NIS、NIS+、DNS にアクセスする前に、ローカルファイルを検査するように構成してください。


  3. ネットワークリソースとアプリケーションリソースを格納するためのフェイルオーバーリソースグループを作成します。


    # scrgadm -a -g resource-group [-h nodelist]
    -g resource-group

    リソースグループの名前を指定します。 任意の名前を指定できます。

    [-h nodelist]

    潜在マスターを識別するための物理ノード名をコンマで区切って指定します (省略可能)。 フェイルオーバー時、ノードはこのリスト内の順番に従ってプライマリとして判別されます。


    注 –

    ノードリストの順番を指定するには、-h オプションを使用します。 クラスタのすべてのノードがマスターになり得るのであれば、-h オプションを指定する必要はありません。


  4. リソースグループへネットワークリソースを追加します。

    次のコマンドを使用して、リソースグループに論理ホスト名を追加します。


    # scrgadm -a -L -g resource-group -l hostname, …[-n netiflist]
    -L

    ネットワークリソースを追加することを示します。

    -g resource-group

    リソースグループの名前を指定します。

    -l hostname, …

    ネットワークリソースをコンマで区切って指定します。

    -n netiflist

    各ノード上の IP ネットワークマルチパスグループをコンマで区切って指定します (省略可能)。


    注 –

    netiflist の各要素は、netif@node の形式にする必要があります。 netif は IP ネットワークマルチパスグループ名 (sc_ipmp0 など) として指定できます。 ノードには、ノード名またはノード ID ( sc_ipmp0@1sc_ipmp@phys-schost-1 など) を指定できます。 Sun Cluster では現在、netif にアダプタ名を使用することはできません。


  5. scswitchコマンドを実行してリソースグループを有効にし、オンラインにします。


    # scswitch -Z -g resource-group
    
    -Z

    リソースグループを MANAGED 状態にして、オンラインにします。

    -g resource-group

    リソースグループの名前を指定します。

Sun Java System Application Server のインストールと構成

この節では、Sun Java System Application Server のインストールについて説明します。 ここには、Sun Cluster HA for Sun Java System Application Server に関する説明のみが含まれています。 パッチ要件をはじめとする、インストール手順の詳細は、Sun Java System Application Server 7 のマニュアルを参照してください。

次の手順で、Sun Java System Application Server をインストールします。

Sun Java System Application Server をインストールして構成する

この節では、Sun Java System Application Server のインストールと構成方法について説明します。

  1. クラスタメンバー上でスーパーユーザーになります。

  2. Solaris 8 上に Sun Java System Application Server をインストールするかどうかを決定します。

    • インストールしない場合は、手順 4 に進んでください。

    • インストールする場合、次の手順を行います。

    1. すべてのクラスタノードで、Sun Java System Application Server のインストールディレクトリから setup コマンドを実行します。

    2. setup コマンドのプロンプトに、Sun Java System Application Server インスタンスのデフォルトの場所を指定します。

      デフォルトのディレクトリを使用することによって、ローカルファイルシステムにサーバー構成ディレクトリ /var/opt/SUNWappserver7 を設定します。 Sun Cluster に管理させるサーバーインスタンスを作成する場合は、広域ファイルシステムまたは HAStoragePlus ファイルシステムへのパスを指定します。 Sun Java System Application Server インスタンスの潜在マスターが Sun Java System Application Server インスタンスの構成ファイルにアクセスできるようにする必要があります。


      注 –

      Sun Cluster は、setup コマンドによって作成されたドメインを使用できません。


  3. Sun Java System Application Server を Solaris 8 にインストールする場合や、Solaris 9 でパッケージ化されていない Sun Java System Application Server Enterprise Edition をインストールする場合は、手順 5に進みます。

  4. Solaris 9 パッケージの Sun Java System Application Server をインストールする場合は、次の手順を行います。

    1. クラスタの全ノードに Sun Java System Application Server パッケージをインストールします。

    2. アプリケーションサーバーの構成ファイルを保管しておく、広域ファイルシステム上の場所を指定します。

      このファイルシステム用に別個のディレクトリを作成してもかまいません。

  5. (任意) すべてのノードで、デフォルトの構成ディレクトリから広域ファイルシステム上のサーバー構成ディレクトリへのリンクを作成します。

    手順 8 で Sun Java System Application Server ドメインを作成するときに、サーバー構成ディレクトリへのリンクを作成することも、または広域ファイルシステム上の場所までのフルパスを指定することもできます。


    [Solaris 9 にパッケージとして含まれている Sun Java System Application Server へのリンクを作成する]
    # ln -s /global/appserver /var/appserver
    
    [パッケージ解除された Sun Java System Application Server へのリンクを作成する]
    # ln -s /global/appserver /var/opt/SUNWappserver7
    
  6. Solaris 8 上に Sun Java System Application Server をインストールする場合は、手順 8 に進みます。

  7. Solaris 9 パッケージの Sun Java System Application Server をインストールする場合は、すべてのノードで次の手順を行います。

    1. Sun Java System Application Server 実行制御スクリプトを一覧表示します。


      # ls -1 /etc/rc?.d/*appserv
      /etc/rc0.d/K05appserv
      /etc/rc1.d/K05appserv
      /etc/rc2.d/K05appserv
      /etc/rc3.d/S84appserv
      /etc/rcS.d/K05appserv
    2. Sun Java System Application Server 実行制御スクリプトの名前を変更します。

      実行制御スクリプトの名前を変更すると、 SUNWasr パッケージ (またはバンドルされていない Sun Java System Application Server をインストールした場合は SUNWasro パッケージ) の一部としてインストールされた START および STOP 実行制御スクリプトが無効になります。 データサービスの構成後、Sun Cluster HA for Sun Java System Application Server は Sun Java System Application Server インスタンスの開始および停止を行うので、この手順が必要となります。


      # mv /etc/rc0.d/K05appserv  /etc/rc0.d/k05appserv
      # mv /etc/rc1.d/K05appserv  /etc/rc1.d/k05appserv
      # mv /etc/rc2.d/K05appserv  /etc/rc2.d/k05appserv
      # mv /etc/rc3.d/S85appserv  /etc/rc3.d/s85appserv
      # mv /etc/rcS.d/K05appserv  /etc/rcS.d/k05appserv

      注 –

      上の例では、実行制御スクリプト名の先頭文字を大文字から小文字に変更しています。 しかし、スクリプト名は、ユーザーの通常の管理規則に従って変更することができます。


    3. すべての Sun Java System Application Server 実行制御スクリプトについて、名前が変更されていることを確認してください。


      # ls -1 /etc/rc?.d/*appserv
      /etc/rc0.d/k05appserv
      /etc/rc1.d/k05appserv
      /etc/rc2.d/k05appserv
      /etc/rc3.d/s85appserv
      /etc/rcS.d/k05appserv
  8. 広域ファイルシステム上で、構成情報を指定してドメインを作成します。


    # asadmin create-domain --path /global/appserver/domains \
    --adminport=4848 --adminuser admin --adminpassword password scdomain
    
  9. ドメイン管理サーバーを起動します。


    # /global/appserver/domains/scdomain/admin-server/bin/startserv
    
  10. 新しいアプリケーションサーバーインスタンスを作成し、管理サーバーを使用することによって可用性を高めます。

  11. 各ノードのローカルディスク上で、Sun Java System Application Server インスタンスに使用させるログディレクトリを作成します。

    Sun Java System Application Server インスタンスを正しく動作させるには、クラスタファイルシステムではなく、クラスタの各ノードにログディレクトリを配置する必要があります。 クラスタ内のすべてのノードにおいて、ローカルディスクの同じ場所を選択します。


    schost-1# mkdir -p /var/pathname/domain/instance/logs/
    

    注 –

    ログファイルが大きくなると予想される場合は、ディレクトリが含まれるファイルシステムに、ファイルを扱えるだけのスペースを与える必要があります。


  12. Sun Java System Application Server インスタンス PidLog の場所を変更し、手順 11 で作成したディレクトリが反映されるようにします。 場所を変更するには、サーバー構成ディレクトリの init.conf ファイルを編集します。

  13. stopserv ファイル内の PID_FILE の場所を 手順 12 で設定した PidLog の値に合わせて変更します。

  14. Log File Log Root、および Transaction Log Location パラメータの場所を 手順 11 で作成したディレクトリに合わせて変更します。 これらのパラメータを変更する場合は、Sun Java System Application Server の管理インタフェースを使用します。 手順については、『Sun Java System Application Server 7 Collection (Solaris Edition) の管理者ガイド』を参照してください。

  15. accesslog パラメータの場所を 手順 11 で作成したディレクトリに合わせて変更します。 このパラメータを変更する場合は、asadmin ユーティリティーを使用します。 次に accesslog の場所を変更する asadmin コマンドの例を示します。ここで server1 は、アプリケーションサーバーインスタンスの名前です。 追加指示については、『Sun Java System Application Server 7 管理者ガイド』を参照してください。


    % asadmin
    asadmin> set server1.virtual-server.server1.property.accesslog=
    "/var/pathname/domain/instance/logs/accesslog"
  16. アプリケーションサーバーに使用させる論理ホスト名を構成してオンラインにしておく必要があります。

  17. アプリケーションサーバーがフェイルオーバーサービスとして構成されている場合は、論理 IP アドレスで HTTP リスナーの IP アドレス、論理ホスト名でサーバー名を構成します。 複数のノードでマスターされるサービスとしてアプリケーションサーバーが構成されている場合は、手順 19 に進んでください。

    この手順は、論理ホストの主ノードで実行する必要があります。

  18. アプリケーションサーバーをマルチノードでマスターされるサービスとして構成している場合は、HTTP リスナーの IP アドレスを 0.0.0.0 に、Return Server Namelocalhost に設定します。

  19. HTTP リスナーから正しいサーバー名が戻るかどうかを確認します。

    正しいサーバー名は通常、クライアントがアプリケーションサーバー上のリソースにアクセスするときに使用するホスト名です。

  20. フェイルオーバーサービスとしてアプリケーションサーバーが構成されている場合は、Sun Cluster HA for Sun Java System Application Server インスタンスの論理 IP アドレスを指定して IIOP リスナーを構成します。 複数のノードでマスターされるサービスとしてアプリケーションサーバーが構成されている場合は、手順 21 に進んでください。

    管理サーバーの可用性を高める場合は、HTTP リスナーだけを構成し、IIOP リスナーは与えません。

  21. JMS の下のサービスで Start Enable を選択解除することによって、Message Queue サーバーの Sun Java System Application Server 起動を無効にします。

  22. startserv コマンドを発行してアプリケーションサーバーを起動します。


    # /global/appserver/domains/scdomain/server1/bin/startserv
    

    サーバーが起動しない場合は、問題を解消します。 詳細は、 Sun Java System Application Server 7 のマニュアルを参照してください。

  23. stopserv コマンドを発行してアプリケーションサーバーを停止します。


    # /global/appserver/domains/scdomain/server1/bin/stopserv
    

    サーバーを停止してから、インストールと構成の次のプロセスに進む必要があります。

Sun Java System Application Server を HADB と使用

Sun Java System Application Server の Enterprise Edition をクラスタ内で有効になっている HADB と共に使用するには、Sun Java System HADB 向け Sun Cluster データサービスをインストールして、構成します。 手順については、『Sun Cluster Data Service for Sun Java System HADB ガイド (Solaris OS 版)』を参照してください。

Sun Java System Web Server プラグインのインストールと構成

この手順では、Sun Java System Application Server で構成されるパススループラグインのインストールについて説明します。 ここには、Sun Cluster HA for Sun Java System Application Server に関する説明のみが含まれています。 パッチ要件をはじめとする、インストール手順の詳細は、Sun Java System Application Server7 のマニュアルを参照してください。

Sun Java System Web Server プラグインのインストールと構成を実行する

  1. Sun Java System Application Server 7 のマニュアルを参照して、Sun Java System Web Server プラグインをインストールします。

  2. Sun Cluster HA for Sun Java System Application Server をフェイルオーバーデータサービスとして構成しているかを確認します。

    フェイルオーバーデータサービスとして Sun Cluster HA for Sun Java System Application Server を構成している場合、フロントエンドの Sun Java System Web Server はインストールしてもしなくてもかまいません。

  3. Web サーバーがアプリケーションサーバーと同じクラスタで動作するかを確認します。

    1. loadbalancer.xml ファイルで、クラスタプライベート IP アドレスを持つ Sun Java System Web Server プラグインをリスナーとして設定します。


      <instance name="server1" enabled=true disable-timeout-in-minutes="60" 
      listeners="http://172.16.193.1:80/ http://172.16.194.5:80/ " />
      

    注 –

    プラグインの構成では、ノードトランスポートアダプタ IP アドレスを使用する必要があります。 これらの IP アドレスを求めるには、1 次 Sun Cluster ノードから scconf -p | less コマンドを実行します。 clusternode1-priv などのホスト名はこの構成では無効なので、使用しないでください。


  4. loadbalancer.xml ファイルで、物理ホスト名を持つ Sun Java System Web Server プラグインをリスナーとして設定します。


    <instance name="server1" enabled=true disable-timeout-in-minutes="60" 
    listeners=http://hosta:80/ http://hostb:80/ " />
    

    前の例では、Sun Java System Application Server インスタンスがクラスタノード 1 および 2 のポート 80 上で構成されていることを想定しています。

Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画

ここでは質問形式で、Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画について説明します。

構成計画に関する質問

ここで示す質問に基づいて、Sun Cluster HA for Sun Java System Application Server のインストールと構成の計画を行なってください。

Sun Cluster HA for Sun Java System Application Server のインストール

最初に Sun Cluster をインストールするときに、Sun Cluster HA for Sun Java System Application Server パッケージをインストールしなかった場合は、この手順でパッケージをインストールしてください。 Sun Cluster HA for Sun Java System Application Server パッケージをインストールする各クラスタノードで、この手順を実行します。

複数のデータサービスを同時にインストールする場合は、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の「ソフトウェアのインストール」に記載されている手順を実行してください。

Sun JavaTM Enterprise System インストーラプログラムを使用して Sun Cluster HA for Sun Java System Application Server パッケージをインストールする

Sun JavaTM Enterprise System インストーラプログラムは、コマンド行インタフェース (CLI) またはグラフィカルユーザーインタフェース (GUI) と共に使用できます。 作業の内容と順序は、CLI でも GUI でも同様です。

この手順を完了するには、Sun JavaTM Enterprise System インストーラ CD-ROM が必要です。

  1. Sun Cluster HA for Sun Java System Application Server パッケージをインストールするクラスタノードで、スーパーユーザーになります。

  2. (省略可能) GUI を使用して Sun JavaTM Enterprise System インストーラプログラムを実行する場合は、DISPLAY 環境変数を設定しておく必要があります。

  3. Sun JavaTM Enterprise System インストーラ CD-ROM を CD-ROM ドライブにロードします。

    ボリューム管理デーモン vold(1M) が実行されていて、CD-ROM デバイスを管理するように構成されている場合、CD-ROM デバイスは /cdrom ディレクトリに自動的にマウントされます。

  4. CD-ROM の Sun JavaTM Enterprise System インストーラディレクトリに移動します。

    Sun JavaTM Enterprise System インストーラはこのディレクトリ内にあります。


    # cd /cdrom/Solaris_sparc
    
  5. Sun JavaTM Enterprise System インストーラプログラムを開始します。


    # ./installer
    
  6. プロンプトが表示されたなら、ライセンス契約に同意し、必要な言語サポートを選択します。

    デフォルトの言語サポートは英語です。

  7. 「Availability Services & Sun Cluster 3.1 Subcomponents」で Sun Java System for Sun Cluster Agents を選択し、次に進みます。

    この選択では、Sun Cluster HA for Sun Java System Application Server も含め、Sun Java System アプリケーションで使用できる Sun Cluster データサービスをすべて選びます。

  8. プロンプトが表示されたなら、インストールのタイプを選択します。

    • 最小構成をインストールする場合は、「今すぐ設定」を選択します。 必要な構成情報を求めるプロンプトが表示されます。

    • 構成なしで、データサービスパッケージだけをインストールする場合は、「後で設定」を選択します。

  9. (任意) 製品を登録して製品アップデートを受け取らない場合は、「インストール中に登録ウィンドウを開きます」ボックスのチェックを外します。

  10. 表示される手順に従って、ノードに Sun Cluster HA for Sun Java System Application Server パッケージをインストールします。

    Sun JavaTM Enterprise System インストーラプログラムは、インストールの状況を表示します。 インストールが完了すると、プログラムはインストールのサマリとインストールログを表示します。

  11. Sun JavaTM Enterprise System インストーラプログラムを終了します。

    インストーラプログラムを終了する前に、Sun Cluster HA for Sun Java System Application Server が正常にインストールされていることを確認します。 次のコマンドを実行して、パッケージの存在をチェックします。


    # pkginfo -l SUNWscs1as
    
  12. Sun JavaTM Enterprise System インストーラ CD-ROM を CD-ROM ドライブからアンロードします。

    1. CD-ROM が使用されていないことを確認し、CD-ROM 上にないディレクトリに移動します。

    2. CD-ROM を取り出します。


      # eject cdrom
      

Sun Cluster HA for Sun Java System Application Server の登録と構成

次の手順では、scrgadm コマンドを使用して Sun Cluster HA for Sun Java System Application Server を登録し、構成する方法について説明します。 Sun Cluster HA for Sun Java System Application Server は、フェイルオーバーデータサービスとして構成することも、同時に複数のノードでマスターされるサービスとして構成することもできます。


注 –

データサービスの登録と構成の詳細は、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「データサービスリソース管理のツール」を参照してください。


この手順を実行するには、構成に関する次の情報が必要になります。

フェイルオーバーデータサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成する

次の手順で、Sun Cluster HA for Sun Java System Application Server のフェイルオーバー構成を完成させます。 この手順で、ドメイン管理サーバーをフェイルオーバーリソースとして構成することもできます。

  1. クラスタメンバー上でスーパーユーザーになります。

  2. フェイルオーバー用ネットワークリソースの構成と起動 の手順をまだ実行していない場合は、Sun Java System Application Server のリソースグループを追加します。


    # scrgadm -a -g resource-group [-h nodelist]
  3. フェイルオーバー用ネットワークリソースの構成と起動 の手順をまだ実行していない場合は、リソースグループに論理ホスト名リソースを追加します。


    # scrgadm -a -L -g  resource-group -l logical-hostname
    
  4. データサービスのリソースタイプを登録します。


    # scrgadm -a -t SUNW.s1as
    
    -a

    データサービスのリソースタイプを追加します。

    -t SUNW.s1as

    事前に定義したリソースタイプ名を指定します。

  5. ネットワークリソース用に作成したフェイルオーバーリソースグループに、アプリケーションサーバーリソースインスタンスを追加します。


    # scrgadm -a -j resource -g resource-group \
    -t SUNW.s1as \
    -x Confdir_list=install-directory/domains/domain/server \
    -y Network_resources_used=logical hostname \
    -y Port_list=port/tcp,port/tcp \
    -x Monitor_uri_list=http://logical-hostname[:port][/path]
    

    アプリケーションリソースが含まれるリソースグループは、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースグループの作成」でネットワークリソース用に作成したリソースグループと同じです。

    -j resource

    Sun Java System Application Server アプリケーションリソース名を指定します。

    -y Network_resources_used =network-resource

    resource-group にネットワークリソースのリストをコンマで区切って指定します。

    -tSUNW.s1as

    追加するリソースの種類を指定します。

    -x Confdir_list =install-directory /domains/domain/ server

    Sun Java System Application Server 構成ディレクトリのパスを指定します。 Confdir_list 拡張プロパティは必須です。エントリを 1 つだけ指定する必要があります。

    -y Port_list =port-number/protocol

    使用するポート番号とプロトコルをコンマで区切って指定します (例:80/tcp)。 Monitor_Uri_list を設定する場合、Port_list は設定してもしなくてもかまいません。

    -x Monitor_Uri_list =logical-hostname[:port][/path]

    Sun Cluster HA for Sun Java System Application Server が要求を行う URL をコンマで区切って指定します。 Port_list プロパティを設定しない場合は、Monitor_Uri_list 拡張プロパティが必須です。

  6. リソースグループをオンラインにします。


    # scswitch -Z -g resource-group
    
    -Z

    リソースとそのモニターを有効にします。

    -g resource-group

    有効になっているアプリケーションリソースグループの名前を指定します。

  7. リソースグループとアプリケーションサーバーリソースがオンラインになっていることを確認します。


    # scstat -g
    # ps -ef
    

例—フェイルオーバーデータサービスとしての Sun Cluster HA for Sun Java System Application Server の登録と構成

フェイルオーバーデータサービスとして Sun Cluster HA for Sun Java System Application Server を登録する例を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
論理ホスト名: schost-1
リソースグループ: appsrv-rg (すべてのソース用)
リソース: schost-1 (論理ホスト名),
SUNW.s1as (Sun Java System Application Server アプリケーションリソース)
 
(フェイルオーバーリソースグループを作成する)
# scrgadm -a -g appsrv-rg -h phys-schost-1,phys-schost-2
 
(リソースグループに論理ホスト名リソースを追加する)
# scrgadm -a -L -g appsrv-rg -l schost-1
 
(SUNW.s1as リソースタイプを登録する)
# scrgadm -a -t SUNW.s1as 

(Sun Java System Application Server リソースを作成し、リソースグループへ追加する)
# scrgadm -a -j appsrv-rs -g appsrv-rg \
-t SUNW.s1as \
-x Confdir_list=/global/appsrv/domains/scdomain/server1 \ 
-y Network_resources_used=schost-1 \
-y Port_list=80/tcp,3700/tcp \
-x Monitor_Uri_list=http://schost-1:80/servlet/monitor
 
(アプリケーションリソースグループをオンラインにする)
# scswitch -Z -g appsrv-rg

例— フェイルオーバーデータサービスとしての admin-server の登録と構成

上の例で作成したフェイルオーバーリソースグループの一部として、admin-server を構成する例を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
論理ホスト名: schost-1
リソースグループ: appsrv-rg (すべてのソース用)
リソース: schost-1 (論理ホスト名), 
(Sun Java System Application Server リソースを作成し、リソースグループへ追加する)
# scrgadm -a -j admin-rs -g appserv-rg \
-t SUNW.s1as \
-x Confdir_list=/global/appsrv/domains/scdomain/admin-server \
-y Network_resources_used=schost-1 \
-y Port_list=4848/tcp \
-x Monitor_Uri_List=http://schost-1:4848

複数ノードでマスターされるサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成する

この手順は、Sun Cluster HA for Sun Java System Application Server の初期インストール時にデータサービスパッケージをインストールしている場合を想定しています。 初期インストール時に Sun Java System Application Server パッケージをインストールしなかった場合は、Sun Cluster HA for Sun Java System Application Server のインストール を参照して、データサービスパッケージをインストールしてください。

同時に複数のノードでマスターされるサービスとして Sun Cluster HA for Sun Java System Application Server を登録して構成する前に、次の要件を検討してください。

この手順に関連する概念については、マルチマスター構成の概要 を参照してください。


注 –

Sun Java System Application Server インスタンスの起動または停止に、Sun Java System Application Server のコマンド行または GUI 管理ツールを使用しないでください。 複数のノードでマスターされるサービスとして構成されているアプリケーションサーバーインスタンスについては、Sun Java System Application Server 管理サーバーは、正しい状態を表示しない可能性があります。


  1. アプリケーションサーバーを格納するクラスタノードの 1 つでスーパーユーザーになります。

  2. Sun Java System Application Server のリソースグループを追加します。


    # scrgadm -a -g resource-group \
    -y Maximum_primaries=value \
    -y Desired_primaries=value [-h nodelist]
    
  3. Sun Java System Application Server のリソースタイプを登録します。


    # scrgadm -a -t SUNW.s1as
    
  4. リソースグループに Sun Java System Application Server リソースインスタンスを追加します。


    # scrgadm -a -j  resource -g resource-group -t SUNW.s1as -x 
    Confdir_list=install-directory/domains/domain/server -x
    Monitor_Uri_List=http://localhost[:port][/path] 
    
    -j resource

    Sun Java System Application Server アプリケーションリソース名を指定します。

    -t SUNW.s1as

    追加するリソースの種類を指定します。

    -x Confdir_list =install-directory/domains /domain/server

    Sun Java System Application Server 構成ディレクトリのパスを指定します。 Confdir_list 拡張プロパティは必須です。エントリを 1 つだけ指定する必要があります。

    -x Monitor_Uri_list =localhost[:port][/path]

    Sun Cluster HA for Sun Java System Application Server が要求を行う URI を指定します。 Monitor_Uri_list 拡張プロパティは必須です。

  5. フロントエンド Web 層のインストールと構成を確認します。

    手順については、Sun Java System Web Server プラグインのインストールと構成を実行する を参照してください。

  6. スケーラブルリソースグループと対応するモニターを有効にします。


    # scswitch -Z -g resource-group
    
    -Z

    リソースとそのモニターを有効にします。

    -g resource-group

    有効になっているアプリケーションリソースグループの名前を指定します。


例 1–1 複数ノードでマスターされるサービスとしての Sun Cluster HA for Sun Java System Application Server の登録と構成

同時に複数のノード上でマスターされるサービスとして、Sun Cluster HA for Sun Java System Application Server を登録する例を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
リソースグループ: appsrv-rg (for all resources)
 
(スケーラブルリソースグループを作成する)
# scrgadm -a -g appserv-rg  -y Maximum_primaries=2 \
-y Desired_primaries=2 -h phys-schost-1,phys-schost-2
 
(SUNW.s1as リソースタイプを登録する)
# scrgadm -a -t SUNW.s1as 

(Sun Java System Application Server リソースを作成し、リソースグループへ追加する)
# scrgadm -a -j appsrv-rs -g appsrv-rg -t SUNW.s1as \
-x Confdir_list=/global/appserver/domains/scdomain/server1 \ 
-x Monitor_Uri_list=http://localhost:8000/servlet/monitor
 
(アプリケーションリソースグループを有効にする)
# scswitch -Z -g appsrv-rg

Sun Cluster HA for Sun Java System Application Server 拡張プロパティの構成

コマンド行 scrgadm -x パラメータ=value を使用して、Sun Java System Application Server リソースの作成時に拡張プロパティを構成します。 拡張プロパティの詳細は、SUNW.s1as(5M) のマニュアルページを参照してください。 Sun Cluster にどのようなデータサービスプロパティがあるかについては、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「標準プロパティ」を参照してください。

表 1–2 に、Sun Cluster HA for Sun Java System Application Serverで構成できる拡張プロパティを示します。 Sun Cluster HA for Sun Java System Application Server リソースの作成に必須の拡張プロパティは、Confdir_list プロパティだけです。 Confdir_list プロパティでは、Sun Java System Application Server 構成ファイルが置かれているディレクトリを指定します。 調整の項目は、プロパティを動的に更新できるのか、それとも作成時に限って更新できるのかを示します。

表 1–2 Sun Cluster HA for Sun Java System Application Server の拡張プロパティ

名前/データタイプ 

説明  

Confdir_ list (文字配列)

所定の Sun Java System Application Server インスタンスに対応する構成が置かれているパス。 このプロパティにはエントリを 1 つ指定する必要があります。 

デフォルト: なし

範囲:なし

調整:作成時

Monitor_Uri_List (文字配列)

Monitor_Uri_List プロパティによって指定された HTTP 要求をエージェントが取得する URI。

デフォルト: なし

範囲: なし

調整: 任意の時点

SUNW.HAStoragePlus リソースタイプの構成

SUNW.HAStoragePlus リソースタイプは、SUNW.HAStorage と同じ機能を実行し、HA ストレージとデータサービス間のアクションを同期化します。

SUNW.HAStoragePlus には、ローカルファイルシステムを高可用性にする追加機能があります。 Sun Cluster HA for Sun Java System Application Server の場合、SUNW.HAStoragePlus リソースタイプは構成してもしなくてもかまいません。

関連情報については、SUNW.HAStoragePlus (1) のマニュアルページと『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースグループとディスクデバイスグループ間での起動の同期化」を参照してください。

Sun Cluster HA for Sun Java System Application Server のインストールと構成の確認

ここでは、Sun Cluster HA for Sun Java System Application Server が正しくインストールされているかどうかを確認する手順について説明します。

Sun Cluster HA for Sun Java System Application Server のインストールと構成を確認する

  1. Sun Cluster ソフトウェアの制御下で Sun Java System Application Server を起動します。


    # scswitch -Z -g resource-group
    
  2. Web ブラウザを使用して Sun Java System Application Server に接続し、Sun Java System Application Server ソフトウェアが正常に動作していることを確認します。

  3. scswitch コマンドを実行して、リソースグループをほかのクラスタノード (node2 など) に切り替えます。


    # scswitch -z -g resource-group -h node2
    
  4. リソースグループと Sun Java System Application Server リソースがオンラインであることを確認します。


    # scstat -g
    # ps -ef
    
  5. Sun Java System Application Server リソースグループに含まれるすべての潜在的プライマリで、手順 2手順 3 を繰り返します。


注 –

インストール後は、クラスタ管理コマンドの scswitch(1M) だけを使用して、手動で Sun Java System Application Server の起動と停止を行います。 起動した Sun Java System Application Server は、Sun Cluster ソフトウェアの制御下で動作します。


Sun Cluster HA for Sun Java System Application Server 障害モニターの操作

この節では、Sun Cluster HA for Sun Java System Application Server 障害モニターについて説明します。

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

拡張プロパティ

Sun Cluster HA for Sun Java System Application Server 障害モニターは、次の拡張プロパティを使用します。 次の拡張プロパティを調整できます。

表 1–3 Sun Cluster HA for Sun Java System Application Server の拡張プロパティ

名前/データタイプ 

説明  

Confdir_list(string array)

この拡張プロパティには、Sun Java System Application Server 構成ディレクトリへの完全なパスを設定します。  

デフォルト:なし

調整:作成時

Monitor_Uri_List (文字列)

Sun Java System Application Server の機能をテストする目的で、障害モニターが使用できる単一 URI または URI リスト。 障害モニターは、URI に HTTP GET を実行することによって、アプリケーションサーバーをテストします。 Monitor_Uri_List 拡張プロパティを使用すると、配備されているアプリケーションの機能を検証できます。 Sun Java System Application Server 上に配備されているアプリケーションが対応する 1 つ以上の URI にプロパティを設定することによって、配備されているアプリケーションを検証します。 HTTP サーバーのリターンコードが 500 (Internal Server Error) となるか接続に失敗した場合、検証は対応処置を実行します。 詳細は、検証メソッドの説明を参照してください。

デフォルト: Null

調整: 任意の時点

検証アルゴリズムと機能

Sun Cluster HA for Sun Java System Application Server の検証機能は、Sun Java System Application Server サーバーに要求を送ることにより、その状態を照会します。 検証機能は、次の作業を行います。

  1. Probe_timeout リソースプロパティで設定されたタイムアウト値に基づいて、Sun Java System Application Server インスタンスを検証します。

  2. ネットワークリソース構成とリソースグループの Port_list 設定によって定義された IP アドレスとポートの組に接続します。 リソースに Port_list も指定されている場合、この手順は省略されます。 正常に接続できた場合、検証機能は切り離されます。 接続に失敗した場合は、障害が記録されます。

    大量のネットワークトラフィック、高システム負荷、構成の誤りは、問い合わせが失敗する原因になることがあります。 Sun Java System Application Server サーバーが検証対象のすべての IP アドレスとポートの組み合わせで待機するように構成されていないと、構成ミスになります。 Sun Java System Application Server サーバーは、このリソースに指定したすべての IP アドレスのすべてのポートに対応するように構成します。

  3. Sun Java System Application Server サーバーに接続し、Monitor_Uri_List の各 URI に対して HTTP 要求を送り、応答を受け取ることによって、HTTP 1.1 GET チェックを実行します。

    HTTP 要求の結果は、失敗か成功のいずれかです。 すべての要求に対して、Sun Java System Application Server サーバーから応答があった場合、検証機能は復帰して次の検証とスリープのサイクルを続けます。

    大量のネットワークトラフィック、大きなシステム負荷、不正な構成は、HTTP GET 検証の失敗の原因になります。 Monitor_Uri_List プロパティを正しく構成しないと、Monitor_Uri_List の URI が不正なポートまたはホスト名を含むため失敗の原因になります。 たとえば、アプリケーションサーバーインスタンスが論理ホスト schost-1 で待ち受けていて、URI が http://schost-2/servlet/monitor として指定されていた場合、検証機能は schost-2 に接続して /servlet/monitor を要求しようとします。

  4. Probe_timeout 内に検証機能が応答を受け取らなかった場合、履歴ログに障害が記録されます。 検証機能はこの状況を Sun Java System Application Server データサービスに属す障害とみなします。 Sun Java System Application Server の検証障害は、完全障害の場合もあれば、部分障害の場合もあります。

    Probe_timeout 内に検証機能が応答を受け取らなかった場合、HTTP 応答コードを調べます。 応答コードが 500 (“Internal Server Error”) だった場合、検証は完全障害とみなされます。 それ以外の応答コードはすべて無視されます。

    完全検証障害は、次のとおりです。

    • サーバーとの接続に失敗すると、次のエラーメッセージが出されます。 %s はホスト名、%d はポート番号を表します。


      Failed to connect to the host <%s> and port <%d>. Receiving a response code of 500 “Internal Server Error” HTTP GET Response Code for probe of %s is 500. Failover will be in progress

    • サーバーに検証文字列を正常に送信できなかった場合は、次のエラーメッセージが出されます。 最初の %s はホスト名、%d はポート番号、2 番めの %s はエラーの詳細を表します。


      Write to server failed: server %s port %d: %s.

  5. モニターは、完全障害と等しくなるまで、すなわち、Retry_interval リソースプロパティで設定された値になるまで、発生した部分障害を累積します。

    部分検証障害は、次のとおりです。

    • Probe_timeout で設定された時間が経過するまでに、切断できなかった場合は、次のエラーメッセージが出されます。 最初の %d はポート番号、%s はリソース名です。


      Failed to disconnect from port %d of resource %s.

    • Probe_timeout の時間内ですべての検証手順を完了できないと、部分障害になります。

    • その他の理由でサーバーからデータを読み取ることができなかった場合は、次のエラーメッセージが出されます。 %s はホスト名、%d はポート番号を表します。 2 番めの %s はエラーの詳細を意味します。


      Failed to communicate with server %s port %d: %s

  6. 異常履歴に基づいて、データサービスのローカルでの再起動、またはデータサービスのフェイルオーバーのいずれかを実行します。