この章では、Sun Cluster HA for Sun ONE Web Server のインストールと構成の手順について説明します。このデータサービスは、以前の Sun Cluster HA for Netscape TM HTTP または Sun Cluster HA for iPlanet Web Server の後継版です。アプリケーションエラーの文書に「Netscape」という語が含まれてた場合は、「Sun ONE Web Server」と読みかえてください。Sun Cluster Agents CD-ROM でも、アプリケーション名が「iPlanet Web Server」のままになっていることがあります。
この章では、次の手順について説明します。
Sun Cluster HA for Sun ONE Web Server は、フェイルオーバーデータサービスまたはスケーラブルデータサービスとして構成できます。データサービス、リソースグループ、リソースに関する一般的な情報とその他の関連トピックについては、『Sun Cluster 3.1 データサービスの計画と管理』の「Sun Cluster データサービスの計画」および『Sun Cluster 3.1 の概念』を参照してください。
SunPlex Manager を使用してこのデータサービスのインストールと構成を実行できます。詳細については、SunPlex Manager のオンラインヘルプを参照してください。
Sun Cluster 構成で複数のデータサービスを実行している場合は、任意の順序でデータサービスを設定できます。ただし、例外もあります。Sun Cluster HA for Sun ONE Web Server が Sun Cluster HA for DNS に依存している場合は、最初に DNS を設定する必要があります。詳細については、『Sun Cluster 3.1 Data Service for Domain Name Service (DNS) ガイド』を参照してください。DNS ソフトウェアは、Solaris オペレーティング環境に含まれています。クラスタが別のサーバーから DNS サービスを取得する場合は、最初に、クラスタが DNS クライアントになるように構成してください。
インストール後は、クラスタ管理コマンドの scswitch(1M) を使用する場合を除き、手作業で Sun ONE Web Server を起動したり停止したりしないでください。詳細は、マニュアルページを参照してください。Sun ONE Web Server は、起動後は Sun Cluster ソフトウェアによって制御されます。
インストールを開始する前に、以下の点を検討します。
フェイルオーバーデータサービス、スケーラブルデータサービスのどちらで Sun Cluster HA for Sun ONE Web Server を使用するか。この 2 種類のサービスについては、『Sun Cluster3.1 の概念』を参照してください。スケーラブルサービスとして実行する場合は、以下の点を検討します。
どのノードがスケーラブルサービスをホストするのか。ほとんどの場合は全ノードにしますが、サービスをホストするノードを制限することもできます。サービスをホストするノードを制限することもできます。
Sun ONE Web Server インスタンスにスティッキー IP は必要か。スティッキー IP は、Load_balancing_policy のリソースプロパティ設定です。クライアント状態がメモリーに格納されるため、同じノードからの戻りトラフィックは、常に同じクラスタノードに送られます。複数の負荷分散ポリシーの中から選択できます。『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」に記載されているリソースプロパティの表を参照してください。
Load_balancing_policy が LB_STICKY または LB_STICKY_WILD に設定されているオンラインスケーラブルサービスの場合、Load_balancing_weights を変更するには注意が必要です。サービスがオンラインのときにこれらのプロパティを変更すると、クライアントとの既存の親和性がリセットされます。したがって、そのクライアントが以前にクラスタ内の別のクラスタメンバーからサービスを受けていても、異なるノードがそのクライアントの要求を処理します。
同様に、サービスの新しいインスタンスがクラスタで起動された場合は、クライアントとの既存の親和性がリセットされることがあります。
Web サーバーのルートをどこに置くか。
Web サーバーは、別の高可用性アプリケーションにデータを提供するかどうか。データを提供する場合は、リソースの一方がもう一方よりも先に起動または停止するように、リソース間の依存性が必要になります。これらの依存性を設定するリソースプロパティ、Resource_dependencies の詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。
ネットワークアドレスおよびアプリケーションリソースに使用するリソースグループ、およびそれらの間に存在する依存性を決定する。これらの依存性を設定するリソースグループロパティ、RG_dependencies の詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。
データサービスへのアクセスにクライアントが使用する論理ホスト名 (フェイルオーバーサービスの場合) または共有アドレス (スケーラブルサービスの場合) を指定する。
Sun ONE Web Server は INADDR_ANY にバインドするように構成できるため、Sun ONE Web Server の複数のインスタンス、または同じノード上の複数のデータサービスを実行する予定の場合は、各インスタンスを一意のネットワークリソースとポート番号にバインドする必要があります。
Confdir_list および Port_list プロパティのエントリを決定する。フェイルオーバーサービスの場合、この 2 つのプロパティに登録できるエントリは、それぞれ 1 つだけです。スケーラブルサービスの場合は、複数のエントリを登録できます。ただし、登録するエントリの数を同じにし、指定した順に相互にマップする必要があります。詳細については、Sun Cluster HA for Sun ONE Web Server の登録と構成を参照してください。
Monitor_uri_list 拡張プロパティを使用するかどうかを決定する。この拡張プロパティを使用して、任意の URI リストを監視できます。Web を介してアクセス可能なその他のデータサービスを構成する場合は、任意の URI を監視するように設定します。Monitor_uri_list 拡張プロパティは、Sun ONE Web Server のセキュアインスタンスではサポートされません。 このプロパティを使用するには、Sun Cluster 3.1 10/03 HA for Sun ONE Web Server をインストールする必要があります。以前の Sun Cluster HA for Sun ONE Web Server からアップグレードする場合、新しいプロパティを使用するには、リソースタイプのアップグレードを行う必要があります。手順については、『Sun Cluster 3.1 データサービスの計画と管理』の「リソースタイプの更新」を参照してください。拡張プロパティのオプション設定と Monitor_uri_list の使用例については、Sun Cluster HA for Sun ONE Web Server 拡張プロパティの構成を参照してください。
ログファイル、エラーファイル、PID ファイルをローカルファイルシステムのどこに置くかを決定する。
コンテンツをクラスタファイルシステムのどこに置くかを決定する。
インストール作業と構成作業を説明している節は次のとおりです。
表 1–1 作業マップ : Sun Cluster HA for Sun ONE Web Server のインストールと構成
作業 |
参照先 |
---|---|
Sun ONE Web Server のインストール | |
Sun Cluster HA for Sun ONE Web Server パッケージのインストール |
Sun Cluster HA for Sun ONE Web Server パッケージのインストールまたはSun Cluster HA for Sun ONE Web Server パッケージのインストール |
Sun Cluster HA for Sun ONE Web Server の構成 | |
リソース拡張プロパティの構成 | |
障害モニターの情報の表示 |
この節では、setup コマンドを使って次の作業を行う手順を説明します。
Sun ONE Web Server のインストール
Sun ONE Web Server を有効にし、Sun Cluster HA for Sun ONE Web Server として実行
Web サーバーに対する URL マッピングの設定では、いくつかの規則に従う必要があります。たとえば、CGI ディレクトリを設定する場合、可用性を維持するには、マップしたディレクトリをクラスタファイルシステムに配置する必要があります。たとえば、CGI ディレクトリを /global/pathname/cgi-bin にマップします。
CGI プログラムが、RDBMS などのバックエンドサーバーにアクセスする場合は、バックエンドサーバーも Sun Cluster によって制御されていることを確認してください。バックエンドサーバーが Sun Cluster ソフトウェアによってサポートされる RDBMS の場合は、高可用性 RDBMS パッケージを使用してください。バックエンドサーバーは、API を使用して Sun Cluster の制御下に置くこともできます。API については、『Sun Cluster 3.1 データサービス開発ガイド』を参照してください。
この手順を実行するには、構成に関する次の情報が必要になります。
サーバーのルートディレクトリ (アプリケーションバイナリへのパス)。バイナリは、ローカルディスクまたはクラスタファイルシステムにインストールできます。各インストール先の長所と短所については、『Sun Cluster 3.1 データサービスの計画と管理』の「Sun Cluster データサービス構成のガイドライン」を参照してください。
データサービスへのアクセスにクライアントが使用する論理ホスト名 (フェイルオーバーサービスの場合) または共有アドレス (スケーラブルサービスの場合)。これらのアドレスを構成し、オンラインにしなければなりません。
Sun Cluster HA for Sun ONE Web Server サービスと別の HTTP サーバーを実行しており、これらが同じネットワークリソースを使用している場合は、それぞれ異なるポートで待機するように構成してください。異なるポートで待機するように構成しないと、2 つのサーバーの間でポートの競合が発生します。
クラスタメンバー上でスーパーユーザーになります。
CD のインストールディレクトリから Sun ONE Web Server の setup コマンドを実行します。
プロンプトが表示されたら、Sun ONE Web Server バイナリをインストールする場所を入力します。
インストール場所には、クラスタファイルシステム上またはローカルディスク上の場所を指定します。ローカルディスクにインストールする場合は、次の手順で指定するネットワークリソース (論理ホスト名または共有アドレス) の潜在的主ノードになるすべてのクラスタノード上で setup コマンドを実行してください。
マシン名の入力プロンプトに対して、Sun ONE Web Server が依存する論理ホスト名と適切な DNS ドメイン名を入力します。
完全な論理ホスト名は、network-resource.domainname の形式になります (例: schost-1.sun.com)。
Sun Cluster HA for Sun ONE Web Server のフェイルオーバーを正常に実行するには、マシン名の入力時に、物理ホスト名ではなく、論理ホスト名または共有アドレスリソース名のどちらかを指定します。
問い合わせが表示されたら、「Run admin server as root」を選択します。
Sun ONE インストールスクリプトが管理サーバー用として選択したポート番号を書き留めてください。管理サーバーを使用して Sun ONE Web Server のインスタンスを構成するときに、このデフォルト値を使用できます。デフォルト値を使用しない場合は、別のポート番号を指定できます。
問い合わせが表示されたら、サーバー管理者 ID とパスワードを入力します。
システムのガイドラインに従います。
管理サーバーが起動されることを示すメッセージが表示されたら、構成の準備は完了です。
Sun ONE Web Server の構成方法については、Sun ONE Web Server の構成を参照してください。
この手順では、可用性が高くなるように Sun ONE Web サーバーのインスタンスを構成する方法について説明します。この手順では、Web ブラウザを使用します。
この手順を実行するには、次の情報を確認しておく必要があります。
開始する前に、クラスタが存在するネットワークにアクセスできるマシン上にブラウザをインストールしていることを確認します。ブラウザは、クラスタノードにもクラスタの管理ワークステーションにもインストールできます。
Sun Cluster HA for Sun ONE Web Server は Sun ONE Proxy Server をサポートします。 Sun ONE Proxy Server 製品の詳細については、http://docs.sun.com/db/prod/s1.webproxys を参照してください。Sun ONE Proxy Server のインストールと構成については、http://docs.sun.com/db/coll/S1_ipwebproxysrvr36 を参照してください。
構成ファイルは、ローカルファイルシステムにもクラスタファイルシステムにも格納できます。
インスタンスの安全を保証するためのあらゆる証明書は、すべてのクラスタノードからインストールされる必要があります。このインストールでは、各ノード上で管理コンソールを実行します。したがって、クラスタにノード n1、n2、n3、および n4 が存在する場合、インストール手順は次のようになります。
ノード n1 上で管理サーバーを実行します。
Web ブラウザから管理サーバーに接続します。http://n1.domain:port 例 : http://n1.eng.sun.com:8888 または、管理サーバーポートとして指定したポート。通常、このポートは 8888 です。
証明書をインストールします。
ノード n1 上で管理サーバーを停止して、ノード n2 から管理サーバーを実行します。
Web ブラウザから新しい管理サーバーに接続します。http://n2.domain:port 例 : http://n2.eng.sun.com:8888
ノード n3 と n4 に対しても上記手順を繰り返します。
上記の事項を考慮した後で、次の手順を行います。
Sun ONE Web Server をスケーラブルデータサービスとして構成する場合は、すべてのノードのローカルディスクに、ログ、エラーファイル、PID ファイルを格納するディレクトリを作成し、Sun ONE Web Server で管理するように設定します。
スケーラブル構成を正常に稼動するには、これらのファイルをクラスタファイルシステムではなく、クラスタの各ノードに配置する必要があります。共有の記憶装置は、Sun ONE Web Server をフェイルオーバーデータサービスとして構成する場合以外は使用しません。
クラスタ内のすべてのノードにおいて、ローカルディスクの同じ場所を選択します。mkdir -p コマンドを使用してディレクトリを作成します。このディレクトリの所有者は nobody にします。
次の例に、この手順を行う方法を示します。
phys-schost-1# mkdir -p /var/pathname/http-instance/logs/ |
エラーログや PID ファイルが大きくなると予想される場合、/var ディレクトリの容量は小さいので、このディレクトリに格納してはいけません。その代わりに、大きなファイルを格納できるだけの十分な容量を持つパーティションに新しいディレクトリを作成します。
管理ワークステーションまたはクラスタノードから Netscape ブラウザを起動します。
1 つのクラスタノード上で、ディレクトリ https-admserv に移動し、次のように Sun ONE 管理サーバーを起動します。
# cd https-admserv # ./start |
Netscape ブラウザで Sun ONE 管理サーバーの URL を入力します。
URL は、サーバーのインストール手順 (手順 4) の Sun ONE インストールスクリプトによって確立される物理ホスト名とポート番号で構成されます (例: n1.eng.sun.com:8888)。前の手順で、./start コマンドを実行した時にこの URL が表示されます。
プロンプトが表示されたら、サーバーのインストール手順 (手順 6) で指定したユーザー ID とパスワードを入力し、Sun ONE 管理サーバーインタフェースにログインします。
次の作業を行うには、可能な限り管理サーバーを使用し、そうでない場合だけ手動で変更するようにします。
このインスタンスの起動に使用するセキュアキーパスワードを含むファイルを作成してサーバーのルートディレクトリに置きます。このファイルには、keypass という名前を付けます。
このファイルには、キーデータベースのパスワードが含まれています。適切なアクセス権を付与して、ファイルを保護する必要があります。
Sun Cluster の初回のインストール時に Sun Cluster HA for Sun ONE Web Server パッケージをインストールしなかった場合は、次の説明に従ってパッケージをインストールします。この手順は、Sun Cluster HA for Sun ONE Web Server パッケージをインストールする各ノード上で実行してください。 この手順を実行するには、Sun Cluster Agents CD-ROM が必要です。
同時に複数のデータサービスをインストールする方法については、『Sun Cluster 3.1 10/03 ソフトウェアのインストール』の「ソフトウェアのインストール」の章を参照してください。
Sun Cluster HA for Sun ONE Web Server パッケージのインストールには、次のいずれかのインストールツールを使用します。
Web Start プログラム
scinstall ユーティリティー
Web Start プログラムは、Sun Cluster 3.1 Data Services 10/03 より前のリリースでは使用できません。
Web Start プログラムの実行には、コマンド行インタフェース (CLI) またはグラフィカルユーザーインタフェース (GUI) を使用します。 CLI と GUI での作業の内容と手順はほぼ同じです。Web Start プログラムの詳細については、installer(1M) のマニュアルページを参照してください。
Sun Cluster HA for Sun ONE Web Server パッケージのインストール先のノードに移動し、スーパーユーザーになります。
(省略可能) GUI を使用して Web Start プログラムを実行する場合は、DISPLAY
環境変数を設定する必要があります。
CD-ROM ドライブに Sun Cluster Agents CD-ROM を挿入します。
ボリューム管理デーモン vold(1M) が実行され、このデーモンで CD-ROM デバイスを管理するように構成されている場合、CD-ROM は /cdrom/scdataservices_3_1_vb ディレクトリに自動的にマウントされます。
CD-ROM の Sun Cluster HA for Sun ONE Web Server コンポーネントが格納されているディレクトリに移動します。
Sun Cluster HA for Sun ONE Web Server データサービス用の Web Start プログラムは、次のディレクトリに格納されています。
# cd /cdrom/scdataservices_3_1_vb/\ components/SunCluster_HA_SunONE_Web_Server_3.1 |
Web Start プログラムを起動します。
# ./installer |
画面の指示に従って、ノードに Sun Cluster HA for Sun ONE Web Server パッケージをインストールします。
インストールが完了すると、インストールの概要情報が表示されます。この情報を利用して、インストール時に Web Start プログラムによって生成されたログを確認できます。これらのログは、/var/sadm/install/logs ディレクトリに格納されています。
Web Start プログラムを終了します。
CD-ROM ドライブから Sun Cluster Agents CD-ROM を取り出します。
Sun Cluster HA for Sun ONE Web Server を登録し、データサービス用のクラスタを構成する方法については、Sun Cluster HA for Sun ONE Web Server の登録と構成を参照してください。
この手順を実行するには、Sun Cluster Agents CD-ROM が必要です。Sun Cluster HA for Sun ONE Web Server を実行するすべてのクラスタノードで、この手順を行なってください。
CD-ROM ドライブに Sun Cluster Agents CD-ROM を挿入します。
オプションは指定せずに、scinstall ユーティリティーを実行します。
scinstall ユーティリティーが対話型モードで起動します。
メニューオプション「新しいデータサービスのサポートをこのクラスタノードに追加」を選択します。
scinstall ユーティリティーにより、ほかの情報を入力するためのプロンプトが表示されます。
Sun Cluster Agents CD-ROM のパスを入力します。
ユーティリティーはこの CD をデータサービス CD-ROM として示します。
インストールするデータサービスを指定します。
選択したデータサービスが scinstall ユーティリティーによって示され、この選択内容の確認が求められます。
CD-ROM 上の、アプリケーション名が「iPlanet Web Server」になっている場合があります。
scinstall ユーティリティーを終了します。
ドライブから CD を取り出します。
Sun Cluster HA for Sun ONE Web Server を登録し、データサービス用のクラスタを構成する方法については、Sun Cluster HA for Sun ONE Web Server の登録と構成を参照してください。
Sun Cluster HA for Sun ONE Web Server は、フェイルオーバーデータサービスまたはスケーラブルデータサービスとして構成できます。Sun Cluster HA for Sun ONE Web Server をスケーラブルデータサービスとして構成する場合には、追加の手順を実行する必要があります。ここでは、文頭に「スケーラブルサービスのみ」と明記しスケーラブルサービスの場合の追加手順を先に説明します。フェイルオーバーサービスとスケーラブルサービスの個々の例は、その後ご説明します。
scrgadm (1M) コマンドを使用した Sun Cluster HA for Sun ONE Web Server の登録方法と構成方法について説明します。
データサービスはここで説明するオプション以外のオプションを使用して登録と構成を行えます。これらのオプションの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「データサービスを管理するためのツール」を参照してください。
この手順を実行するには、次の情報を確認しておく必要があります。
Sun Cluster HA for Sun ONE Web Server のリソースタイプの名前。この名前は、SUNW.iws です。
データサービスをマスターするクラスタノードの名前。フェイルオーバーサービスの場合、同時にデータサービスをマスターできるノードは 1 つだけです。
データサービスへのアクセスにクライアントが使用する論理ホスト名 (フェイルオーバーサービスの場合) または共有アドレス (スケーラブルサービスの場合)。
Sun ONE バイナリプログラムのパス。バイナリプログラムは、ローカルディスクまたはクラスタファイルシステムにインストールできます。各インストール先の長所と短所については、『Sun Cluster 3.1 データサービスの計画と管理』の「Sun Cluster データサービス構成のガイドライン」を参照してください。
Sun ONE Web Server で使用される一連の IP アドレスは、Sun ONE アプリケーションリソースの Network_resources_used の設定によって決まります。また、Sun ONE Web Server で使用されるポート番号は、リソースの Port_list の設定によって決まります。障害モニターは、Sun ONE Web Server のデーモンが IP とポートのすべての組み合わせで待機しているとみなします。ポート 80 以外のポート番号で待機するように Sun ONE Web Server の magnus.conf ファイルをカスタマイズしている場合は、magnus.conf ファイルに、IP アドレスとポートのすべての組み合わせを指定しておく必要があります。障害モニターは、これらの組み合わせのすべてを検証し、Sun ONE Web Server が IP アドレスとポートの特定の組み合わせで待機していない場合はモニターを起動できません。Sun ONE Web Server が IP アドレスとポートのすべての組み合わせに対応できない場合は、複数のインスタンスに分割する必要があります。
この手順は、すべてのクラスタメンバー上で実行します。
クラスタメンバー上でスーパーユーザーになります。
Sun Cluster HA for Sun ONE Web Server のリソースタイプを登録します。
# scrgadm -a -t SUNW.iws |
データサービスのリソースタイプを追加します。
当該データサービス用にあらかじめ定義されているリソースタイプを指定します。
ネットワークとアプリケーションのリソースを格納するためのフェイルオーバーリソースグループを作成します。
フェイルオーバーサービスの場合には、このリソースグループはアプリケーションリソースも保持します。
-h オプションを必要に応じて指定し、データサービスを実行できるノードグループを選択できます。
# scrgadm -a -g resource-group [-h nodelist] |
フェイルオーバーリソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループで一意である必要があります。
マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。フェイルオーバー時、ノードはこのリスト内の順番に従ってプライマリとして判別されます。
-h は、ノードリストの順序を指定するために使用します。クラスタ内のすべてのノードが潜在マスターの場合、-h オプションを使用する必要はありません。
使用しているすべてのネットワークアドレスがネームサービスデータベースに追加されていることを確認します。
Sun Cluster のインストールの時に、この確認を行う必要があります。詳細は、『Sun Cluster 3.1 ソフトウェアのインストール』の計画に関する章を参照してください。
ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーとクライアントの /etc/inet/hosts ファイルに、すべての論理ホスト名と共有アドレスが登録されていることを確認してください。サーバーの /etc/nsswitch.conf のネームサービスマッピングは、NIS または NIS+ にアクセスする前に、最初にローカルファイルを検査するように構成してください。
ネットワークリソース (論理ホスト名または共有アドレス) をフェイルオーバーリソースグループに追加します。
# scrgadm -a {-S | -L} -g resource-group \ -l network-resource,… [-j resource] \ [-X auxnodelist=node, …] [-n netiflist] |
共有アドレスリソースには -S を、論理ホスト名リソースには -L を使用します。
フェイルオーバーリソースグループの名前を指定します。
追加するネットワークリソースをコンマで区切って指定します。-j オプションを使用してリソース名を指定できます。リソース名を指定しないと、ネットワークリソースの名前は、コンマで区切ったリストの最初の名前になります。
リソースの名前を指定します (省略可能)。リソース名を指定しない場合、ネットワークリソース名は、デフォルトで -l オプションで最初に指定した名前になります。
共有アドレスをホストできるクラスタノード (ただし、フェイルオーバー時に主ノードとして使用されない) を識別する物理ノード ID をコンマで区切って指定します (オプション)。このオプションを指定した場合は、これらのノードは、リソースグループの nodelist で指定されるノードと相互に排他的になります。
リソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループで一意である必要があります。
潜在マスターを識別するための物理ノード名または ID をコンマで区切って指定します (省略可能)。フェイルオーバー時、ノードはこのリスト内の順番に従ってプライマリとして判別されます。
各ノード上の IP ネットワークマルチパスグループをコンマで区切って指定します (省略可能)。netiflist の各要素は netif@node の形式で指定する必要があります。netif には IP ネットワークマルチパスグループ名を指定できます (例: sc_ipmp0)。node はノード名またはノード ID で識別可能です (例: sc_ipmp0@1 または sc_ipmp@phys-schost-1)。
現在、Sun Cluster は、ネットアダプタ名 netif の使用をサポートしていません。
スケーラブルサービスのみ : 希望するすべてのクラスタノードで実行するスケーラブルリソースグループを作成します。
Sun Cluster HA for Sun ONE 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 |
このリソースグループに許可するアクティブ主ノードの最大数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
このリソースグループに許可するアクティブ主ノードの希望数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
作成されたリソースグループが依存する共有アドレスリソースを含むリソースグループを指定します。
スケーラブルサービスのみ : スケーラブルリソースグループにアプリケーションリソースを作成します。
Sun Cluster HA for Sun ONE Web Server をフェイルオーバーデータサービスとして実行する場合は、この手順を省略して手順 8 に進んでください。
この手順を繰り返し、複数のアプリケーションリソース (セキュアバージョンや非セキュアバージョンなど) を追加できます。
必要に応じて、データサービスの負荷均衡を設定します。負荷均衡を設定するには、標準リソースプロパティの Load_balancing_policy と Load_balancing_weights を使用します。これらのプロパティの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。また、この節で説明している例も参照してください。
# 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, … |
追加するリソースの名前を指定します。
リソースが配置されるスケーラブルリソースグループの名前を指定します。
追加するリソースのタイプを指定します。
データサービスが使用する共有アドレスを指定するネットワークリソース名をコンマで区切って指定します。
使用するポート番号とプロトコルの対をコンマで区切って指定します (例 : 80/tcp, 81/tcp)。
スケーラブルサービスに必要なブール値を指定します。
Sun ONE 構成ファイルの位置をコンマで区切って指定します。これは、Sun Cluster HA for Sun ONE Web Server の必須拡張プロパティです。
1 対 1 のマッピングは、Confdir_List と Port_List に適用されます。一方のリストに含まれる各値は、指定した順に、もう一方のリストの値と対応する必要があります。
フェイルオーバーサービスのみ : フェイルオーバーリソースグループにアプリケーションリソースを作成します。
この手順は、Sun Cluster HA for Sun ONE Web Server をフェイルオーバーデータサービスとして実行する場合だけ行なってください。Sun Cluster HA for Sun ONE 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 |
追加するリソースの名前を指定します。
リソースが配置されるフェイルオーバーリソースグループの名前を指定します。
追加するリソースのタイプを指定します。
データサービスが使用する論理ホストを識別するネットワークリソースをコンマで区切って指定します。
使用するポート番号とプロトコルを指定します (例:80/tcp)。Port_list と Confdir_list 間の 1 対 1 のマッピング規則により、フェイルオーバーサービスのための Port_list には、エントリを 1 つだけ登録します。
Sun ONE 構成ファイルの格納場所を指定します。フェイルオーバーサービス用の Confdir_list には、エントリを 1 つだけ登録します。config-directory には、config という文字が含まれているディレクトリを指定する必要があります。これは、Sun Cluster HA for Sun ONE Web Server の必須拡張プロパティです。
必要に応じて、Sun Cluster HA for Sun ONE Web Server に属する拡張プロパティを追加設定することで、プロパティのデフォルト値を上書きできます。これらのプロパティについては、表 1–2 を参照してください。
フェイルオーバーリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
ネットワークリソースと障害モニターを有効にし、リソースグループを管理状態 ( MANAGED) に切り替え、オンラインにします。
フェイルオーバーリソースグループの名前を指定します。
スケーラブルサービスのみ : スケーラブルリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
リソースとモニターを有効にし、リソースグループを管理状態 ( MANAGED) にし、オンラインにします。
スケーラブルリソースグループの名前を指定します。
次に、スケーラブル Sun Cluster HA for Sun ONE Web Server の登録方法を示します。
クラスタ情報 ノード名: phys-schost-1、phys-schost-2 共有アドレス: schost-1 リソースグループ: sa-resource-group-1 (共有アドレス用)、 iws-resource-group-1 (スケーラブル Sun ONE アプリケーションリソース用) リソース: schost-1 (共有アドレス)、SunONE-insecure-1 (非セキュア SunONE アプリケーションリソース)、SunONE-secure-1 (セキュア Sun ONE アプリケーション リソース) (フェイルオーバーリソースグループを追加して共有アドレスを含めます。) # 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 ONE リソースタイプを追加します。) # scrgadm -a -t SUNW.iws (非セキュア Sun ONE インスタンスをデフォルトの負荷分散に登録します。) # scrgadm -a -j Sun ONE-insecure-1 -g iws-resource-group-1 -t SUNW.iws \ -x Confdir_List=/opt/SunONE/https-SunONE-insecure-1 \ -y Scalable=True -y Network_resources_used=schost-1 -y Port_list=80/tcp (セキュア SunONE インスタンスをスティッキー IP 負荷分散に追加します。) # scrgadm -a -j SunONE-secure-1 -g iws-resource-group-1 -t SUNW.iws \ -x Confdir_List=/opt/SunONE/https-SunONE-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 ONE サービスを 2 ノードクラスタで登録する例を示します。
クラスタ情報 ノード名: phys-schost-1、phys-schost-2 論理ホスト名: schost-1 リソースグループ: resource-group-1 (すべてのリソース用) リソース: schost-1 (論理ホスト名)、SunONE-insecure-1 (非セキュア SunONE アプリケーションリソース)、SunONE-secure-1 (セキュア SunONE アプリケーション リソース) (リソースグループを追加してすべてのリソースを含めます。) # scrgadm -a -g resource-group-1 (論理ホスト名をリソースグループに追加します。) # scrgadm -a -L -g resource-group-1 -l schost-1 (SunONE リソースタイプを登録します。) # scrgadm -a -t SUNW.iws (非セキュア SunONE アプリケーションリソースのインスタンスを追加します。) # scrgadm -a -j SunONE-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\ (セキュア SunONE アプリケーションリソースのインスタンスを追加します。) # scrgadm -a -j SunONE-secure-1 -g resource-group-1 -t SUNW.iws \ -x Confdir_List=/opt/SunONE/https-SunONE-secure-1 -y Scalable=False \ -y Network_resources_used=schost-1 -y Port_list=443/tcp \ (フェイルオーバーリソースグループをオンラインにします。) # scswitch -Z -g resource-group-1 |
SUNW.HAStorage リソースタイプを構成するには、SUNW.HAStoragePlus リソースタイプの構成方法を参照してください。
Sun Cluster 3.0 5/02 から SUNW.HAStoragePlus リソースタイプが導入されています。この新しいリソースタイプは、 SUNW.HAStorage と同様の機能を持ち、HA 記憶装置とデータサービス間のアクションを同期化します。
SUNW.HAStoragePlus には、ローカルファイルシステムを高可用性システムにする追加機能もあります。Sun Cluster HA for Sun ONE Web Server はスケーラブルなので、SUNW.HAStoragePlus リソースタイプを設定してください。
背景情報については、SUNW.HAStoragePlus(5) のマニュアルページと『Sun Cluster 3.1 データサービスの計画と管理』の「リソースグループとデバイスグループの関係」を参照してください。手順については、『Sun Cluster 3.1 データサービスの計画と管理』の「リソースグループとディスクデバイスグループ間での起動の同期」を参照してください。Sun Cluster 3.0 5/02 より前のバージョンを使用している場合は、SUNW.HAStoragePlus ではなく、SUNW.HAStorage を設定する必要があります。 新しいリソースの設定手順については、『Sun Cluster 3.1 データサービスの計画と管理』の「リソースグループとディスクデバイスグループ間での起動の同期」を参照してください。
ここでは、Sun Cluster HA for Sun ONE Web Server 拡張プロパティについて説明します。フェイルオーバーの場合、データサービスは強制的に Confdir_list のサイズを 1 にします。複数の構成ファイル (インスタンス) が必要な場合は、それぞれが Confdir_list エントリを 1 つ持つ複数のフェイルオーバーリソースを作成してください。
通常、拡張プロパティは、Sun ONE Web Server リソースを作成するときに、コマンド行から scrgadm -x parameter=value を実行して構成します。Sun Cluster のすべてのプロパティの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。
表 1–2 は、Sun ONE Web Server 用に構成可能な拡張プロパティと説明をまとめたものです。Sun ONE Web Server リソースの作成時に必要な拡張プロパティは、Confdir_list プロパティだけです。 拡張プロパティには、動的に更新できるものがあります。それ以外の拡張プロパティは、リソースを作成するときにしか更新できません。各プロパティをいつ更新できるかについては、説明欄の「調整」の項を参照してください。
表 1–2 Sun Cluster HA for Sun ONE Web Server 拡張プロパティ
拡張プロパティ名 |
説明 |
---|---|
Confdir_ list (文字列) |
特定の Sun ONE Web Server インスタンスのサーバールートディレクトリへのポインタ。Sun ONE Web Server がセキュアモードの場合、パス名に keypass という名前のファイルを指定する必要があります。このファイルには、このインスタンスの起動に必要なセキュアキーパスワードが含まれています。
初期値: なし 範囲: なし 調整: 作成時 |
Monitor_ retry_ count (整数) |
Monitor_retry_interval プロパティの指定時間に、プロセスモニター機能 (PMF) が障害モニターを再起動する回数。このプロパティは、障害モニターの再起動回数を制御するものであり、リソースの再起動を制御するわけではありません。リソースの再起動は、システム定義プロパティの Retry_interval と Retry_count によって制御されます。
初期値: 4 範囲: 0 – 2, 147, 483, 641 –1 は、再試行の数が無限であることを示します。 調整: 任意の時点 |
Monitor_ retry_ interval (整数) |
障害モニターの失敗回数をカウントする期間 (分)。この期間内に、障害モニターの失敗回数が、拡張プロパティ Monitor_retry_count の指定値を超えた場合、PMF は障害モニターを再起動しません。
初期値: 2 範囲: 0 – 2, 147, 483, 641 –1 は、期間が無限であることを示します。 調整: 任意の時点 |
Probe_ timeout (整数) |
Sun ONE Web Server インスタンスを検証するために障害モニターが使用するタイムアウト時間 (秒)。
初期値: 90 範囲: 0 – 2, 147, 483, 641 調整: 任意の時点 |
Monitor_Uri_List (文字列) |
Sun ONE Web Server 上に配備された任意のアプリケーションを検証するために障害モニターが使用できる単一の URI または URI のリスト。Sun ONE Web Server 上に配備されたアプリケーションによって提供される 1 個以上の URI にこのプロパティを設定することにより、配備済みアプリケーションを検証します。 初期値: Null 調整: 任意の時点 導入リリース: 3.1 10/03 |
Web サーバーの障害モニターに、Web サーバーから提供される任意のアプリケーションリスト (URI) を検証させる場合は、Monitor_uri_list 拡張プロパティを設定します。この拡張プロパティによって、拡張検証機能が提供されます。この機能は、Web サーバーにサービスを追加する場合に便利です。Monitor_uri_list 拡張プロパティは、セキュア Sun ONE Web Server インスタンスではサポートされません。Monitor_uri_list 拡張プロパティを設定しない場合、障害モニターは通常の検証を行います。詳細については、Sun Cluster HA for Sun ONE Web Server 障害モニター を参照してください。 このあとに、既存の構成に Sun ONE Web Server インスタンスを追加するときの Monitor_uri_list 拡張プロパティの設定例を示します。
(デフォルトの負荷分散を使う非セキュア Sun ONE インスタンスを追加します。) example# scrgadm -a -j web-not-secure-1 -g resource-group-1 -t SUNW.iws \ -x Confdir_List=/opt/SunONE/https-SunONE-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 |
(非セキュア SunONE アプリケーションリソースのインスタンスを追加します。) 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 ONE Web Server の検証機能は、サーバーに要求を送ることによりそのサーバーの状態を照会します。検証機能が実際にサーバーを照会する前に、ネットワークリソースがこの Web サーバーリソース用に構成されていることの確認が行われます。ネットワークリソースが構成されていない場合は、エラーメッセージ (No network resources found for resource.) が記録され、検証はエラー終了します。
検証機能では、次の 2 つの Sun ONE Web Server 構成に対応する必要があります。
セキュアインスタンス
非セキュアインスタンス
検証機能では、Probe_timeout リソースプロパティに設定するタイムアウト値を使用して、Sun ONE Web Server を正常に検証するための試行時間を制限します。このリソースプロパティの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「標準プロパティ」を参照してください。
Web サーバーによって使用される一連の IP アドレスは、Sun ONE Web Server リソース上の Network_resources_used リソースプロパティの設定によって決まります。Sun ONE Web Server で使用されるポート番号は、Port_list リソースプロパティの設定によって決まります。障害モニターは、Web サーバーが IP アドレスとポートのすべての組み合わせに対して待機しているとみなします。ポート 80 以外のポート番号で待機するように Web サーバー構成をカスタマイズしている場合は、構成ファイル (magnus.conf) に IP アドレスとポートのすべての組み合わせが指定されていることを確認してください。障害モニターは、すべての組み合わせを検証し、IP アドレスとポートの特定の組み合わせで Web サーバーが待機していない場合、検証は失敗します。
検証機能は、次のことを行います。
検証機能は、指定した IP アドレスとポートの組み合わせを使用し、Web サーバーに接続します。正しく接続できない場合は、検証機能は致命的な異常が発生したと判断します。その後、検証機能はこの異常を記録し、適切な処理を行います。
検証機能が正しく接続した場合は、Web サーバーがセキュアモードで実行されているかどうかを調べます。セキュアモードで実行されている場合は、検証機能は Web サーバーとの接続を解除し、サーバーの状態が正常であると判断します。セキュア Sun ONE Web Server については、これ以上のチェックは行われません。
ただし、Web サーバーが非セキュアモードで実行されている場合は、検証機能は HTTP 1.0 HEAD 要求を Web サーバーに送信し、応答を待ちます。ネットワークトラフィックの混雑、過剰なシステム負荷、不適切な構成など、さまざまな理由によって要求が正しく処理できないことがあります。
不適切な構成は、検証される IP アドレスとポートのすべての組み合わせに対し、Web サーバーが待機するように構成されていない場合に生じます。Web サーバーは、このリソースに指定した各 IP アドレスに対し、それぞれポートを提供する必要があります。
また、リソースの作成時に、Network_resources_used および Port_list リソースプロパティを正しく設定しないと、不適切な構成が生じます。
Probe_timeout リソースプロパティの制限時間内に照会に対する応答を受信しない場合、検証機能は Sun Cluster HA for Sun ONE 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 |
検証では、Sun ONE Web Server サーバーに接続し、Monitor_Uri_List 内の各 URI に対して HTTP 要求を送信することにより、HTTP 1.1 GET チェックを行います。HTTP サーバーのリターンコードが 500 (Internal Server Error) となるか接続に失敗した場合は対応処置が実行されます。
HTTP 要求の結果は、失敗か成功のいずれかです。すべての要求に対して Sun ONE Web Server サーバーから応答が得られた場合 (成功) は、次の検証サイクルが行われます。終了すると、検証は休眠状態になります。
ネットワークトラフィックが多い場合、システムの負荷が高い場合、または設定ミスがあった場合は、HTTP GET チェックに失敗することがあります。Monitor_Uri_List 内の URI に不正なポートまたはホスト名が含まれていた場合、障害が発生することがあります。たとえば、Web サーバーインスタンスが論理ホスト schost-1 上で待機しているときに、URI が http://schost-2/servlet/monitor と指定されていた場合、検証では schost-2 に /servlet/monitor が要求されます。
異常履歴に基づいて、データサービスのローカルでの再起動、またはデータサービスのフェイルオーバーのいずれかを実行します。このアクションの詳細については、『Sun Cluster 3.1 データサービスの計画と管理』の「Sun Cluster データサービス障害モニター」を参照してください。