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

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

この章では、Sun Cluster HA for Sun Java System Web Server のインストールと構成の手順について説明します。このデータサービスは、以前の Sun Cluster HA for Netscape TM HTTP、Sun Cluster HA for iPlanet Web Server、および Sun Cluster HA for Sun ONE Web Server です。アプリケーションエラーの文書に「Netscape」という語が含まれてた場合は、「Sun Java System Web Server」と読みかえてください。Sun Cluster Agents CD-ROM でも、アプリケーション名が「iPlanet Web Server」のままになっていることがあります。

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

Sun Cluster HA for Sun Java System Web Server は、フェイルオーバーデータサービスまたはスケーラブルデータサービスとして構成できます。データサービス、リソースグループ、リソース、およびその他の関連トピックの一般情報については、 『 Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービスの計画」および『Sun Cluster Concepts Guide for Solaris OS』を参照してください。


注 –

このデータサービスのインストールと構成には、SunPlex Manager を使用できます。詳細は SunPlex Manager のオンラインヘルプを参照してください。



注 –

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



注 –

インストール後は、クラスタ管理コマンドの scswitch(1M) を使用する場合を除き、手作業で Sun Java System Web Server を起動したり停止したりしないでください。詳細は、マニュアルページを参照してください。Sun Java System Web Server は、起動後は Sun Cluster ソフトウェアによって制御されます。


インストールと構成の計画

インストールを開始する前に、以下の質問に回答します。

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

以下の表は、インストールおよび構成のタスクを解説するセクションの一覧です。

表 1–1 Task Map: Sun Cluster HA for Sun Java System Web Server のインストールと構成

作業 

参照箇所 

Sun Java System Web Server のインストール 

「Sun Java System Web Server のインストールと構成」

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

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

Sun Cluster HA for Sun Java System Web Server を登録し、データサービス用のクラスタを構成する方法については、「Sun Cluster HA for Sun Java System Web Server の登録と構成」 を参照

「Sun Cluster HA for Sun Java System Web Server の登録と構成」

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

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

障害モニターの情報の表示 

「Sun Cluster HA for Sun Java System Web Server 障害モニター」

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

この節では、以下の作業の手順について解説します。


注 –

Web サーバーに対する URL マッピングの設定では、いくつかの規則に従う必要があります。たとえば、CGI ディレクトリを設定する場合、可用性を維持するには、マップしたディレクトリをクラスタファイルシステムに配置する必要があります。たとえば、CGI ディレクトリを /global/pathname /cgi-bin にマップします。

CGI プログラムが、RDBMS などのバックエンドサーバーにアクセスする場合は、バックエンドサーバーも Sun Cluster によって制御されていることを確認してください。そのサーバーが、Sun Cluster ソフトウェアがサポートする RDBMS の場合は、高可用性 RDBMS パッケージを使用してください。バックエンドサーバーは、API を使用して Sun Cluster の制御下に置くこともできます。API については、『Sun Cluster Data Services Developer's Guide for Solaris OS』を参照してください。


Sun Java System Web Server のインストール

この手順を実行するには、お使いの構成に関する以下の情報が必要です。


注 –

Sun Cluster HA for Sun Java System Web Server サービスと別の HTTP サーバーを実行しており、これらが同じネットワークリソースを使用している場合は、それぞれ異なるポートで待機するように構成してください。異なるポートで待機するように構成しないと、2 つのサーバーの間でポートの競合が発生します。


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

  2. インストールを開始します。

    • Sun Java System Web Server を Solaris 8 にインストールする場合は、CD のインストールディレクトリから Sun Java System Web Server に setup コマンドを実行します。

    • Solaris 9 とパッケージされた Sun Java System Web Server をインストールする場合は、インストール CD の手順に従います。


    注 –

    Solaris 9 とパッケージされた Sun Java System Web Server をインストールする場合は、システムの再起動時に Web サーバーの自動開始を有効にしないでください


  3. プロンプトが表示されたら、Sun Java System Web Server バイナリをインストールする場所を入力します。

    インストール場所には、クラスタファイルシステム上またはローカルディスク上の場所を指定します。ローカルディスク上にインストールする場合は、次の手順で指定するネットワークリソース (論理ホスト名または共有アドレス) の主ノードとなる可能性があるすべてのクラスタノードに Web サーバーインストールします。

  4. マシン名の入力プロンプトに対して、Sun Java System Web Server が依存する論理ホスト名と適切な DNS ドメイン名を入力します。

    完全な論理ホスト名は、 network-resource.domainname の形式になります (例: schost-1.sun.com )。


    注 –

    Sun Cluster HA for Sun Java System Web Server のフェイルオーバーを正常に実行するには、マシン名の入力時に、物理ホスト名ではなく、論理ホスト名または共有アドレスリソース名のどちらかを指定します。


  5. 問い合わせが表示されたら、「Run admin server as root」を選択します。

    Sun Java System インストールスクリプトが管理サーバー用として選択したポート番号を書き留めてください。管理サーバーを使用して Sun Java System Web Server のインスタンスを構成するときに、このデフォルト値を使用できます。デフォルト値を使用しない場合は、別のポート番号を指定できます。

  6. 問い合わせが表示されたら、サーバー管理者 ID とパスワードを入力します。

    システムのガイドラインに従います。

    管理サーバーが起動されることを示すメッセージが表示されたら、構成の準備は完了です。

Sun Java System Web Server の構成

この手順では、Sun Java System Web サーバーのインスタンスの可用性を高める構成方法について解説します。この手順では、Web ブラウザを使用します。

この手順を実行するには、次の情報を確認しておく必要があります。

  1. Sun Java System Web Server をスケーラブルデータサービスとして構成する場合は、すべてのノードのローカルディスクに、ログ、エラーファイル、PID ファイルを格納するディレクトリを作成し、Sun Java System Web Server で管理するように設定します。

    スケーラブル構成を正常に稼動するには、これらのファイルをクラスタファイルシステムではなく、クラスタの各ノードに配置する必要があります。共有の記憶装置は、Sun Java System Web Server をフェイルオーバーデータサービスとして構成する場合以外は使用しません。

    クラスタ内のすべてのノードにおいて、ローカルディスクの同じ場所を選択します。mkdir -p コマンドを使用してディレクトリを作成します。このディレクトリの所有者は nobodyにします。

    次の例に、この手順を行う方法を示します。


    phys-schost-1# mkdir -p /var/pathname/http-instance/logs/
    

    注 –

    エラーログや PID ファイルが大きくなると予想される場合、/var ディレクトリの容量は小さいので、このディレクトリに格納してはいけません。その代わりに、大きなファイルを格納できるだけの十分な容量を持つパーティションに新しいディレクトリを作成します。


  2. 管理ワークステーションまたはクラスタノードから Netscape ブラウザを起動します。

  3. 1 つのクラスタノード上で、ディレクトリ https-admserv に移動し、次のように Sun Java System 管理サーバーを起動します。


    # cd https-admserv
    # ./start
    

  4. Netscape ブラウザで Sun Java System 管理サーバーの URL を入力します。

    URL は、サーバーのインストール手順 (手順 4) の Sun Java System インストールスクリプトによって確立される物理ホスト名とポート番号で構成されます (例: n1.eng.sun.com:8888 )。手順 2 を実行すると、./start コマンドで管理 URL が表示されます。

    プロンプトが表示されたら、サーバーのインストール手順 (手順 6) で指定したユーザー ID とパスワードを入力し、Sun Java System 管理サーバーインタフェースにログインします。

  5. 次の作業を行うには、可能な限り管理サーバーを使用し、そうでない場合だけ手動で変更するようにします。

    • サーバー名が正しいことを確認します。

    • サーバーユーザーがスーパーユーザーとして設定されていることを確認します。

    • バインドアドレスフィールドを次のアドレスの 1 つに変更します。

      • ネームサービスとして DNS を使用する場合、論理ホスト名または共有アドレス。

      • ネームサービスとして NIS を使用する場合、論理ホスト名または共有アドレスに対応する IP アドレス。

    • この節の手順 1 で作成したディレクトリを反映するように、ErrorLog、PidLog、および Access Log エントリを更新します。

    • 変更を保存します。

  6. このインスタンスの起動に使用するセキュアキーパスワードを含むファイルを作成してサーバーのルートディレクトリに置きます。このファイルには、keypass という名前を付けます。


    注 –

    このファイルには、キーデータベースのパスワードが含まれています。適切なアクセス権を付与して、ファイルを保護する必要があります。


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

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

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

Sun JavaTM Enterprise System インストーラ を使用した Sun Cluster HA for Sun Java System Web Server パッケージのインストール

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

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

  1. Sun Cluster HA for Sun Java System Web 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 Web Server も含め、Sun Java System アプリケーションで使用できる Sun Cluster データサービスをすべて選びます。

  8. プロンプトが表示されたら、構成の時間を選択します。

    • 今すぐ構成を実行する場合は、「今すぐ設定」を選択します。デフォルト値は順次そのまま使用するか、変更できます。

    • インストールの後で構成を実行する場合は、「後で設定」を選択します。

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

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

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

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

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


    # pkginfo -l SUNWschtt
    
  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 Web Server の登録と構成

Sun Cluster HA for Sun Java System Web Server は、フェイルオーバーデータサービスまたはスケーラブルデータサービスとして構成できます。Sun Cluster HA for Sun Java System Web Server をスケーラブルデータサービスとして構成する場合には、追加の手順を実行する必要があります。ここでは、文頭に「スケーラブルサービスのみ」と明記しスケーラブルサービスの場合の追加手順を先に説明します。フェイルオーバーサービスとスケーラブルサービスの個々の例は、その後ご説明します。

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

この節では、Sun Cluster HA for Sun Java System Web Server の登録と構成の方法について解説します。

scrgadm (1M) コマンドを使用した Sun Cluster HA for Sun Java System Web Server の登録方法と構成方法について説明します。


注 –

その他のオプションでもデータサービスは登録および構成できます。これらのオプションの詳細は、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「データサービスリソースを管理するためのツール」を参照してください。


この手順を実行するには、次の情報を確認しておく必要があります。


注 –

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


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

  2. Sun Cluster HA for Sun Java System Web Server のリソースタイプを登録します。


    # scrgadm -a -t SUNW.iws
    
    -a

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

    -t SUNW.iws

    当該データサービス用にあらかじめ定義されているリソースタイプを指定します。

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

    フェイルオーバーサービスの場合には、このリソースグループはアプリケーションリソースも保持します。

    -h オプションを必要に応じて指定し、データサービスを実行できるノードグループを選択できます。


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

    フェイルオーバーリソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループごとに一意である必要があります。

    -h nodelist

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


    注 –

    --h を使用してノードリストの順序を指定します。クラスタ内のすべてのノードが潜在マスターの場合、-h オプションを使用する必要はありません。


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

    Sun Cluster のインストール時に、この確認を行なっておく必要があります。詳細については、『Sun Cluster Software Installation Guide for Solaris OS』の計画に関する章を参照してください。


    注 –

    ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーとクライアントの /etc/inet/hosts ファイルに、すべての論理ホスト名と共有アドレスが登録されていることを確認してください。サーバーの /etc/nsswitch.conf のネームサービスマッピングは、NIS または NIS+ にアクセスする前に、最初にローカルファイルを検査するように構成してください。


  5. ネットワークリソース (論理ホスト名または共有アドレス) をフェイルオーバーリソースグループに追加します。


    # scrgadm -a {-S | -L} -g resource-group \
    -l network-resource,… [-j resource] \
    [-X auxnodelist=node, …] [-n netiflist]
    -S | -L

    共有アドレスリソースには -S を、論理ホスト名リソースには -L を使用します。

    -g resource-group

    フェイルオーバーリソースグループの名前を指定します。

    -l network-resource, …

    追加するネットワークリソースをコンマで区切って指定します。-j オプションを使用してリソース名を指定できます。リソース名を指定しないと、ネットワークリソースの名前は、コンマで区切ったリストの最初の名前になります。

    -j resource

    リソースの名前を指定します (省略可能)。リソース名を指定しない場合、ネットワークリソース名は、デフォルトで -l オプションで最初に指定した名前になります。

    -X auxnodelist =node, …

    共有アドレスをホストできるクラスタノード (ただし、フェイルオーバー時に主ノードとして使用されない) を識別する物理ノード ID をコンマで区切って指定します (オプション)。このオプションを指定した場合は、これらのノードは、リソースグループの nodelist で指定されるノードと相互に排他的になります。

    -g resource-group

    リソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループごとに一意である必要があります。

    -h nodelist

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

    -n netiflist

    各ノード上の IP ネットワークマルチパス グループをコンマで区切って指定します (省略可能)。 netiflist の各要素は、netif@node の形式で指定する必要があります。netif は IP ネットワークマルチパス グループ名 (sc_ipmp0 など) として指定できます。ノードは、sc_ipmp0@1sc_ipmp@phys-schost-1 などのノード名またはノード IDで特定できます。


    注 –

    現バージョンの Sun Cluster では、netif にアダプタ名を使用できません。


  6. スケーラブルサービスのみ : 希望するすべてのクラスタノードで実行するスケーラブルリソースグループを作成します。

    Sun Cluster HA for Sun Java System Web Server をフェイルオーバーデータサービスとして実行する場合は、この手順を省略して手順 8 に進んでください。

    データサービスアプリケーションリソースを保持するリソースグループを作成します。主ノードの最大数と希望数、およびこのリソースグループと 手順 3 で作成したフェイルオーバーリソースグループとの間の依存性について指定する必要があります。この依存性によって、フェイルオーバー時に、Resource Group Manager (RGM) は、ネットワークリソースに依存する任意のデータサービスが開始される前に、そのネットワークリソースを開始できます。


    # scrgadm -a -g resource-group \
    -y Maximum_primaries=m -y Desired_primaries=n \
    -y RG_dependencies=resource-group
    
    -y Maximum_primaries =m

    このリソースグループに許可するアクティブ主ノードの最大数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。

    -y Desired_primaries =n

    このリソースグループに許可するアクティブ主ノードの希望数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。

    -y RG_dependencies = resource-group

    作成されたリソースグループが依存する共有アドレスリソースを含むリソースグループを指定します。

  7. スケーラブルサービスのみ : スケーラブルリソースグループにアプリケーションリソースを作成します。

    Sun Cluster HA for Sun Java System Web Server をフェイルオーバーデータサービスとして実行する場合は、この手順を省略して手順 8 に進んでください。

    この手順を繰り返し、複数のアプリケーションリソース (セキュアバージョンや非セキュアバージョンなど) を追加できます。

    必要に応じて、データサービスの負荷均衡を設定します。負荷均衡を設定するには、標準リソースプロパティの Load_balancing_policyLoad_balancing_weights を使用します。これらのプロパティの解説につては、『 Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「標準プロパティ」を参照してください。また、この節で説明している例も参照してください。


    # scrgadm -a -j resource -g resource-group \
    -t resource-type -y Network_resources_used=network-resource, … \
    -y Port_list=port-number/protocol, … -y Scalable=True \
    -x Confdir_list=config-directory, …
    -j resource

    追加するリソースの名前を指定します。

    -g resource-group

    リソースが配置されるスケーラブルリソースグループの名前を指定します。

    -t resource-type

    追加するリソースのタイプを指定します。

    -y Network_resources_used = network-resource, …

    データサービスが使用する共有アドレスを指定するネットワークリソース名をコンマで区切って指定します。

    -y Port_list =port-number/protocol, …

    使用するポート番号とプロトコルの対をコンマで区切って指定します (例 : 80/tcp, 81/tcp)。

    -y Scalable =True

    スケーラブルサービスに必要なブール値を指定します。

    -x Confdir_list =config-directory, …

    Sun Java System 構成ファイルの位置をコンマで区切って指定します。これは、Sun Cluster HA for Sun Java System Web Server の必須拡張プロパティです。


    注 –

    1 対 1 のマッピングは、Confdir_ListPort_List に適用されます。一方のリストに含まれる各値は、指定した順に、もう一方のリストの値と対応する必要があります。


  8. フェイルオーバーサービスのみ : フェイルオーバーリソースグループにアプリケーションリソースを作成します。

    この手順は、Sun Cluster HA for Sun Java System Web Server をフェイルオーバーデータサービスとして実行する場合だけ行なってください。Sun Cluster HA for Sun Java System Web Server をスケーラブルサービスとして実行する場合は、前述の 手順 6 および 手順 7 を実行し、手順 10 へ進んでください。

    この手順を繰り返し、複数のアプリケーションリソース (セキュアバージョンや非セキュアバージョンなど) を追加できます。


    # scrgadm -a -j resource -g resource-group \
    -t resource-type -y Network_resources_used=logical-hostname-list \
    -y Port_list=port-number/protocol \
    -x Confdir_list=config-directory
    
    -j resource

    追加するリソースの名前を指定します。

    -g resource-group

    リソースが配置されるフェイルオーバーリソースグループの名前を指定します。

    -t resource-type

    追加するリソースのタイプを指定します。

    -y Network_resources_used =network-resource, …

    データサービスが使用する論理ホストを識別するネットワークリソースをコンマで区切って指定します。

    -y Port_list =port-number/protocol

    使用するポート番号とプロトコルを指定します (例:80/tcp)。Port_listConfdir_list 間の 1 対 1 のマッピング規則により、フェイルオーバーサービスのための Port_list には、エントリを 1 つだけ登録します。

    -x Confdir_list =config-directory

    Sun Java System 構成ファイルの格納場所を指定します。フェイルオーバーサービス用の Confdir_list には、エントリを 1 つだけ登録します。config-directory には、config という文字が含まれているディレクトリを指定する必要があります。これは、Sun Cluster HA for Sun Java System Web Server の必須拡張プロパティです。


    注 –

    必要に応じて、Sun Cluster HA for Sun Java System Web Server に属する拡張プロパティを追加設定することで、プロパティのデフォルト値を上書きできます。これらのプロパティについては、表 1–2 を参照してください。


  9. フェイルオーバーリソースグループをオンラインにします。


    # scswitch -Z -g resource-group
    
    -Z

    ネットワークリソースと障害モニターを有効にし、リソースグループを管理状態 ( MANAGED) に切り替え、オンラインにします。

    -g resource-group

    フェイルオーバーリソースグループの名前を指定します。

  10. スケーラブルサービスのみ : スケーラブルリソースグループをオンラインにします。


    # scswitch -Z -g resource-group
    
    -Z

    リソースとモニターを有効に設定し、リソースグループを MANAGED 状態にし、オンラインにします。

    -g resource-group

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

例: スケーラブル Sun Cluster HA for Sun Java System Web Server の登録

次に、スケーラブル Sun Cluster HA for Sun Java System Web Server の登録方法を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
共有アドレス: schost-1
リソースグループ: sa-resource-group-1 (共有アドレス),
iws-resource-group-1 (スケーラブルアプリケーションリソース)
リソース: schost-1 (共有アドレス), Sun-app-insecure-1 (非セキュア
アプリケーションリソース), Sun-app-secure-1 (セキュアアプリケーションリソース)
 
(共有アドレスを含むようにフェイルオーバーリソースグループを追加する)
# scrgadm -a -g sa-resource-group-1
 
(フェイルオーバーリソースグループに共有アドレスリソースを追加する)
# scrgadm -a -S -g sa-resource-group-1 -l schost-1
 
(スケーラブルリソースグループを追加する)
# scrgadm -a -g iws-resource-group-1 -y Maximum_primaries=2 \
-y Desired_primaries=2 -y RG_dependencies=sa-resource-group-1
 
(Sun Cluster HA for Sun Java System Web Server リソースタイプを登録する)
# scrgadm -a -t SUNW.iws
 
(デフォルトの負荷分散を使用して非セキュアアプリケーションインスタンスを追加する)
# scrgadm -a -j Sun-app-insecure-1 -g iws-resource-group-1 -t SUNW.iws \
-x Confdir_List=/opt/SunONE/https-Sun-app-insecure-1 \
-y Scalable=True -y Network_resources_used=schost-1 -y Port_list=80/tcp 

(スティッキー IP 負荷分散を使用してセキュアアプリケーションインスタンスを追加する)
# scrgadm -a -j Sun-app-secure-1 -g iws-resource-group-1 -t SUNW.iws \
-x Confdir_List=/opt/SunONE/https-Sun-app-secure-1 \
-y Scalable=True -y Network_resources_used=schost-1 \
-y Port_list=443/tcp -y Load_balancing_policy=LB_STICKY \
-y Load_balancing_weights=40@1,60@2
 

(フェイルオーバーリソースグループをオンラインにする)
# scswitch -Z -g sa-resource-group-1
 
(スケーラブルリソースグループをオンラインにする)
# scswitch -Z -g iws-resource-group-1

例: フェイルオーバー Sun Cluster HA for Sun Java System Web Server の登録

次に、フェイルオーバー Sun Cluster HA for Sun Java System Web Server サービスを 2 ノードクラスタで登録する例を示します。


クラスタ情報
ノード名: phys-schost-1, phys-schost-2
論理ホスト名: schost-1
リソースグループ: resource-group-1 (すべてのリソース) 
リソース: schost-1 (論理ホスト名), Sun-app-insecure-1 (非セキュアアプリケーション 
アプリケーションリソース), Sun-app-secure-1 (セキュアアプリケーションリソース)
 
(すべてのリソースを含むようにリソースグループを追加する)
# scrgadm -a -g resource-group-1
 
(論理ホスト名リソースをリソースグループに追加する)
# scrgadm -a -L -g resource-group-1 -l schost-1 
 
(Sun Cluster HA for Sun Java System Web Server リソースタイプを登録する)
# scrgadm -a -t SUNW.iws
 
(非セキュアアプリケーションリソースインスタンスを追加する)
# scrgadm -a -j Sun-app-insecure-1 -g resource-group-1 -t SUNW.iws \
-x Confdir_list=/opt/SunONE/conf -y Scalable=False \
-y Network_resources_used=schost-1 -y Port_list=80/tcp\ 

(セキュアアプリケーションリソースインスタンスを追加する)
# scrgadm -a -j Sun-app-secure-1 -g resource-group-1 -t SUNW.iws \ 
-x Confdir_List=/opt/SunONE/https-Sun-app-secure-1 -y Scalable=False \
-y Network_resources_used=schost-1 -y Port_list=443/tcp \ 

(フェイルオーバーリソースグループをオンラインにする)
# scswitch -Z -g resource-group-1

SUNW.HAStoragePlus リソースタイプを構成する

Sun Cluster 3.0 5/02 では、SUNW.HAStoragePlus リソースタイプが 取り入れられています。この新しいリソースタイプは SUNW.HAStorage と同じ機能を果たし、HA ストレージおよびデータサービス間でアクションを同期化します。

SUNW.HAStoragePlus には、ローカルファイルシステムを高可用性にする追加機能があります。

背景情報については、SUNW.HAStoragePlus(5) のマニュアルページと『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースグループとディスク装置グループの関係」を参照してください。手順については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースグループとディスクデバイスグループ間での起動の同期」を参照してください。(Sun Cluster 3.0 5/02 より前のバージョンを使用している場合は、SUNW.HAStoragePlus ではなく、SUNW.HAStorage を設定する必要があります。新しいリソースの設定手順については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースグループとディスクデバイスグループ間での起動の同期」を参照してください。)

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

この節では、Sun Cluster HA for Sun Java System Web Server の拡張プロパティについて解説します。フェイルオーバーの場合、データサービスは強制的に Confdir_list のサイズを 1 にします。複数の構成ファイル (インスタンス) が必要な場合は、それぞれが Confdir_list エントリを 1 つ持つ複数のフェイルオーバーリソースを作成してください。

通常、拡張プロパティは、Sun Java System Web Server リソースを作成するときに、コマンド行から scrgadm -x parameter=value を実行して構成します。Sun Cluster のすべてのプロパティの詳細については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「標準プロパティ」を参照してください。

Sun Java System Web サーバーに構成する拡張プロパティの詳細については、表 1–2 を参照してください。Sun Java System Web Server リソースの作成時に必要な拡張プロパティは、Confdir_list プロパティだけです。拡張プロパティの中には動的に変更できるものがあります。それ以外の拡張プロパティは、リソースを作成するときにしか更新できません。そのプロパティをいつ変更できるかについては、説明欄の「調整 : 」を参照してください。

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

拡張プロパティ名 

説明 

Confdir_ list (文字配列)

特定の Sun Java System Web Server インスタンスのサーバールートディレクトリへのポインタ。 Sun Java System Web Server がセキュアモードの場合、パス名に keypass という名前のファイルを指定する必要があります。このファイルには、このインスタンスの起動に必要なセキュアキーパスワードが含まれています。

デフォルト: なし

範囲: なし

調整: 作成時

Failover_enabled (ブール)

Retry_interval で指定した期間内に Retry_count で指定した回数を超える再起動が発生しようとした場合、障害モニターが Sun Java System Web Server リソースをフェイルオーバーするかどうかを指定します。この拡張プロパティの値は次のとおりです。

  • True – 障害モニターが Sun Java System Web Server リソースをフェイルオーバーすることを指定します。

  • False – 障害モニターが Sun Java System Web Server リソースをフェイルオーバーしないことを指定します。

 

初期値: True

範囲: 該当なし

調整: リソースが無効時

Monitor_retry_count (整数)

Monitor_retry_interval プロパティの指定時間に、プロセスモニター機能 (PMF) が障害モニターを再起動する回数。このプロパティは、障害モニターの再起動回数を制御するものであり、リソースの再起動を制御するわけではありません。リソースの再起動は、システム定義プロパティの Retry_intervalRetry_count によって制御されます。

 

初期値: 4

範囲: 02,147,483,641

–1 は、再試行の数が無限であることを示します。 

調整: 任意の時点

Monitor_retry_interval (整数)

障害モニターの失敗回数をカウントする期間 (分)。この期間内に、障害モニターの失敗回数が、拡張プロパティ Monitor_retry_count の指定値を超えた場合、PMF は障害モニターを再起動しません。

初期値: 2

範囲: 02,147,483,641

–1 は、再試行の間隔が無限であることを示す。 

調整: 任意の時点

Probe_ timeout (整数)

障害モニターが Sun Java System Web Server インスタンスの検証において使用するタイムアウト値 (秒単位)。 

初期値: 90

範囲: 02,147,483,641

調整: 任意の時点

Monitor_Uri_List (文字列)

Sun Java System Web Server 上に配備された任意のアプリケーションを検証するために障害モニターが使用できる単一の URI または URI のリスト。Sun Java System Web Server 上に配備されているアプリケーションが応対する 1 つ以上の URI にプロパティを設定することによって、配備されているアプリケーションを検証します。 

初期値: Null

調整: 任意の時点

導入されたリリース: 3.1 10/03

任意 URI の監視

Web サーバーの障害モニターで、Web サーバーが提供するアプリケーション (URI) の任意リストを検証する場合は、 Monitor_Uri_List 拡張プロパティを設定する必要があります。この拡張プロパティによって、拡張された検証機能が提供されます。また、使用している Web サーバーのほかにサービスを階層状にする場合に、このプロパティは有用です。Monitor_uri_list 拡張プロパティは、セキュア Sun Java System Web Server インスタンスではサポートされません。Monitor_Uri_List 拡張プロパティを設定しない場合、障害モニターは通常の検証を行います。詳細については、「Sun Cluster HA for Sun Java System Web Server 障害モニター」 を参照してください。次の例は、Sun Java System Web Server インスタンスを構成に追加する場合の Monitor_Uri_List 拡張プロパティの設定方法を示しています。

例 : スケーラブル Sun Java System Web Server インスタンスのための Monitor_Uri_List の設定


(デフォルトの負荷分散を使う非セキュア Sun Java System Web Server インスタンスを追加します。)

example# scrgadm -a -j web-not-secure-1 -g resource-group-1 -t SUNW.iws \
-x Confdir_List=/opt/SunONE/https-Sun-app-insecure-1 \
-y Scalable=True -y Network_resources_used=schost-1 -y Port_list=8000/tcp
-x Monitor_Uri_list=http://schost-1:8000/servlet/monitor

例 : フェイルオーバー Sun Java System Web Server インスタンスのための Monitor_Uri_List の設定


(非セキュア Sun Java System Web Server アプリケーションリソースインスタンスを追加します。)

example# scrgadm -a -j web-not-secure-1 -g resource-group-1 -t SUNW.iws \
-x Confdir_list=/opt/SunONE/conf -y Scalable=False \
-y Network_resources_used=schost-1 -y Port_list=80/tcp \
-x Monitor_Uri_list=http://schost-1:80/servlet/monitor 

Sun Cluster HA for Sun Java System Web Server 障害モニター

Sun Cluster HA for Sun Java System Web Server の検証では、サーバーの状態を調べてサーバーが正常かどうかを判定します。検証機能が実際にサーバーを照会する前に、ネットワークリソースがこの Web サーバーリソース用に構成されていることの確認が行われます。ネットワークリソースが構成されていない場合は、エラーメッセージ (No network resources found for resource.) が記録され、検証はエラー終了します。

検証機能では、次の 2 つの Sun Java System Web Server 構成に対応する必要があります。

Web サーバーがセキュアモードのときに、検証機能が構成ファイルからセキュアポートを取得できない場合は、エラーメッセージ (Unable to parse configuration file) が記録され、検証はエラーとなり終了します。セキュアインスタンスと非セキュアインスタンスの検証の処理は同じです。

検証機能では、Probe_timeout リソースプロパティに設定するタイムアウト値を使用して、Sun Java System Web Server を正常に検証するための試行時間を制限します。このリソースプロパティの詳細については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「標準プロパティ」を参照してください。

Sun Java System Web Server リソースの Network_resources_used resource-property 設定は、Web サーバーが使用する一連の IP アドレスを決定します。Sun Java System Web Server で使用されるポート番号は、Port_list リソースプロパティの設定によって決まります。障害モニターは、Web サーバーが IP アドレスとポートのすべての組み合わせに対して待機しているとみなします。ポート 80 以外のポート番号で待機するように Web サーバー構成をカスタマイズしている場合は、構成ファイル (magnus.conf) に IP アドレスとポートのすべての組み合わせが指定されていることを確認してください。障害モニターは、すべての組み合わせを検証し、IP アドレスとポートの特定の組み合わせで Web サーバーが待機していない場合、検証は失敗します。

検証機能は、次のことを行います。

  1. 検証機能は、指定した IP アドレスとポートの組み合わせを使用し、Web サーバーに接続します。正しく接続できない場合は、検証機能は致命的な異常が発生したと判断します。その後、検証機能はこの異常を記録し、適切な処理を行います。

  2. 検証機能が正しく接続した場合は、Web サーバーがセキュアモードで実行されているかどうかを調べます。セキュアモードで実行されている場合は、検証機能は Web サーバーとの接続を解除し、サーバーの状態が正常であると判断します。セキュア Sun Java System Web Server については、これ以上のチェックは行われません。

    ただし、Web サーバーが非セキュアモードで実行されている場合は、検証機能は HTTP 1.0 HEAD 要求を Web サーバーに送信し、応答を待ちます。ネットワークトラフィックの混雑、過剰なシステム負荷、不適切な構成など、さまざまな理由によって要求が正しく処理できないことがあります。

    不適切な構成は、検証される IP アドレスとポートのすべての組み合わせに対し、Web サーバーが待機するように構成されていない場合に生じます。Web サーバーは、このリソースに指定した各 IP アドレスに対し、それぞれポートを提供する必要があります。

    また、リソースの作成時に、Network_resources_used および Port_list リソースプロパティを正しく設定しないと、不適切な構成が生じます。

    Probe_timeout リソースプロパティの制限時間内に照会に対する応答を受信しない場合、検証機能は Sun Cluster HA for Sun Java System Web Server で異常が発生したと判断します。この異常は、検証の履歴に記録されます。

    検証異常は、致命的な異常または部分的な異常になります。致命的な異常とみなされる検証異常は、以下のとおりです。

    • サーバーへの接続に失敗した場合。次のエラーメッセージが表示されます。%s はホスト名、%d はポート番号です。


      Failed to connect to %s port %d
    • サーバーに接続しようとしてタイムアウト (Probe_timeout リソースプロパティのタイムアウト値を超過) した場合。

    • 検証文字列をサーバーに送信することに失敗した場合。次のエラーメッセージが表示されます。最初の %s はホスト名、%d はポート番号です。最後の %s はエラーの詳細です。


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

    モニターは、Retry_interval リソースプロパティで指定した期間内で、以下に示す 2 つの部分的な異常を累積し、1 つの致命的な異常としてカウントします。

    部分的な異常とみなされる検証の障害は次のとおりです。

    • 検証機能による照会に対し、サーバーからの応答を読み取ろうとしてタイムアウト (Probe_timeout リソースプロパティのタイムアウト値を超過) した場合。

    • その他の理由によってサーバーからデータを読み取ることに失敗した場合。次のエラーメッセージが表示されます。最初の %s はホスト名、%d はポート番号です。最後の %s はエラーの詳細です。


      Failed to communicate with server %s port %d: %s
  3. 検証機能は Sun Java System Web Server サーバーに接続し、 Monitor_Uri_List の各 URI に HTTP 要求を送信することで、HTTP 1.1 GET チェックを実行します。HTTP サーバーのリターンコードが 500 (Internal Server Error) となるか接続に失敗した場合、検証は対応処置を実行します。

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

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

    異常履歴に基づいて、データサービスのローカルでの再起動、またはデータサービスのフェイルオーバーのいずれかを実行します。このアクションの詳細については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービス障害モニター」を参照してください。

Sun Cluster HA for Sun Java System Web Server リソースタイプのアップグレード

次の条件に当てはまる場合は、SUNW.iws リソースタイプをアップグレードしてください。

リソースタイプをアップグレードする一般的な手順については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「リソースタイプのアップグレード」を参照してください。このあと、 SUNW.iws リソースタイプのアップグレードを完了するために必要な情報を示します。

新しいリソースタイプバージョンの登録に関する情報

リソースタイプのバージョンと Sun Cluster データサービスのリリース間の関係を以下の表に示します。Sun Cluster データサービスのリリースは、リソースタイプが導入されたバージョンを表します。

リソースタイプバージョン 

Sun Cluster データサービスのリリース 

1.0 

3.1 

3.1 5/03 

3.1 10/03 

登録されているリソースタイプのバージョンを調べるには、次のどちらかのコマンドを使用します。

このリソースタイプに対応するリソースタイプ登録 (RTR) ファイルは /opt/SUNWschtt/etc/SUNW.iws です。

リソースタイプの既存インスタンスの移行に関する情報

SUNW.iws リソースタイプの各インスタンスを編集するために必要な情報は、次のとおりです。

次の例に、SUNW.iws リソースタイプのインスタンスを変更するコマンドの例を示します。


例 1–1 SUNW.iws リソースタイプのインスタンスを移行する


# scrgadm -c -j webserver-rs -y Type_version=4 \
  -x Monitor_Uri_List=http://schost-1/test.html

このコマンドは、以下のようにして webserver-rs という SUNW.iws リソース を変更します。