本文に進む 日本−日本語
日本HPホーム 製品とサービス お客様サポート/ ダウンロード ソリューション ご購入の方法
≫ お問い合わせ
詳細検索オプション
日本HPホーム
Serviceguard の管理 > 第6章 パッケージとサービスの構成

パッケージモジュールの選択

≫ 

テクニカル ドキュメント

PDF版
関連ドキュメント
フィードバック
ここから本文が始まります

 ≫ 目次

 ≫ 索引

重要: 作業を開始する前に、「パッケージ構成のプランニング」で説明しているパッケージプランニング作業を行う必要があります。

適切なパッケージモジュールを選択するためには、作成するパッケージに関して以下の項目を決定する必要があります。

以上の項目が決まれば、パッケージ構成ファイルの生成の準備が整ったことになります。「パッケージ構成ファイルの生成」を参照してください。

パッケージのタイプ: フェイルオーバー、マルチノード、システムマルチノード

パッケージには、3 つのタイプがあります。

  • フェイルオーバーパッケージ: 最も一般的なタイプのパッケージです。フェイルオーバーパッケージは、一時期には 1 つのノードでのみ動作します。フェイルオーバーパッケージで障害が発生すると、Serviceguard (またはユーザー) はそのパッケージを停止して、パッケージの構成リストから選択した別のノードで再起動します。「node_name」を参照してください。

    フェイルオーバーパッケージを作成するためのパッケージ構成ファイルを生成するには、cmmakepkg コマンドの行で -m sg/failover を指定します。「パッケージ構成ファイルの生成」を参照してください。

  • マルチノードパッケージ: マルチノードパッケージは、クラスタ内の複数のノードで同時に動作します。アプリケーション、サービス、EMS リソース、サブネットのようなパッケージの構成要素で障害が発生した場合には、障害が発生したノード上のパッケージだけが停止します。

    マルチノードパッケージに再配置可能 IP アドレスを割り当てることはできません。

    例として、Veritas Cluster File System (CFS) システムのマルチノードパッケージが挙げられます。ただし、マルチノードパッケージのサポートは CVM/CFS だけに限定されなくなりました。ユーザーは任意の目的でマルチノードパッケージを作成できるようになりました。

    重要: パッケージでボリュームグループを使っている場合には、共有モードでアクティブ化する必要があります。そのためには、アドイン製品 SGeRAC をインストールした場合にだけ使うことができる vgchange -a s を使う必要があります。
    注記: CFS をサポートしているシステムでは、パッケージ構成ファイルを編集するのではなく、cfsdgadm コマンドと cfsmntadm コマンドを使って CFS マルチノードパッケージを構成します。「Veritas マルチノードパッケージの構成」を参照してください。

    マルチノードパッケージを作成するためのパッケージ構成ファイルを生成するには、cmmakepkg コマンドの行で -m sg/multi_node を指定します。「パッケージ構成ファイルの生成」を参照してください。

  • システムマルチノードパッケージ: システムマルチノードパッケージは、クラスタ内の全ノードで同時に動作します。個々のノードで起動/停止を行うことはできません。

    このタイプのパッケージでは、「node_fail_fast_enabled」「auto_run」の両方にyes を設定する必要があります。すべてのサービスで、「service_fail_fast_enabled」yes を設定する必要があります。

    システムマルチノードパッケージがサポートされるのは、Veritas Cluster File System (CFS) のような当社が提供するアプリケーションだけです。

    注記: CFS をサポートしているシステムでは、パッケージ構成ファイルを編集するのではなく、cfscluster コマンドを使って CFS システムマルチノードパッケージを構成します。「Veritas システムマルチノードパッケージの構成」を参照してください。
注記: マルチノードパッケージやシステムマルチノードパッケージでは、以下のパラメータは構成できません。
  • failover_policy

  • failback_policy

  • ip_subnet

  • ip_address

これらのタイプのパッケージに構成するボリュームグループは、共有モードでアクティブ化する必要があります。

パッケージのタイプと動作についての詳細は、「パッケージマネージャの動作」を参照してください。パッケージのプランニングについての詳細は、「パッケージ構成のプランニング」を参照してください。

作成するパッケージのタイプが決まったら、次の手順は、含めるパッケージ構成モジュールを決めることです。「パッケージモジュールとパラメータ」を参照してください。

パッケージモジュールとパラメータ

以下の表は、パッケージモジュールと、各モジュールに含まれる構成パラメータを示します。この項は、「パッケージ構成のプランニング」の説明と併せてお読みください。

ここでの説明と以降のパラメータの説明 (「パッケージのパラメータの説明」) を参考にして、パッケージを作成するためにフェイルオーバーモジュールまたはマルチノードモジュールに追加するモジュールを決定します。従来のパッケージの作成に慣れている場合には、パッケージ制御スクリプトで使っていたパラメータ (またはそれと同等のもの) がパッケージ構成ファイルに移動していることが分かります。これらのパラメータには、表では (S) が付けられています。

注記: 多くのモジュールを含む複雑なパッケージを作成する場合には、モジュールを選択するプロセスをスキップして、単純にすべてのモジュールを含む構成ファイルを作成することができます。

cmmakepkg -m sg/all $SGCONF/sg-all

(出力は $SGCONF/sg-all に書き込まれます。)

ベースパッケージモジュール

cmmakepkg コマンド行では、少なくとも 1 つのベースモジュール (またはベースモジュールを含んでいる default または all) を指定する必要があります。アスタリスク (*) が付いているパラメータは、Serviceguard A.11.18 で新たに導入されたか、変更されたパラメータです。(S) は、パッケージ制御スクリプトからモジュラーパッケージ用のパッケージ構成ファイルに移されたパラメータ (またはそれと同等のもの) を示します。詳細は、「パッケージのパラメータの説明」を参照してください。

表 6-1 ベースモジュール

モジュール名

パラメータ (ページ)

コメント

failover

「package_name」 *
「module_name」 *
「module_version」 *
「package_type」
「node_name」
「auto_run」
「node_fail_fast_enabled」
「run_script_timeout」
「halt_script_timeout」
「successor_halt_timeout」 *
「script_log_file」
「operation_sequence」 *
「log_level」 *
「failover_policy」
「failback_policy」
「priority」 *

ベースモジュール。フェイルオーバーパッケージの主要ビルディングブロックとして使います。

multi_node

「package_name」 *
「module_name」 *
「module_version」 *
「package_type」
「node_name」
「auto_run」
「node_fail_fast_enabled」
「run_script_timeout」
「halt_script_timeout」
「successor_halt_timeout」 *
「script_log_file」
「operation_sequence」 *
「log_level」
「priority」 *

ベースモジュール。マルチノードパッケージの主要ビルディングブロックとして使います。

system_multi_node

「package_name」 *
「module_name」 *
「module_version」 *
「package_type」
「node_name」
「auto_run」
「node_fail_fast_enabled」
「run_script_timeout」
「halt_script_timeout」
「successor_halt_timeout」 *
「script_log_file」
「operation_sequence」
「log_level」 *
「priority」 *

ベースモジュール。システムマルチノードパッケージの主要ビルディングブロックとして使います。システムマルチノードパッケージは、当社が提供するアプリケーションでのみサポートされます。

 

オプションのパッケージモジュール

追加的な機能を構成する必要がある場合には、オプションのモジュールをベースモジュールに追加します。アスタリスク (*) が付いているパラメータは、Serviceguard A.11.18 で新たに導入されたか、変更されたパラメータです。(S) は、パッケージ制御スクリプトからモジュラーパッケージ用のパッケージ構成ファイルに移されたパラメータ (またはそれと同等のもの) を示します。詳細は、「パッケージのパラメータの説明」を参照してください。

表 6-2 オプションモジュール

モジュール名

パラメータ (ページ)

コメント

dependency

「dependency_name」 *
「dependency_condition」
「dependency_location」

ベースモジュールに追加して、他の 1 つ以上のパッケージに依存するパッケージを作成します。

monitor_subnet

「local_lan_failover_allowed」
「monitored_subnet」 *
「cluster_interconnect_subnet」 *

ベースモジュールに追加して、パッケージのサブネット監視を構成します。

package_ip

「ip_subnet」 * (S)
「ip_address」 * (S)

failover モジュールに追加して、フェイルオーバーパッケージに再配置可能 IP アドレスを割り当てます。

service

「service_name」 * (S)
「service_cmd」 (S)
「service_restart」 * (S)
「service_fail_fast_enabled」
「service_halt_timeout」

ベースモジュールに追加して、アプリケーションまたはサービスを実行するパッケージを作成します。

resource

「resource_name」 *
「resource_polling_interval」
「resource_start」
「resource_up_value」

ベースモジュールに追加して、Event Monitoring Service (EMS) を通して重要なリソースを監視するパッケージを作成します。

volume_group

「concurrent_vgchange_operations」 (S)
「vgchange_cmd」 * (S)
「cvm_activation_cmd」 (S)
「vxvol_cmd」 * (S)
「vg」 (S)
「cvm_dg」 (S)
「vxvm_dg」 (S)
「deactivation_retry_count」 (S)
「kill_processes_accessing_raw_devices」 (S)

パッケージで LVM ボリュームや VxVM ボリュームにファイルシステムをマウントする必要がある場合、または CFS は使わずに CVM ボリュームを使う場合に、ベースモジュールに追加します。

filesystem

「concurrent_fsck_operations」 (S)
「concurrent_mount_and_umount_operations」 (S)
「fs_mount_retry_count」 (S)
「fs_umount_retry_count」 * (S)
「fs_name」 * (S)
「fs_directory」 * (S)
「fs_type」 (S)
「fs_mount_opt」 (S)
「fs_umount_opt」 (S)
「fs_fsck_opt」 (S)

ベースモジュールに追加して、パッケージのファイルシステムオプションを構成します。

pev

「pev_」 *

ベースモジュールに追加して、外部スクリプトに渡される環境変数を構成します。

external_pre

「external_pre_script」 *

ベースモジュールに追加して、パッケージ起動時のボリュームグループとディスクグループのアクティブ化の前と、パッケージ停止時のボリュームグループとディスクグループの非アクティブ化後に実行される追加プログラムを指定します。

external

「external_script」 *

ベースモジュールに追加して、パッケージ停止時に、パッケージを起動/終了する際に実行される追加プログラムを指定します。

acp

「user_name」
「user_host」
「user_role」

ベースモジュールに追加して、パッケージのアクセス制御ポリシーを構成します。

all

すべてのパラメータ

大部分のオプションパラメータまたはすべてのオプションパラメータを必要とする複雑なパッケージを作成する場合、またはすべての利用可能なパラメータの仕様とコメントを表示する場合に使います。

default

(すべてのパラメータ)

all モジュールへのシンボリックリンク。cmmakepkg コマンド行でベースモジュールが指定されなかった場合に使われます。「cmmakepkg の例」を参照してください。

 

注記: モジュラーパッケージ構成ファイルのパラメータ名のデフォルトの形式は小文字です。従来のパッケージではデフォルトは大文字です。ただし互換性の問題はありません。Serviceguard は、少なくともパラメータ名については、大文字と小文字を区別しないためです。本書では、パラメータが従来のパッケージでのみ使われる場合や、前後関係から従来のパッケージだけを対象にしていることがわかる場合を除き、パラメータ名には小文字を使います。

パッケージのパラメータの説明

ここでは、パッケージの構成パラメータを簡単に説明します。

注記: 詳細は、cmmakepkg コマンドで出力される編集可能な構成ファイルのコメント、および cmmakepkg のマンページを参照してください。

これらの説明を参照しながら必要なパラメータを選択できるように、すべてのパラメータのコメントを含む構成ファイルを生成して印刷することができます。このファイルを作成するには、次のコマンドを実行します。

cmmakepkg -m sg/all $SGCONF/sg-all

または、単純に次のコマンドを実行します。

cmmakepkg $SGCONF/sg-all

これにより、すべてのパラメータとコメントを含む /etc/cmcluster/sg-all ファイルが作成されます。

cmmakepkg の詳しい実行方法は、次項、「パッケージ構成ファイルの生成」で説明します。また、「パッケージ構成のプランニング」も参照してください。

package_name

最大 39 文字の任意の名前ですが、以下の制限があります。

  • 最初と最後の文字は英数字

  • それ以外では、英数字とドット (.)、ダッシュ (-)、アンダースコア (_)

  • クラスタ内の他のパッケージ名と重複しない

    重要: Serviceguard の以前のリリースでのパッケージ名の制限は、これよりも緩いものでした。上記の規則に準拠していない名前を持つパッケージでも実行できますが、再構成時には名前を変更する必要があります。cmcheckconfcmapplyconf では、新しい規則が強制されます。
module_name

モジュール名 (たとえば、failoverservice など) です。このパラメータは変更しないでください。cmmakepkg のパラメータとして相対パス (たとえば、sg/failover) の形式で使われ、パッケージの構成で使われるモジュールを指定します。(このファイルは、$SGCONF/modules ディレクトリにあります。Serviceguard のディレクトリについての詳細は、「ファイルの位置」を参照してください。)

モジュラーパッケージ用の新規パラメータです。

module_version

モジュールバージョンです。このパラメータは変更しないでください。

モジュラーパッケージ用の新規パラメータです。

package_type

タイプは、failovermulti_nodesystem multi_node のいずれかです。ユーザーが構成できるのは、フェイルオーバーパッケージとマルチノードパッケージだけです。「パッケージのタイプ: フェイルオーバー、マルチノード、システムマルチノード」を参照してください。

node_name

このパッケージを実行できるノードです。または優先順位に従って並べられたノードのリストです。またはすべてのノードを示すアスタリスク (*) です。デフォルトは、* です。

リストを指定する場合には、各ノードは、次の例に示すように、先頭にリテラルnode_name を付けて行ごとに指定します。

node_name <node1>
node_name <node2>
node_name <node3>

Serviceguard はこのリストで指定された優先順位に従って、パッケージを実行するノードを選択します。

重要: 「クラスタ構成のパラメータ」に、ノード名についての重要な説明があります。
auto_run

yes またはno を設定できます。デフォルトは、yes です。

フェイルオーバーパッケージの場合には、yes を設定すると、Serviceguard は、クラスタの起動時に (node_name にリストされている最初の利用可能なノードで) パッケージを起動し、ノードで障害が発生した場合には、引き継ぎノードでパッケージを自動的に再起動します。no を設定すると、Serviceguard は、パッケージの自動起動や、別のノードでの再起動を行いません。

フェイルオーバーはパッケージの切り替えと呼ばれることもあります。パッケージの切り替えは、パッケージの動作中に cmmodpkg (1m) コマンドを使って有効/無効にすることができます。

システムマルチノードパッケージの場合には、auto_run にはyes を設定する必要があります。

node_fail_fast_enabled

yes またはno を設定できます。デフォルトは、no です。

yes は、パッケージで障害が発生した場合に、パッケージが動作しているノードが停止する (HP-UX システムのリセット) ことを意味します。no の場合には、Serviceguard はシステムを停止しません。

node_fail_fast_enabledyes を設定すると、Serviceguard が同一ノードでパッケージの起動を複数回試みる (そして失敗する) ことが防止されます。

システムマルチノードパッケージの場合には、node_fail_fast_enabled にはyes を設定する必要があります。

run_script_timeout

パッケージの起動に許される時間 (秒単位)、またはno_timeout です。デフォルトは、no_timeout です。最大値は、4294 です。

パッケージが run_script_timeout で指定された時間内に起動を完了できなかった場合には、Serviceguard はパッケージを終了させて、別のノードに切り替えられることがないようにします。このとき、node_fail_fast_enabledyes が設定されていると、ノードは停止 (HP-UX システムのリセット) されます。

タイムアウトなしを指定した場合 (no_timeout) には、Serviceguard はパッケージが起動するのを無限に待ちます。

タイムアウトが発生した場合には、次のようになります。

  • 切り替えは無効になります。

  • 現在のノードではそのパッケージが実行できなくなります。

halt_script_timeout

パッケージの停止に許される時間 (秒単位)、またはno_timeout です。デフォルトは、no_timeout です。最大値は、4294 です。

パッケージの停止プロセスが halt_script_timeout で指定された時間内に完了しなかった場合には、Serviceguard はパッケージを終了させて、別のノードに切り替えられることがないようにします。このとき、「node_fail_fast_enabled」yes が設定されていると、ノードは停止 (HP-UX システムのリセット) されます。

halt_script_timeout を指定する場合には、その値はこのパッケージの「service_halt_timeout」に設定されている値の合計よりも大きくなければなりません。

タイムアウトが発生した場合には、次のようになります。

  • 切り替えは無効になります。

  • 現在のノードではそのパッケージが実行できなくなります。

停止スクリプトでタイムアウトが発生した場合には、手作業でクリーンアップする必要があります。第 8 章の「パッケージ制御スクリプトのハングまたは障害」を参照してください。

successor_halt_timeout

Serviceguard が、このパッケージを停止する前に、このパッケージに依存しているパッケージが停止するのを待つ時間 (秒単位) を指定します。04292 の値、またはno_timeout を指定できます。デフォルトはno_timeout です。

  • no_timeout は、依存しているパッケージが停止するのを Serviceguard が無限に待つことを意味します。

  • 0 は、Serviceguard がこのパッケージを停止する前に、依存しているパッケージが停止するのを待たないことを意味します。

A.11.18 での新規パラメータです (モジュラーパッケージおよび従来のパッケージ用)。「パッケージの依存関係について」も参照してください。

script_log_file

パッケージログファイルの絶対パス名です。デフォルトは、$SGRUN/log/<package_name>.log です。(Serviceguard のパス名についての詳細は、「ファイルの位置」を参照してください。)

operation_sequence

パッケージの構成要素モジュールで定義されるスクリプトの起動順序を定義します。詳細は、パッケージ構成ファイルを参照してください。

このパラメータは構成できません。構成ファイル内のエントリーを変更しないでください。

モジュラーパッケージ用の新規パラメータです。

log_level

パッケージの検証時に stdout に出力される情報の量と、パッケージの起動/停止時に「script_log_file」に出力される情報の量を決定します。有効な値は、 05 です。

  • 0: 情報メッセージ

  • 1: 詳細情報が少し追加された情報メッセージ

  • 2: ロジックフローを示すメッセージ

  • 3: 詳細なデータ構造情報を示すメッセージ

  • 4: 詳細なデバッグ情報

  • 5: 関数呼び出しフロー

モジュラーパッケージ用の新規パラメータです。

failover_policy

パッケージ障害発生時に、パッケージを再起動する場所を Serviceguard が決める際の判断基準を指定します。configured_node またはmin_package_node を設定できます。デフォルトは、configured_node です。

  • configured_node は、Serviceguard が、「node_name」で指定されているリスト内の次に利用可能なノードで、パッケージの再起動を試みることを意味します。

  • min_package_node は、Serviceguard が、node_name リスト内のノードのうち、その時点で実行しているパッケージの数が最も少ないノードで、障害を起こしたパッケージを再起動することを意味します。

このパラメータが設定できるのは、フェイルオーバーパッケージだけです。このパッケージが他のパッケージと依存関係がある場合には、「パッケージの依存関係について」を参照してください。

failback_policy

一次ノードが再び利用可能になったときに、一次ノード (node_name リスト内の最初のノード) で実行されていないパッケージを Serviceguard が自動的に移動させるかどうかを指定します。automatic またはmanual を設定できます。デフォルトは、manual です。

  • manual は、パッケージが現在のノードで引き続き実行を続けることを意味します。

  • automatic は、一次ノードが利用可能になり次第、Serviceguard がパッケージを一次ノードに移動させることを意味します。ただし、移動させるためには、それよりも高い「priority」を持つパッケージを移動させなくてはならない場合には、移動させません。

このパラメータが設定できるのは、フェイルオーバーパッケージだけです。このパッケージが他のパッケージと依存関係がある場合には、「パッケージの依存関係について」を参照してください。

priority

「failover_policy」configured_node が設定されているフェイルオーバーパッケージに優先順位を割り当てます。有効な値は、 13000 またはno_priority です。デフォルトは、 no_priority です。「dependency_name」以降で説明している dependency_ パラメータも参照してください。

priority を使うと、パッケージの起動時やフェイルオーバーまたはフェイルバックが必要になったときに、依存関係を満たすことができます。依存対象のパッケージよりも高い優先順位を持つパッケージでは、選択したノード上で、依存対象のパッケージが強制的に起動または再起動され、依存関係が満たされます。

優先順位を割り当てる場合には、クラスタ内で一意である必要があります。小さい数値は高い優先順位を示します。数値で指定した優先順位はno_priority よりも高い優先順位を意味します。値は 20 の倍数で指定して、序列内に隙間を残しておくことをお勧めします。そうしないと、新しいパッケージに優先順位を割り当てるときに、すべての既存の優先順位をふり直さなくてはならなくなることがあります。

A.11.18 での新規パラメータです (モジュラーパッケージおよび従来のパッケージ用)。詳細は、「パッケージの依存関係について」を参照してください。

dependency_name

このパッケージを実行させる (または実行を継続させる) ために満たす必要がある特定の依存関係を示す一意の ID です。名前の長さと形式に対する制限は、「package_name」の場合と同じです。

重要: Serviceguard の以前のリリースでの依存関係名の制限は、これよりも緩いものでした。上記の規則に準拠していない dependency_name が指定されたパッケージでも実行できますが、再構成時には dependency_name を変更する必要があります。cmcheckconfcmapplyconf では、新しい規則が強制されます。

このパッケージが別のパッケージに依存している場合には、dependency_condition dependency_location と共にこのパラメータを設定します。たとえば、このパッケージが pkg2 に依存している場合には、次のように設定します。

dependency_name pkg2dep
dependency_condition pkg2 = UP
dependency_location same_node

パッケージの依存関係についての詳細は、「パッケージの依存関係について」を参照してください。

dependency_condition

この依存関係を満たすために、成立しなければならない条件です。Serviceguard A.11.18 から、設定できる条件は他のパッケージが動作していることだけになりました。

構文は、<package_name> = UP です。<package_name> には依存しているパッケージの名前を指定します。現在のパッケージ (構成中のパッケージ) のタイプと特性によって、依存対象のパッケージのタイプが以下のように制限されます。

  • 現在のパッケージがマルチノードパッケージの場合には、<package_name> に指定できるのはマルチノードパッケージまたはシステムマルチノードパッケージのみ

  • 現在のパッケージがフェイルオーバーパッケージで、「failover_policy」min_package_node の場合には、< package_name> に指定できるのはマルチノードパッケージまたはシステムマルチノードパッケージのみ

  • 現在のパッケージがフェイルオーバーパッケージで、failover_policyconfigured_node の場合には、<package_name> に指定できるのはマルチノードパッケージ、システムマルチノードパッケージ、または failover_policyconfigured_node のフェイルオーバーパッケージのみ

「パッケージの依存関係について」も参照してください。

dependency_location

「dependency_condition」を満たすべき場所を指定します。有効な値は、 same_node だけです。

local_lan_failover_allowed

Serviceguard が、クラスタノード上の LAN を切り替える (つまり、待機 LAN カードに切り替える) かどうかを指定します。

有効な値は、yesno です。デフォルトは、yes です。

monitored_subnet

このパッケージ用に監視する LAN サブネットの IP アドレスです。従来の SUBNET の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ構成ファイルで引き続きサポートされています。「従来のパッケージの構成」を参照してください。

1 つの行に 1 つのサブネットを指定して、複数のサブネットを指定できます。

monitored_subnet のいずれかで障害が発生すると、Serviceguard は、node_name で指定されているノードのうち、このパッケージ用に定義されているすべての ip_subnet で通信できるノードにパッケージを切り替えます。詳細および例は、構成ファイル内のコメントを参照してください。

cluster_interconnect_subnet

IPv4 アドレスを指定します。Serviceguard Extension for Real Application Cluster (SGeRAC) がインストールされているシステムで、マルチノードパッケージに対してのみ構成できます。

(詳細は、http://docs.hp.com/ja -> [ハイ アベイラビリティ] -> [Serviceguard Extension for Real Application Cluster (ServiceGuard OPS Edition)] にある『 Serviceguard Extension for RAC ユーザーガイド』の最新版を参照してください。)

A.11.18 での新規パラメータです (モジュラーパッケージおよび従来のパッケージ用)。

ip_subnet

パッケージで使われる IP サブネットを指定します。SUBNET の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。

使用する各サブネットに対して、1 つの行に 1 つのサブネットアドレスを指定し、それに続く行に、そのサブネット上でそのパッケージが使う再配置可能 IP アドレスを指定します。

たとえば、このパッケージでサブネット 192.10.25.0 と、再配置可能 IP アドレス 192.10.25.12 と 192.10.25.13 を使う場合には、次のように指定します。

ip_subnet 192.10.25.0

ip_address 192.10.25.12

ip_address 192.10.25.13

このパラメータが設定できるのは、フェイルオーバーパッケージだけです。

ip_address

指定した「ip_subnet」上の再配置可能 IP アドレスです。IP の代わりとなるパラメータです。このパラメータは従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。「従来のパッケージの構成」を参照してください。

再配置可能 IP アドレスについての詳細は、「定常 IP アドレスと再配置可能 IP アドレス」を参照してください。

このパラメータが設定できるのは、フェイルオーバーパッケージだけです。

service_name

サービスは、パッケージが動作している限り Serviceguard によって監視されるプログラムまたは機能です。service_name にはこの機能を指定し、cmrunserv コマンドと cmhaltserv コマンドで使われます。1 つのパッケージには最大で 30 サービス、1 つのクラスタには最大で 900 サービスが設定できます。

名前の長さと形式に関する制限は、「package_name」に対するものと同じです。service_name はクラスタ内の全パッケージで一意である必要があります。

重要: Serviceguard の以前のリリースでのパッケージ名の制限は、これよりも緩いものでした。上記の規則に準拠していない名前を持つサービスが指定されたパッケージでも実行できますが、再構成時には名前を変更する必要があります。cmcheckconfcmapplyconf では、新しい規則が強制されます。

各サービスは、5 つのパラメータ service_nameservice_cmdservice_restartservice_fail_fast_enabledservice_halt_timeout を使って定義します。以下の説明を参照してください。

以下に、完全に定義されたサービスの例を示します。

service_name               patricks-package4-ping
service_cmd                "/usr/sbin/ping hasupt22"
service_restart            unlimited
service_fail_fast_enabled  no
service_halt_timeout       300

その他の例については、パッケージ構成ファイルを参照してください。

従来のパッケージでは、このパラメータはパッケージ制御スクリプトとパッケージ構成ファイルに記述されていました。

service_cmd

この service_name に対応するアプリケーションまたはサービスを起動するコマンドです。次に例を示します。

/usr/bin/X11/xclock -display 15.244.58.208:0

絶対パス名で指定する必要があります。PATH 変数などの環境変数はコマンドに渡されません。デフォルトのシェルは、/usr/bin/sh です。

注記: サービス起動コマンドの定義は、慎重に行ってください。各起動コマンドは、以下のように実行されます。
  • cmrunserv コマンドは、起動コマンドを実行します。

  • Serviceguard は、起動コマンドが生成したプロセスのプロセス ID (PID) を監視します。

  • 起動したコマンドが終了したときには、Serviceguard はエラーが発生したか調べ、適切に対処します。この対処には、引き継ぎノードへのパッケージの移動も含まれます。

  • 起動コマンドが、他のコマンドを起動して終了するシェルスクリプトであった場合には、Serviceguard はこの正常な終了を障害と見なします。

サービスコマンドを実行する際の問題を避けるためには、各起動コマンドには実際のサービス名を指定し、実際のサービスが停止するまでプロセスが終了しないようにしてください。

このパラメータは、従来のパッケージではパッケージ制御スクリプトに記述します。

service_restart

Serviceguard が、service_cmd の再起動を試みる回数です。有効な値は、unlimitednone、または任意の正の整数です。デフォルトは、none です。

値にunlimited を指定すると、サービスは無限に再起動されます。値にnone を指定すると、サービスは再起動されません。

このパラメータは、従来のパッケージではパッケージ制御スクリプトに記述します。

service_fail_fast_enabled

service_name で指定したサービスが失敗した場合に、パッケージが動作しているノードを Serviceguard が停止 (システムリセット) するかどうかを指定します。有効な値は、yesno です。デフォルトは、no です。これはこのサービスが失敗してもノードを停止させないことを意味します。service_restartunlimited を指定した場合、yes を指定しても意味がありません。

service_halt_timeout

Serviceguard が、サービスのプロセスを強制的に終了させる前にサービスが停止するのを待つ時間 (秒単位) です。

値は、サービスを完了させるのに必要なクリーンアップを行えるだけの時間である必要があります。

有効な値は、noneunlimited、または任意の正の数です。unlimited は Serviceguard がプロセスを強制的に終了させないことを意味します。デフォルトは、none です。この場合には、Serviceguard は一切待たずにプロセスを終了させます。

resource_name

監視対象のリソースの名前を指定します。

resource_name は、resource_polling_intervalresource_startresource_up_value と共に Event Monitoring Service (EMS) の依存関係を定義します。

従来のパッケージでは、パッケージ構成ファイル内に RESOURCE_NAME を記述したときには、パッケージ制御スクリプト内に対応する DEFERRED_RESOURCE_NAME を記述する必要があります。

詳細と例は、「EMS リソースを構成するパラメータ」を参照してください。

resource_polling_interval

「resource_name」で指定したリソースを監視する間隔 (秒単位) を指定します。デフォルトは、60 秒です。

resource_start

resource_name で指定したリソースの監視を Serviceguard が開始する時期を指定します。有効な値は、automaticdeferred です。

automatic は、ノードが起動されると同時に Serviceguard がリソースの監視を開始することを意味します。deferred は、パッケージが起動されたときに Serviceguard がリソースの監視を開始することを意味します。

resource_up_value

resource_name で指定したリソースが動作中であるかどうかを判定するために使われる条件を定義します。演算子と値が必要です。値には文字列と数値を指定できます。有効な演算子は、値の型に応じて、=!=><>= <= のいずれかです。型が文字列の場合には、=!= だけが有効です。文字列にスペースが含まれている場合には、引用符で囲む必要があります。文字列の値は、大文字と小文字が区別されます。

1 つのパッケージには合計 15 個の resource_up_value を構成できます。たとえば、パッケージにリソース (resource_name) が 1 つしかない場合には、最大で 15 個の resource_up_value を定義できます。2 つの resource_name が定義されていて、そのうちの 1 つのリソースで 10 個の resource_up_value が定義されている場合には、残りのリソースには 5 つの resource_up_value しか定義できません。

concurrent_vgchange_operations

パッケージの起動/停止時に許されるボリュームグループの同時アクティベーション数/アクティベーション解除数を指定します。

有効な値は、任意の正の数です。デフォルトは、1 です。

パッケージが多数のボリュームグループをアクティブ化する場合には、このパラメータを慎重にチューニングすることによって、パッケージの起動/停止の性能を改善できます。

各ステップで、値は一度に少しだけ増やし、性能に与える影響を監視することによって、性能をチューニングしていきます。性能が低下し始めたら、増やすのをやめるか、低い値に戻します。

考慮すべき要素は、CPU の個数、利用可能なメモリー量、HP-UX カーネルの nfile nproc の設定値、そのノードで実行される他のパッケージの個数と特性です。

vgchange_cmd

vg エントリー (「vg」を参照) で指定される各 HP-UX Logical Volume Manager (LVM) ボリュームグループのアクティブ化方法を指定します。VGCHANGE の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。「従来のパッケージの構成」を参照してください。

デフォルトは、vgchange -a e です。

構成ファイルには、この他の形式の vgchange コマンドもいくつか含まれています。これらのコマンドの 1 つのコメントを外してデフォルトのコマンドをコメントアウトするか、デフォルトを使うかのいずれかを選択します。詳細は、構成ファイルの説明、「LVM のプランニング」、および「LVM と VxVM による記憶領域インフラストラクチャとファイルシステムの作成」を参照してください。

重要: マルチノードパッケージとシステムマルチノードパッケージ用のボリュームグループは、共有モードでアクティブ化する必要があります。そのためには、アドイン製品 Serviceguard Extension for Real Application Cluster (SGeRAC) をインストールした場合にだけ使うことができる vgchange -a s を使用します。(詳細は、http://docs.hp.com/ja -> [ハイ アベイラビリティ] -> [Serviceguard Extension for Real Application Cluster (ServiceGuard OPS Edition)] にある『 Serviceguard Extension for RAC ユーザーガイド』の最新版を参照してください。) 共有 LVM ボリュームグループにファイルシステムを含めてはなりません。

(LVM についての詳細は、ご使用中の HP-UX のバージョンに応じて、http://docs.hp.com/ja の [HP-UX 11i v3 Operating Environments] -> [システム管理] にある『 HP-UX システム管理者ガイド: 論理ボリュームの管理』、または [HP-UX 11i v2 Operating Environments] -> [システム管理] にある『 HP-UX システム/ワークグループの管理』を参照してください。)

注記: パッケージでは、LVM ボリュームグループ、VxVM ボリュームグループ、CVM ボリュームグループ、あるいはこれらの組み合わせを使用することができます。
cvm_activation_cmd

Veritas Cluster Volume Manager (CVM) ディスクグループのアクティブ化方法を指定します。デフォルトは、次のとおりです。

vxdg -g \${DiskGroup} set activation=readonly

構成ファイルには、この他の形式の vxdg コマンドもいくつか含まれています。これらのコマンドの 1 つのコメントを外してデフォルトのコマンドをコメントアウトするか、デフォルトを使うかのいずれかを選択します。詳細は、構成ファイルの説明、「CVM と VxVM のプランニング」、および「Veritas Cluster Volume Manager (CVM) による記憶領域インフラストラクチャとファイルシステムの作成」を参照してください。

vxvol_cmd

ミラー化された VxVM ボリュームの復旧方法を指定します。VXVOL の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。「従来のパッケージの構成」を参照してください。

パッケージの起動時に復旧が必要なことがわかると、デフォルトでは、復旧が終わるまでスクリプトは中断されます。この動作を変更するには、構成ファイル内の次の行をコメントアウトします。

vxvol_cmd "vxvol -g \${DiskGroup} startall"

そして、次の行のコメントを外します。

vxvol_cmd "vxvol -g \${DiskGroup} -o bg startall"

これにより、ミラーの再同期化中でも、パッケージの起動が続行されます。

vg

ファイルシステムをマウントする必要がある LVM ボリュームグループを指定します (1 行に 1 つの vg を指定します)。対応する「vgchange_cmd」には、ボリュームグループのアクティブ化方法を指定します。パッケージスクリプトは、 fs_ パラメータ (「fs_name」を参照) に基づいて、必要なファイルシステムコマンドを生成します。

cvm_dg

このパッケージで使われる CVM ディスクグループを指定します (1 行に 1 つの cvm_dg を指定します)。CVM ディスクグループには、ファイルシステムをマウントする必要があるかどうかを指定する必要があります。対応する「cvm_activation_cmd」には、ディスクグループのアクティブ化方法を指定します。

vxvm_dg

ファイルシステムをマウントする必要がある VxVM ディスクグループを指定します (1 行に 1 つの vxvm_dg を指定します)。詳細は、パッケージ構成ファイルのコメントと「LVM と VxVM による記憶領域インフラストラクチャとファイルシステムの作成」を参照してください。

deactivation_retry_count

パッケージのシャットダウンスクリプトで、障害と見なす前に、ボリュームグループ (LVM) またはディスクグループ (VxVM、CVM) の非アクティブ化を試みる回数を指定します。

有効な値は、0 以上の整数です。デフォルトは、0 です。

kill_processes_accessing_raw_devices

パッケージのシャットダウン時に raw デバイスを使っているプロセス (たとえば、データベースアプリケーション) を抹消するかどうかを指定します。デフォルトは、no です。詳細は、パッケージ構成ファイルのコメントを参照してください。

concurrent_fsck_operations

パッケージの起動時にマウントされるファイルシステムで許される fsck の同時実行数です。

有効な値は任意の正の数です。デフォルトは、1 です。

パッケージで多数のファイルシステムに対して fsck を実行する必要がある場合には、テスト段階でこのパラメータを慎重にチューニングすることによって、性能を改善できます (値を少しずつ増やし、増やすたびに性能を監視します)。

concurrent_mount_and_umount_operations

パッケージの起動/停止時に許す mount/umount の同時実行数です。

有効な値は任意の正の数です。デフォルトは、1 です。

パッケージで多数のファイルシステムに対して mount/umount を実行する必要がある場合には、テスト段階でこのパラメータを慎重にチューニングすることによって、性能を改善できます (値を少しずつ増やし、増やすたびに性能を監視します)。

fs_mount_retry_count

各ファイルシステムについての、mount のリトライ回数です。

有効な値は、0 以上の任意の数です。デフォルトは、0 です。

パッケージの起動時にマウントポイントがビジーで、fs_mount_retry_count に 0 が設定されている場合には、パッケージの起動は失敗します。

マウントポイントがビジーで、fs_mount_retry_count に 0 より大きな値が設定されている場合は、起動スクリプトはマウントポイントがビジーになる原因となっているユーザープロセスの抹消 (fuser -ku) を試みて、その後ファイルシステムのマウントを再度試みます。起動スクリプトは、この操作を fs_mount_retry_count で指定されている回数だけ試みます。

fs_mount_retry_count で指定されている回数だけマウント操作を試みても失敗する場合には、パッケージの起動は失敗となります。

このパラメータは、従来のパッケージではパッケージ制御スクリプトにあります。「従来のパッケージの構成」を参照してください。

fs_umount_retry_count

各ファイルシステムについての、umount のリトライ回数です。FS_UMOUNT_COUNT の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。「従来のパッケージの構成」を参照してください。

有効な値は、任意の正の数です。デフォルトは、1 です。「fs_mount_retry_count」と同様に動作します。

fs_name

このパラメータは、fs_directoryfs_typefs_mount_optfs_umount_optfs_fsck_opt と共に使われて、パッケージによってマウントされるファイルシステムを指定します。LV の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。

fs_name には、論理ボリュームのブロック型デバイスファイルを指定する必要があります。

ファイルシステムはこのファイルで指定された順番でマウントされ、逆の順番でマウント解除されます。詳細と例については、構成ファイルの FILESYSTEMS セクションのコメントを参照してください。

また、「論理ボリュームとファイルシステムのプランニング」と、 mount (1m) のマンページも参照してください。

注記: fs_name エントリーで指定した各論理ボリュームのボリュームグループは、このファイルで定義する必要があります (vg を使います。「vg」を参照)。
fs_directory

fs_name で指定したファイルシステムのルートです。FS の代わりとなるパラメータです。このパラメータは、従来のパッケージではパッケージ制御スクリプトで引き続きサポートされています。「従来のパッケージの構成」を参照してください。詳細は、 mount (1m) のマンページを参照してください。

fs_type

fs_name で指定したファイルシステムのタイプです。このパラメータは、従来のパッケージではパッケージ制御スクリプトにあります。

詳細は、mount (1m)fstyp (1m) のマンページを参照してください。

fs_mount_opt

fs_name で指定したファイルシステムの mount オプションです。このパラメータは従来のパッケージではパッケージ制御スクリプトにあります。

詳細は、mount (1m) のマンページを参照してください。

fs_umount_opt

fs_name で指定したファイルシステムの umount オプションです。このパラメータは、従来のパッケージではパッケージ制御スクリプトにあります。

パッケージで多数のファイルシステムを使っている場合には、umount-s オプションを指定すると、起動の性能が向上します。詳細は、mount (1m) のマンページを参照してください。

fs_fsck_opt

fs_name で指定したファイルシステムの fsck オプションです。パッケージで多数のファイルシステムを使っている場合には、fsck-s (安全性能モード) オプションを指定すると、起動の性能が向上します。このパラメータは、従来のパッケージではパッケージ制御スクリプトにあります。

詳細は、fsck (1m) のマンページを参照してください。

pev_

cmgetpkgenv (1m) を使って、external_pre_scriptexternal_script、あるいはその両方に渡すことができるパッケージ環境変数を指定します。モジュラーパッケージ用の新規パラメータです。

変数名は、pev_<variable_name> の形式であり、英数字とアンダースコアしか使用できません。文字列pev (小文字でも大文字でも可) の後に、アンダースコア (_) を続ける必要があります。

変数名と値には、最大で MAXPATHLEN 文字 (HP-UX システムでは 1024) の文字列を指定できます。

複数の変数を定義できます。詳細は、「外部スクリプトについて」と、構成ファイルのコメントを参照してください。

external_pre_script

パッケージの起動時にボリュームグループとディスクグループをアクティブ化する前と、パッケージの停止時にそれらを非アクティブ化した後に (すなわち、実質的には、パッケージ起動時の最初のステップとパッケージ停止時の最後のステップ)、実行される外部スクリプトの絶対パス名です。モジュラーパッケージ用の新規パラメータです。

複数の external_pre_script を指定した場合には、パッケージの起動時に、スクリプトはこのファイルに記述されている順番に実行されます。パッケージの停止時には、その逆の順番に実行されます。

詳細と例については、「外部スクリプトについて」と、構成ファイル内のコメントを参照してください。

external_script

外部スクリプトの絶対パス名です。このスクリプトは、パッケージの主要な機能を構成するアプリケーションを起動/停止する手段として使われます。モジュラーパッケージ用の新規パラメータです。

このスクリプトは、パッケージの起動時に、ボリュームグループとファイルシステムをアクティブ化して IP アドレスを割り当てた後、サービスを起動する前に実行されます。また、パッケージの停止時には、サービスを停止した後、IP アドレスの削除やボリュームグループとファイルシステムの非アクティブ化を行う前に実行されます。

複数の external_script を指定した場合には、パッケージの起動時に、スクリプトはこのファイルに記述されている順番に実行されます。パッケージの停止時には、その逆の順番に実行されます。

詳細と例については、「外部スクリプトについて」と、構成ファイル内のコメントを参照してください。

user_name

このパッケージを管理する権限を持ったユーザーの名前を指定します。user_host user_role も参照してください。これらの 3 つのパラメータで、このパッケージのアクセス制御ポリシーが定義されます (「アクセスロール」を参照)。これらのパラメータは、 user_nameuser_hostuser_role の順番で定義する必要があります。

注記: 特定のパッケージについて、パッケージ構成ファイル内で設定できるアクセスロールは、package_admin だけです。クラスタ構成ファイルでは別のロールも設定できます。

詳細と例については、「構成済みクラスタノードに対するアクセス制御の設定」を参照してください。

user_name の有効な値は、any_user、または user_host/etc/passwd に登録されているログイン名のうち最大で 8 つのログイン名です。

注記: any_user のスペルは正確に記述してください。少しでも違っていると、Serviceguard はユーザー名と解釈します。
user_host

user_name で指定したユーザーがパッケージ管理コマンドを実行するシステムです。

有効な値は、any_serviceguard_nodecluster_member_node、または特定のクラスタノードです。特定のノードを指定する場合には、公式のホスト名 (完全修飾ホスト名の hostname 部分のみ) を指定する必要があります。user_name のキーワードのスペルは正確に記述してください。

user_role

package_admin を指定し、ユーザーが cmrunpkg コマンド、cmhaltpkg コマンド、cmmodpkg コマンド (および Serviceguard Manager の同等の機能) とクラスタのmonitor ロールにアクセスできるようにする必要があります。詳細は、「アクセスロール」を参照してください。

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 1995-2007 Hewlett-Packard Development Company, L.P.