この手順では、scrgadm(1M) コマンドを使って Sun Cluster HA for Apache データサービスの登録と構成を行う方法を説明します。
Apache は、フェイルオーバーサービスまたはスケーラブルサービスとして構成できます。
フェイルオーバーサービスとして Apache を構成する場合は、Apache アプリケーションリソースとネットワークリソースは単一のリソースグループに配置します。
スケーラブルサービスとして Apache を構成する場合は、Apache アプリケーションリソースとネットワークリソースのフェイルオーバーリソースグループに、それぞれ 1 つずつスケーラブルリソースグループを作成します。
スケーラブルリソースグループはフェイルオーバーリソースグループに依存します。Apache をスケーラブルサービスとして構成する場合には、追加の手順が必要になります。このような手順には、その先頭部分に「スケーラブルサービスのみ」という表示をして区別します。Apache をスケーラブルサービスとして構成しない場合は、これらの手順は省略してください。
任意のクラスタメンバーでこの手順を実行してください。
クラスタメンバーでスーパーユーザーになります。
データサービスのリソースタイプを登録します。
# scrgadm -a -t SUNW.apache |
データサービスのリソースタイプを追加します。
データサービス用に事前に定義したリソースタイプ名を指定します。
ネットワークリソースとアプリケーションリソースを保持するフェイルオーバーリソースグループを作成します。
このリソースグループは、フェイルオーバーサービスとスケーラブルサービスの両方に必要です。フェイルオーバーサービスの場合、このリソースグループはネットワークリソースとフェイルオーバーアプリケーションリソースの両方を含みます。スケーラブルサービスの場合、ネットワークリソースのみを含みます。このグループとアプリケーションリソースを含むリソースグループとの間に、依存性が作成されます。
必要に応じて、-h オプションを指定してデータサービスを実行できる一群のノードを選択することもできます。
# scrgadm -a -g resource-group [-h nodelist] |
新しい構成を追加します。
追加するフェイルオーバーリソースグループの名前を指定します。任意の名前を指定できますが、クラスタ内で一意のリソースグループにする必要があります。
潜在的マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。フェイルオーバー時は、この順序で主ノードが決まります。
-h を使用してノードリストの順序を指定します。クラスタ内のすべてのノードが潜在的マスターの場合、-h オプションを使用する必要はありません。
使用しているすべてのネットワークアドレスが、ネームサービスデータベースに追加されていることを確認します。
Sun Cluster を始めてインストールするときに、この確認を行います。詳細は、『Sun Cluster 3.0 U1 ソフトウェアのインストール』の計画に関する章を参照してください。
ネームサービスの検索が原因で障害が発生するのを防ぐために、すべてのクラスタノードの /etc/hosts ファイルに、すべてのネットワークアドレスが登録されていることを確認してください。サーバーの /etc/nsswitch.conf ファイルのネームサービスマッピングは、NIS、NIS+、DNS にアクセスする前に、最初にローカルファイルを検査するように構成してください。
ネットワークリソース (論理ホスト名または共有アドレス) を、手順 3 で作成したフェイルオーバーリソースグループに追加します。
# scrgadm -a {-S | -L} -g resource-group ¥ -l hostname, ... [-j resource] ¥ [-X auxnodelist] [-n netiflist] |
共有アドレスリソースには -S オプションを、論理ホスト名リソースには -L オプションを使用します。
追加するネットワークリソースをコンマで区切って指定します。-j オプションを使用してリソース名を指定できます。リソース名を指定しないと、ネットワークリソースの名前は、コンマで区切ったリストの最初の名前になります。
手順 3 で作成したフェイルオーバーリソースグループ名を指定します。
リソースの名前を指定します。リソース名を指定しない場合、ネットワークリソース名は、デフォルトで -l オプションで最初に指定した名前になります。
共有アドレスをホストできるクラスタノード (ただし、フェイルオーバー時に主ノードとして使用されない) を識別する物理ノード名またはノード ID をコンマで区切って指定します。このオプションを指定した場合は、これらのノードは、リソースグループの nodelist で指定されるノードと相互に排他的になります。
各ノードの NAFO グループをコンマで区切って指定します (任意)。リソースグループの nodelist 内のすべてのノードが、netiflist に含まれている必要があります。このオプションを指定しない場合は、scrgadm は、nodelist 内の各ノードの hostname リストによって指定されるサブネット上からネットアダプタを見つけようとします。
スケーラブルサービスのみ: クラスタ内の希望するすべてのノードで実行するスケーラブルリソースグループを作成します。
Sun Cluster HA for Apache データサービスをフェイルオーバーデータサービスとして実行している場合は、手順 8 へ進んでください。
データサービスアプリケーションリソースを保持するリソースグループを作成します。主ノードの最大数と希望数を指定する必要があります。
このリソースグループの主ノードとしてノード群の一部しか使用しない場合は、リソースグループを作成するときに、-h オプションを使ってこれらの主ノードの名前を指定する必要があります。
このリソースグループと 手順 3 で作成したフェイルオーバーリソースグループとの間の依存性についても指定する必要があります。この依存性によって、フェイルオーバー時に 2 つのリソースグループが同じノードでオンラインになったとき、Resource Group Manager (RGM) は、ネットワークリソースに依存する任意のデータサービスが開始される前に、そのネットワークリソースを開始できます。
# scrgadm -a -g resource-group ¥ -y Maximum_primaries=m -y Desired_primaries=n ¥ -y RG_dependencies=resource-group ¥ [-h nodelist] |
追加するスケーラブルサービスリソースグループの名前を指定します。
このリソースグループに許可するアクティブ主ノードの最大数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
このリソースグループに許可するアクティブ主ノードの希望数を指定します。このプロパティに値を指定しない場合は、デフォルトの 1 になります。
作成されたリソースグループが依存する、共有アドレスリソースを含むリソースグループを指定します。これは、手順 3 で作成したフェイルオーバーリソースグループの名前です。
このリソースグループの主ノードとして使用できるノードのリスト (オプション)。このリストは、リソースグループの主ノードとして使用できないノードがあるときだけ指定します。
スケーラブルサービスのみ: スケーラブルリソースグループにアプリケーションリソースを作成します。
Sun Cluster HA for Apache データサービスをフェイルオーバーデータサービスとして実行している場合は、手順 8 へ進んでください。
# 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 -x Bin_dir=bin-directory |
追加するリソースの名前を指定します。
リソースが配置されるスケーラブルリソースグループの名前を指定します。
追加するリソースの種類を指定します。
データサービスが使用する共有アドレスを指定するネットワークリソース名をコンマで区切って指定します。
使用するポート番号とプロトコルをコンマで区切って指定します (例: 80/tcp,81/tcp)。
スケーラブルサービスの必須パラメータを指定します。True に設定してください。
Apache 構成ファイルの場所をコンマで区切って指定します。Sun Cluster HA for Apache データサービスはこの拡張プロパティを必要とします。
Apache バイナリをインストールする場所を指定します。Sun Cluster HA for Apache データサービスはこの拡張プロパティを必要とします。
必要に応じて、Apache データサービスに属する拡張プロパティをさらに設定し、デフォルト値を上書きできます。追加の拡張プロパティについては、表 5-2 を参照してください。
フェイルオーバーサービスのみ: フェイルオーバーリソースグループにアプリケーションリソースを作成します。
ここで説明する手順は、Sun Cluster HA for Apache データサービスをフェイルオーバーデータサービスとして使用している場合にのみ実行してください。Sun Cluster HA for Apache データサービスをスケーラブルサービスとして使用している場合は、手順 6 および 手順 7 を実行し、手順 10 へ進んでください。
# scrgadm -a -j resource -g resource-group ¥ -t resource-type -y Network_resources_used=network-resource, ... ¥ -y Port_list=port-number/protocol[, ...] -y Scalable=False ¥ -x Confdir_list=config-directory -x Bin_dir=bin-directory |
追加するリソースの名前を指定します。
リソースが配置されるリソースグループの名前を指定します。これは、手順 3 で作成したものです。
追加するリソースの種類を指定します。
追加するリソースの種類を指定します。
使用するポート番号とプロトコルをコンマで区切って指定します (例: 80/tcp,81/tcp)。
このプロパティは、スケーラブルサービスにのみ必要です。False に設定するか省略します。
Apache 構成ファイルの場所を指定します。Sun Cluster HA for Apache データサービスはこの拡張プロパティを必要とします。エントリは 1 つだけです。
Apache バイナリをインストールする場所を指定します。Sun Cluster HA for Apache データサービスはこの拡張プロパティを必要とします。
フェイルオーバーリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
共有アドレスリソースと障害モニターを有効に設定し、リソースグループを管理状態に切り替え、オンラインにします。
フェイルオーバーリソースグループの名前を指定します。
スケーラブルサービスのみ:スケーラブルリソースグループをオンラインにします。
# scswitch -Z -g resource-group |
リソースとモニターを有効に設定し、リソースグループを管理状態にし、オンラインにします。
スケーラブルリソースグループの名前を指定します。
スケーラブルサービスの場合、次のリソースグループを作成します。
1 つは、ネットワークリソースを含むフェイルオーバーリソースグループです。
もう 1 つは、アプリケーションリソースを含むスケーラブルリソースグループです。
Cluster Information Node names: phys-schost-1, phys-schost-2 Shared address: schost-1 Resource groups: resource-group-1 (共有アドレスの場合), resource-group-2 (スケーラブル Apache アプリケーションリソースの場合) Resources: schost-1 (共有アドレス), apache-1 (アプリケーションリソース) (フェイルオーバーリソースグループを追加して共有アドレスを含む) # scrgadm -a -g resource-group-1 (共有アドレスリソースをフェイルオーバーリソースグループに追加する) # scrgadm -a -S -g resource-group-1 -l schost-1 (Apache リソースタイプを登録する) # scrgadm -a -t SUNW.apache (スケーラブルリソースグループを追加する) # scrgadm -a -g resource-group-2 -y Maximum_primaries=2 ¥ -y Desired_primaries=2 -y RG_dependencies=resource-group-1 (Apache アプリケーションリソースをスケーラブルリソースグループに追加する) # scrgadm -a -j apache-1 -g resource-group-2 ¥ -t SUNW.apache -y Network_resources_used=schost-1 ¥ -y Scalable=True -y Port_list=80/tcp ¥ -x Bin_dir=/opt/apache/bin -x Confdir_list=/opt/apache/conf (フェイルオーバーリソースグループをオンラインにする) # scswitch -Z -g resource-group-1 (両方のノードで、スケーラブルリソースグループをオンラインにする) # scswitch -Z -g resource-group-2 |
次に、フェイルオーバー Apache サービスを 2 ノードクラスタで登録する例を示します。
Cluster Information Node names: phys-schost-1, phys-schost-2 Logical hostname: schost-1 Resource group: resource-group-1 (すべてのリソースの場合) Resources: schost-1 (論理ホスト名), apache-1 (Apache アプリケーションリソース) (フェイルオーバーリソースグループを追加してすべてのリソースを含む) # scrgadm -a -g resource-group-1 (論理ホスト名リソースをフェイルオーバーリソースグループに追加する) # scrgadm -a -L -g resource-group-1 -l schost-1 (Apache リソースタイプを登録する) # scrgadm -a -t SUNW.apache (Apache アプリケーションリソースをフェイルオーバーリソースグループに追加する) # scrgadm -a -j apache-1 -g resource-group-1 ¥ -t SUNW.apache -y Network_resources_used=schost-1 ¥ -y Scalable=False -y Port_list=80/tcp ¥ -x Bin_dir=/opt/apache/bin -x Confdir_list=/opt/apache/conf (フェイルオーバーリソースグループをオンラインにする) # scswitch -Z -g resource-group-1 |
「データサービスのインストールと構成を確認する」を参照し、インストールを確認してください。リソース拡張プロパティを設定または変更する場合は、「データサービスのインストールと構成を確認する」を参照してください。
SUNW.HAStorage リソースタイプは、HA 記憶装置とデータサービス間の動作を同期させます。Sun Cluster HA for Apache データサービスはスケーラブルなので、SUNW.HAStorage リソースタイプを設定する必要があります。
このリソースタイプの詳細については、SUNW.HAStorage(5) のマニュアルページおよび 「リソースグループとディスクデバイスグループの関連性」を参照してください。設定手順については、「新しいリソース用に SUNW.HAStorage リソースタイプを設定する」を参照してください。
Sun Cluster HA for Apache データサービスを構成した後、ネットワークリソース (論理ホスト名または共有アドレス) およびポート番号を使用し、Web ブラウザから Web ページを表示できることを確認します。scswitch(1M) コマンドを使用してスイッチオーバーを実行し、サービスが引き続き二次ノードでも実行でき、さらに元の主ノードに戻すことができることを確認してください。