Sun Cluster Data Service for Apache ガイド (Solaris OS 版)

Sun Cluster HA for Apache のインストールと構成

この手順では、scrgadm(1M) コマンドを使って Sun Cluster HA for Apache の登録と構成を行う方法を説明します。

Apache は、フェイルオーバーサービスまたはスケーラブルサービスとして構成できます。

スケーラブルリソースグループはフェイルオーバーリソースグループに依存します。 Apache をスケーラブルサービスとして構成する場合には、追加の手順が必要になります。 このような手順には、その先頭部分に「スケーラブルサービスのみ」という表示をして区別します。 Apache をスケーラブルサービスとして構成しない場合は、これらの手順は省略してください。

Sun Cluster HA for Apache を登録して構成する


注 –

任意のクラスタメンバーでこの手順を実行してください。


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

  2. データサービスのリソースタイプを登録します。


    # scrgadm -a -t SUNW.apache
    
    -a

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

    -t SUNW.apache

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

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

    このリソースグループは、フェイルオーバーサービスとスケーラブルサービスの両方に必要です。 フェイルオーバーサービスの場合、このリソースグループはネットワークリソースとフェイルオーバーアプリケーションリソースの両方を含みます。 スケーラブルサービスの場合、ネットワークリソースのみを含みます。 このグループとアプリケーションリソースを含むリソースグループとの間に、依存性が作成されます。

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


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

    新しい構成を追加します。

    -gresource-group

    追加するフェイルオーバーリソースグループの名前を指定します。 任意の名前を指定できますが、クラスタ内で一意のリソースグループ名にする必要があります。

    [-h nodelist]

    マスターを識別する物理ノード名または ID をコンマで区切って指定します (任意)。 フェイルオーバー時は、この順序で主ノードが決まります。


    注 –

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


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

    Sun Cluster を始めてインストールするときに、この確認を行います。 詳細については、『Sun Cluster ソフトウェアのインストール (Solaris OS 版)』の計画に関する章を参照してください。


    注 –

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


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


    # scrgadm -a {-S | -L} -g resource-group \
    -l hostname, … [-j resource] \
    [-Xauxnodelist] [-n netiflist]
    -S | -L

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

    -l hostname, …

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

    -g resource-group

    手順 3で作成したフェイルオーバーリソースグループ名を指定します。

    -j resource

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

    -X auxnodelist

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

    -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 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]
    -gresource-group

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

    -y Maximum_primaries =m

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

    -y Desired_primaries =n

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

    -y RG_dependencies = resource-group

    作成されたリソースグループが依存する、共有アドレスリソースを含むリソースグループを指定します。これは、手順 3 で作成したフェイルオーバーリソースグループの名前です。

    -h nodelist

    このリソースグループの主ノードとして使用できるノードのリスト (オプション)。 このリストは、リソースグループの主ノードとして使用できないノードがあるときだけ指定します。

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

    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 Bin_dir=bin-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 Bin_dir =bin-directory

    Apache バイナリ (apachect1) がインストールされている場所を指定します。 Sun Cluster HA for Apache にはこの拡張プロパティが必要です。


    注 –

    必要に応じて、Apache データサービスに属する拡張プロパティをさらに設定し、それらのデフォルト値を上書きできます。 どのような拡張プロパティがあるかについては、表 1–2を参照してください。


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

    この手順は、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 Bin_dir=bin-directory
    
    -j resource

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

    -g resource-group

    リソースが配置されるリソースグループの名前を指定します。これは、手順 3 で作成したものです。

    -t resource-type

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

    -y Network_resources_used = network-resource, …

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

    -y Port_list =port-number/protocol, …

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

    -y Scalable =

    このプロパティは、スケーラブルサービスにのみ必要です。 False に設定するか省略します。

    -x Bin_dir= bin-directory

    Apache バイナリ (apachect1) がインストールされている場所を指定します。 Sun Cluster HA for Apache にはこの拡張プロパティが必要です。

  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 Apache の登録

スケーラブルサービスの場合、次のリソースグループを作成します。

次に、スケーラブル Apache サービスを 2 ノードクラスタに登録する例を示します。


クラスタ情報
ノード名: phys-schost-1、phys-schost-2
共有アドレス: schost-1
リソースグループ: resource-group-1 (共有アドレスの場合)、
	resource-group-2 (スケーラブル Apache アプリケーション
    リソースの場合
リソース: schost-1 (共有アドレス)、apache-1 (Apache アプリケーション
    リソース)
 
(フェイルオーバーリソースグループを追加して、共有アドレスを含める)
# 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
 
(フェイルオーバーリソースグループをオンラインにする)
# scswitch -Z -g resource-group-1
 
(両方のノードで、スケーラブルリソースグループをオンラインにする)
# scswitch -Z -g resource-group-2

例 – フェイルオーバー Sun Cluster HA for Apache の登録

次に、フェイルオーバー Apache サービスを 2 ノードクラスタで登録する例を示します。


クラスタ情報
ノード名: phys-schost-1、phys-schost-2
論理ホスト名: schost-1
リソースグループ: resource-group-1 (すべてのリソース用)
リソース: 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
 
(フェイルオーバーリソースグループをオンラインにする)
# scswitch -Z -g resource-group-1

次に進む手順

データサービスのインストールと構成を確認するを参照し、インストールを確認してください。 リソース拡張プロパティを設定または変更する場合は、Sun Cluster HA for Apache 拡張プロパティの構成を参照してください。

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

SUNW.HAStoragePlus リソースタイプは、Sun Cluster 3.0 5/02 で導入されました。この新しいリソースタイプは、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 Apache を構成すると、ネットワークリソース (論理ホスト名または共有アドレス) とポート番号によって、Web ブラウザから Web ページを開くことができます。 scswitch(1M) コマンドを使用してスイッチオーバーを実行し、サービスが引き続き二次ノードでも実行でき、さらに元の主ノードに戻すことができることを確認してください。