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 版)』の「データサービスリソースを管理するためのツール」を参照してください。
この手順を実行するには、次の情報を確認しておく必要があります。
Sun Cluster HA for Sun Java System Web Server のリソースタイプの名前。この名前は、SUNW.iws です。
データサービスをマスターするクラスタノードの名前。フェイルオーバーサービスの場合、同時にデータサービスをマスターできるノードは 1 つだけです。
データサービスへのアクセスにクライアントが使用する論理ホスト名 (フェイルオーバーサービスの場合) または共有アドレス (スケーラブルサービスの場合)。
Sun Java System バイナリプログラムのパス。バイナリプログラムは、ローカルディスクまたはクラスタファイルシステムにインストールできます。各インストール先の長所と短所については、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』の「Sun Cluster データサービスの構成ガイドライン」を参照してください。
Sun Java System Web Server で使用される一連の IP アドレスは、Sun Java System アプリケーションリソースの Network_resources_used の設定によって決まります。また、Sun Java System Web Server で使用されるポート番号は、リソースの Port_list の設定によって決まります。障害モニターは、Sun Java System Web Server のデーモンが IP とポートのすべての組み合わせで待機しているとみなします。ポート 80 以外のポート番号で待機するように Sun Java System Web Server の magnus.conf ファイルをカスタマイズしている場合は、magnus.conf ファイルに、IP アドレスとポートのすべての組み合わせを指定しておく必要があります。障害モニターは、これらの組み合わせのすべてを検証し、Sun Java System Web Server が IP アドレスとポートの特定の組み合わせで待機していない場合はモニターを起動できません。Sun Java System Web Server が IP アドレスとポートのすべての組み合わせに対応できない場合は、複数のインスタンスに分割する必要があります。
この手順は、すべてのクラスタメンバー上で実行します。
クラスタメンバー上でスーパーユーザーになります。
Sun Cluster HA for Sun Java System Web Server のリソースタイプを登録します。
# scrgadm -a -t SUNW.iws |
データサービスのリソースタイプを追加します。
当該データサービス用にあらかじめ定義されているリソースタイプを指定します。
ネットワークとアプリケーションのリソースを格納するためのフェイルオーバーリソースグループを作成します。
フェイルオーバーサービスの場合には、このリソースグループはアプリケーションリソースも保持します。
-h オプションを必要に応じて指定し、データサービスを実行できるノードグループを選択できます。
# scrgadm -a -g resource-group [-h nodelist] |
フェイルオーバーリソースグループの名前を指定します。どのような名前でもかまいませんが、クラスタ内のリソースグループごとに一意である必要があります。
マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。フェイルオーバー時、ノードはこのリスト内の順番に従ってプライマリとして判別されます。
--h を使用してノードリストの順序を指定します。クラスタ内のすべてのノードが潜在マスターの場合、-h オプションを使用する必要はありません。
使用しているすべてのネットワークアドレスがネームサービスデータベースに追加されていることを確認します。
Sun Cluster のインストール時に、この確認を行なっておく必要があります。詳細については、『Sun Cluster Software Installation Guide for Solaris OS』の計画に関する章を参照してください。
ネームサービスの検索が原因で障害が発生するのを防ぐために、サーバーとクライアントの /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 など) として指定できます。ノードは、sc_ipmp0@1、sc_ipmp@phys-schost-1 などのノード名またはノード IDで特定できます。
現バージョンの Sun Cluster では、netif にアダプタ名を使用できません。
スケーラブルサービスのみ : 希望するすべてのクラスタノードで実行するスケーラブルリソースグループを作成します。
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 |
このリソースグループに許可するアクティブ主ノードの最大数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
このリソースグループに許可するアクティブ主ノードの希望数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
作成されたリソースグループが依存する共有アドレスリソースを含むリソースグループを指定します。
スケーラブルサービスのみ : スケーラブルリソースグループにアプリケーションリソースを作成します。
Sun Cluster HA for Sun Java System Web Server をフェイルオーバーデータサービスとして実行する場合は、この手順を省略して手順 8 に進んでください。
この手順を繰り返し、複数のアプリケーションリソース (セキュアバージョンや非セキュアバージョンなど) を追加できます。
必要に応じて、データサービスの負荷均衡を設定します。負荷均衡を設定するには、標準リソースプロパティの Load_balancing_policy と Load_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, … |
追加するリソースの名前を指定します。
リソースが配置されるスケーラブルリソースグループの名前を指定します。
追加するリソースのタイプを指定します。
データサービスが使用する共有アドレスを指定するネットワークリソース名をコンマで区切って指定します。
使用するポート番号とプロトコルの対をコンマで区切って指定します (例 : 80/tcp, 81/tcp)。
スケーラブルサービスに必要なブール値を指定します。
Sun Java System 構成ファイルの位置をコンマで区切って指定します。これは、Sun Cluster HA for Sun Java System Web Server の必須拡張プロパティです。
1 対 1 のマッピングは、Confdir_List と Port_List に適用されます。一方のリストに含まれる各値は、指定した順に、もう一方のリストの値と対応する必要があります。
フェイルオーバーサービスのみ : フェイルオーバーリソースグループにアプリケーションリソースを作成します。
この手順は、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 |
追加するリソースの名前を指定します。
リソースが配置されるフェイルオーバーリソースグループの名前を指定します。
追加するリソースのタイプを指定します。
データサービスが使用する論理ホストを識別するネットワークリソースをコンマで区切って指定します。
使用するポート番号とプロトコルを指定します (例:80/tcp)。Port_list と Confdir_list 間の 1 対 1 のマッピング規則により、フェイルオーバーサービスのための Port_list には、エントリを 1 つだけ登録します。
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 を参照してください。
フェイルオーバーリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
ネットワークリソースと障害モニターを有効にし、リソースグループを管理状態 ( MANAGED) に切り替え、オンラインにします。
フェイルオーバーリソースグループの名前を指定します。
スケーラブルサービスのみ : スケーラブルリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
リソースとモニターを有効に設定し、リソースグループを MANAGED 状態にし、オンラインにします。
スケーラブルリソースグループの名前を指定します。
次に、スケーラブル 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 サービスを 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 |
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 版)』の「リソースグループとディスクデバイスグループ間での起動の同期」を参照してください。)