ページの先頭行へ戻る
PRIMECLUSTER 活用ガイド<コマンドリファレンス編>
FUJITSU Software

第7章 RMS

コマンド

機能

Solaris

Linux

備考

clchkoffline(1M)

RMS オブジェクトの状態をチェックする

4.1A20 以降

hvassert(1M)

RMS のリソース状態を診断する

hvcm(1M)

BM(ベースモニタ)を起動する

hvconfig(1M)

RMS 構成定義ファイルを表示または保存する

hvdisp(1M)

RMS のリソース情報を表示する

hvdispall(1M)

RMSの全ノードのリソース情報を表示する

4.3A40 以降

hvdump(1M)

RMS に関するデバッグ情報を収集する

4.2A30以降”-w”オプション追加

hvenv.local(4)

RMS ローカル環境変数ファイル

hvlogclean(1M)

RMS ログファイルを削除する

hvsetenv(1M)

RMS rc スクリプトで起動するかどうかの指定、または AutoStartUp 属性の制御を行う

4.1A30 以降

hvshut(1M)

RMS を停止する

hvswitch(1M)

RMS ユーザアプリケーションまたはリソースの制御を他のホストに切替える

hvutil(1M)

RMS リソースの可用性を操作する

clchkoffline(1M)

RMS オブジェクトの状態をチェックする

◆形式

/etc/opt/FJSVcluster/bin/clchkoffline [ -y | -n ] resource

◆機能説明

本コマンドは、RMS オブジェクトの Offline 処理や Online 処理が正常に完了しているかどうかをチェックします。

例えば、Cmdline リソースの StopCommands に登録したスクリプトから、-n オプションを指定した本コマンドを実行します。その後、StartCommands に登録したスクリプトから、オプションを省略した本コマンドを実行することで、前回の Offline 処理が正常に完了したかを確認できます。

-y または、-n オプションを指定した場合、resource で指定された RMS オブジェクトが本コマンドを実行したノードで Offline、または Online 状態であると記録します。

-y、-n オプションを省略した場合、resource で指定された RMS オブジェクトに記録された、本コマンドを実行したノードでの Offline、またはOnline状態に対応する復帰値を返します。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-y

resource に指定された RMS オブジェクトが、Online 状態であることを記録します。

-n

resource に指定された RMS オブジェクトが、Offline 状態であることを記録します。

resource

対象とする RMS オブジェクト名を指定します。

◆終了ステータス

0:

-n、-y オプションが指定された場合は、正常終了を示します。
-n、-y オプションが省略された場合は、resource に指定された RMS オブジェクトが Offline 状態であることを示します。

1:

-n、-y オプションが指定された場合は、異常終了を示します。
-n、-y オプションが省略された場合は、resource に指定された RMS オブジェクトがOnline 状態であることを示します。

◆注意事項

  • 本コマンドは、リソースの Online 処理や Offline 処理が実行されるスクリプトやコマンドから使用してください。

  • RMS オブジェクトの状態遷移とは連動していないため、本コマンドの復帰値は実際の RMS オブジェクトの状態と異なることがあります。

hvassert(1M)

RMS のリソース状態を診断する

◆形式

hvassert [-h SysNode] [-q] -s resource_name resource_state

hvassert [-h SysNode] [-q] -w resource_name resource_state seconds

hvassert [-h SysNode] [-q] -d resource_name resource_StateDetails [seconds]

◆機能説明

本コマンドは、RMS リソースが指定されたリソース状態かどうかの診断を行います。スクリプトにおいて、リソースが特定の状態である必要がある場合、本コマンドで診断することができます。

◆オプション

-h SysNode

指定した SysNode 上で診断を実施します。本オプションを指定しない場合は、診断はローカルシステムノードで実行されます。本コマンドは、SysNode にログインしてテストを実行するのと同じです。

-q

本コマンドは、実行中にメッセージを出力することはありません。終了ステータスにより、正常に終了したか異常が発生したかがわかります。

-s resource_name resource_state

resource_name で指定したリソースが、resource_state で指定した状態であるかを診断します。

-w resource_name resource_state seconds

resource_name で指定したリソースが、resource_state で指定した状態となるまで、最大 seconds で指定した秒数待ちます。

-d resource_name resource_StateDetails [seconds]

resource_name で指定したリソースが、resource_StateDetails で指定した状態となるまで、最大 seconds で指定した秒数待ちます。秒数の引数は省略できます。秒数を省略した場合、本コマンドは直ちに復帰します。

注意

  • StateDetails は、単一の引数でなければなりません。空白を含む場合(例えば "Online intended")は、引用符で囲む必要があります。

  • hvassert -w および hvassert -d は、リソース状態の診断結果が true となるか、指定されたタイムアウト時間が経過するまで、1 秒ごとに RMS をポーリングします。ポーリングから次のポーリングまでの 1 秒間のうちに状態が遷移した場合、hvassert はその変化を見落としてしまう可能性があります。

  • resource_name で指定したリソースが Inconsistent 状態の場合は、resource_state に Inconsistent または 実際の状態(※)のどちらを指定した場合でも、診断結果が true となります。
    (※) リソースの状態に矛盾がなく一貫性がある場合に期待される状態。通常、Inconsistent 状態に遷移する直前の状態。

  • 保守モード終了直前は、userApplication が、Wait 状態から Online 状態への状態遷移の途中であるため、Wait 状態であるかどうかを診断した場合、以下のエラーメッセージが出力されることがあります。

    ERROR: Actual resource state is - Wait

◆終了ステータス

0 :診断結果が true であることを示します。

0以外:診断結果が true でない、またはなんらかの原因でコマンドが異常終了したことを示します。

◆使用例

次の例では、リソース RESOURCE1がOnline状態であることを診断します。

hvassert -s RESOURCE1 Online

◆関連項目

hvdisp(1M), hvdispall(1M)

hvcm(1M)

BM(ベースモニタ)を起動する

◆形式

hvcm {-a | -s SysNode } 形式1

hvcm -c config_file {-a | -s SysNode } [-h time] [-l level] 形式2

hvcm -V 形式3

◆機能説明

BM(ベースモニタ)は、すべての RMS リソースの設定およびアクセスを制御します。リソースに障害が発生すると、BM は障害を分析し、構成定義ファイルに定義されているリソースの設定に従って適切な措置をとります。本コマンドは、すべての監視リソースに対する構成モニタとディテクタを起動します。通常は、本コマンドにオプションを指定する必要はありません。

hvshutコマンド実行後に本コマンドを実行する場合には、hvshutコマンドで指定したノードのRMSが完全に停止してから実行してください。

本コマンドは、システム管理者権限で実行してください。

注意

  • PRIMECLUSTER 4.3A10以降(Solaris版)では、PRIMECLUSTER のサービスは SMF により管理されるため、RMS の SMF サービス(svc:/milestone/smawrrms)の状態が online または degraded の場合のみ、そのノードの BM は起動できます。

    RMS の SMF サービスの状態が online または degraded でない場合は、その原因を取り除いた後、サービスの状態が online または degraded になったことを確認してください。

  • PRIMECLUSTER 4.3A40以降(Linux版)では、PRIMECLUSTER のサービスは systemd により管理されるため、RMS の systemd サービス(smawrrms.service)の状態が active の場合のみ、そのノードの BM は起動できます。

    RMS の systemd サービスの状態が active でない場合は、その原因を取り除いた後、systemctl コマンドによりサービスを起動して、サービスの状態が active になったことを確認してください。

◆オプション

形式1

形式 1 では、デフォルトの起動ファイル "CONFIG.rms" で指定された構成とオプションで RMS を起動します。

RMS 環境変数 RELIANT_PATH で指定されたパスのサブディレクトリ "etc" から、CONFIG.rms を検索します。RELIANT_PATH が指定されていない場合は、/opt/SMAW/SMAWRrms/etc で CONFIG.rms を検索します。

注意

CONFIG.rms の中の RMS 起動コマンドは、形式 2 で指定する必要があります。

-s SysNode

ローカルノードではなく、-s オプションの引数として指定されたノードで RMS を起動します。

注意

構成は、ローカルの CONFIG.rms ファイルの指定に従って起動されます。リモートノードのファイルは無視されます。

-a

クラスタ内のすべてのノードで RMS を起動します。
本オプションは全ノードが起動されてから、任意の1ノードで実行してください。構成しているすべてのノードが起動していない場合、起動しているノードのみRMSが起動されます。

注意

構成は、ローカルの CONFIG.rms ファイルの指定に従って、すべてのノードで起動されます。リモートノードのファイルは無視されます。

形式2

形式 2 は、CONFIG.rms で指定された構成以外の構成定義ファイルで RMS を起動する際、または、CONFIG.rms で指定されたオプション以外のコマンドラインオプションでRMS を起動する際に使用します。CONFIG.rms の中のデフォルトの起動コマンドを指定する場合にも、この形式を使用します。形式 2 を使用すると、CONFIG.rms の -c 以外のオプションはすべて無視されます。CONFIG.rms の -c オプションで指定された引数は、整合性チェックのために使用されます(以下を参照)。

-c config_file

BM(ベースモニタ)が参照する構成定義ファイルを指定します。絶対パスが指定された場合は、ファイル名のみが使用されます。相対パスによるファイル名が指定された場合には、環境変数 RELIANT_STARTUP_PATH で指定されたパスを検索し、最初に見つかった config_file を使用します。
CONFIG.rms ファイルが存在する場合は、コマンドラインで指定された構成と CONFIG.rms の構成を比較します。構成が異なれば、ユーザに確認を求めるメッセージを表示して、コマンドを終了します。

-s SysNode

ローカルノードではなく、-s オプションの引数として指定されたノードで RMS を起動します。

-a

クラスタ内のすべてのノードで RMS を起動します。
本オプションは全ノードが起動されてから、任意の1ノードで実行してください。構成しているすべてのノードが起動していない場合、起動しているノードのみRMSが起動されます。

-h time

ハートビートを受信できなかった場合に処理を待つ時間を秒数で指定します。省略した場合は、以下の値となります。

PRIMECLUSTER 4.1A40 以前:  45 (秒)
PRIMECLUSTER 4.2A00 以降: 600 (秒)
-l level

level のログメッセージを出力します。level は数字のリストまたは範囲です。リスト中の個々のレベルは、カンマまたは空白で区切ります(リスト中に空白を使用する場合は、引数全体を引用符で囲む必要があります)。レベルの範囲は n1-n2 と記述します。これで n1 から n2 までのすべてのレベルが含まれることになります。-n2 という範囲指定は 1-n2 と同じです。n1- と記述すると、n1 以上のレベルすべてを指定することになります。n1 の値は 1 以上である必要があります。

注意

複数のログレベルを指定して BM(ベースモニタ)を起動すると、システム性能が低下する可能性があります。有効なログレベルは以下のとおりです。

    0   すべてのログレベルをオンにします
    1   未使用
    2   ディテクタ履歴をオンにします
    3   未使用
    4   mskx 履歴(BM のスタック履歴)をオンにします
    5   エラーメッセージまたは注意メッセージ
    6   ハートビートおよび通信のレベル
    7   BM レベル
    8   ディテクタエラー
    9   管理コマンドメッセージ
   10   基本タイプレベル
   11   未使用
   12   未使用
   13   トークンレベル
   14   ディテクタメッセージ
   15   ローカルキューレベル
   16   ローカルキューレベル
   17   スクリプトレベル
   18   userApplication コントラクトレベル
   19   一時的なデバッグ履歴
   20   SysNode 履歴
   21   メッセージレベル
   22   bm トレースログ
   23   未使用

形式3

形式 3 は、RMS のバージョンを調べるために使用します。本オプションで RMS を起動することはできません。

-V

RMS のバージョンを出力します。

◆使用例

次のコマンドは、BM(ベースモニタ)を sample1 構成定義ファイルで起動します。

hvcm -c sample1

次のコマンドは、ログレベル 1、2、3、および 4 を有効にして、sample1 構成定義ファイルで BM(ベースモニタ)を起動します。

hvcm -l 1-4 -c sample1

次のコマンドは、CONFIG.rms で指定されたデフォルトの構成とデフォルトのオプションで、すべてのクラスタノード上で BM(ベースモニタ)を起動します。

hvcm -a

◆終了ステータス

0 :正常終了

0 以外:異常終了

関連項目

hvassert(1M), hvdisp(1M), hvdispall(1M), hvshut(1M), hvswitch(1M), hvutil(1M)

hvconfig(1M)

RMS 構成定義ファイルを表示または保存する

◆形式

hvconfig -l | -o config_file

◆機能説明

本コマンドには、現在の RMS 構成を表示する、または現在の RMS 構成を出力ファイルに保存する、という 2つの機能があります。本コマンドで出力される内容は RMS 構成定義ファイルとほぼ同じですが、元のファイルに記述されているコメントは出力されません。また、リソース一覧の出力順序は構成定義ファイルと異なる場合があります。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-l

現在の RMS 構成定義を表示します。

-o

現在の RMS 構成定義を config_file に保存します。

◆使用例

次のコマンドは、現在の RMS 構成を newconfig.us というファイルに保存します。

hvconfig -o newconfig.us

次のコマンドは、現在の RMS 構成を表示します。

hvconfig -l

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆関連項目

hvcm(1M), hvdisp(1M), hvdispall(1M)

"PRIMECLUSTER RMS 導入運用手引書" を参照してください。

hvdisp(1M)

RMS のリソース情報を表示する

◆形式

hvdisp [-o out_file] {-h | -l | -n| -z resource_name} 形式1

hvdisp [-o out_file] {resource_name | ENV | ENVL} 形式2

hvdisp [-o out_file] [-c] [-u] [-i]

{-a | -T resource_type | -S resource_name} 形式3

hvdisp [-o out_file] [-c] [-u] [-i] {-c | -u | -i} 形式4

◆機能説明

本コマンドは、RMS リソースの現在の構成に関する情報を表示します。本コマンドは、システム管理者権限以外のユーザでも実行することができます。

◆オプション

-a

構成の中の各リソースに対して、resource_nameresource_type、および HostName 属性を表示し、ローカルリソースに対しては、現在のリソース状態を表示します。一部のリソース状態に対しては、StateDetails 情報も表示されます(以下を参照)。

-c

すべての情報をコンパクトな形式で表示します。-a、-S、または -T オプションを指定せずに呼び出されると(形式 4)、すべてのリソースをコンパクトな形式で表示します。

-h

hvcm を起動したときのコマンドラインと、現在の実行時オプションを表示します。

-i

"NoDisplay" 属性が付加されたリソースオブジェクトも表示します。-a、-S、または -T オプションを指定せずに呼び出されると(形式 4)、すべてのリソースを表示します。

-l

-a オプションと同じ情報に加えて、各リソースの解析スタックを表示します。

-n

hvcm で使用する構成定義ファイルのフルパス名を表示します。

-o out_file

out_file というファイルに出力を保存します。

-u

状態に変化があれば、4 秒ごとに状態を更新します。-a、-S、または -T オプションを指定せずに呼び出されると(形式 4)、すべてのリソースを表示します。コマンドは、Ctrl-C が入力されるか、RMS が停止するまで続行します。

-S resource_name

resource_name の子孫であるリソースノードに対してのみ、-a オプションと同じ情報を表示します。

-z resource_name

resource_name のリソース属性を、可能な値とともに表示します。

-T resource_type

タイプが resource_type であるノードに対してのみ、-a オプションと同じ情報を表示します。有効な resource_type は、SysNode、userApplication、gResource、controller、andOp、orOp、env、および envL です。

resource_name

resource_name の現在の状態と定義を表示します。その子と親を表示します。

ENV

ローカルノードで設定されている RMS グローバル環境変数を表示します。

注意

これらの変数は、クラスタ内のすべてのノードで同一である必要があります。

ENVL

ローカルノードで設定されている RMS ローカル環境変数を表示します。

注意

これらの変数は、クラスタ内の各ノードで異なる可能性があります。

STATE DETAILS 情報>(4.1A30 以降

オブジェクトがある特定の状態にある場合には、更に StateDetails 情報が表示されます。ディテクタを保持するリソースが Faulted 状態にある場合は、実際の有効なディテクタレポートが表示されます。

Online

Online 通知の受信

Offline

Offline 通知の受信

Faulted

Faulted 通知の受信

Standby

Standby 通知の受信

userApplication が Faulted 状態にある場合は、障害発生後に呼び出されたフォローアップ処理が表示されます。表示される値としては、次のものがあります。

Initial Fault

RMS 起動時に userApplication にすでに障害が発生していた(したがってフォローアップ処理は行われない)

Preserved

PreserveState が設定され、Offline 処理は開始されていない

Offline Success

Offline 処理正常終了

Failed Over

Offline 処理が正常終了し、FailOver を開始
(FailOver が正常終了したわけではありません)

Offline Failed

Offline 処理異常終了("Double Fault" 発生)

Fault Occurred (4.3A40 以降)

過去にそのリソースに故障が発生したことを表します。
故障形跡がクリアされるまで表示し続けます。

userApplication が保守モードにある場合、保守モードに入ったときに有効であった userApplication の状態が表示されます。保守モードを終了するとき、RMS はこの "あるべき状態" を再確立しようと試みます。グラフ中のリソースの実際の状態が、あるべき状態と異なる場合は、更に次の情報が表示されます。表示される値としては、次のものがあります。

Online intended

あるべき状態が Online であることを示します。

Offline intended

あるべき状態が Offline であることを示します。

Standby intended

あるべき状態が Standby であることを示します。

Online !!

あるべき状態は Online であるが、いくつかのリソースが異なる状態にあることを示します。

Standby !!

あるべき状態は Standby であるが、いくつかのリソースが異なる状態にあることを示します。

SysNode が Faulted 状態にある場合、次の値が表示されます。

Killed

SysNode はシャットダウン機構により停止されたことを示します。

Shutdown

SysNode は正常に停止されたことを示します。

SysNode が Offline 状態にある場合、次の値が表示されます。

Joined

SysNode の CF 状態は UP です。

Not Joined

SysNode の CF 状態は DOWN または LEFTCLUSTER です。

◆使用例

次のコマンドは、RESOURCE2 という名前のリソースのタイプと状態を、hvdisp.out というファイルに保存します。

hvdisp RESOURCE2 -o hvdisp.out

RMS 起動コマンドを表示し、更に構成定義ファイルの場所を表示します。

% hvdisp -h hvcm -c r_d_k

% hvdisp -n /opt/SMAW/SMAWRrms/build/r_d_k.us

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆備考

hvdisp -a コマンドの実行結果を全ノード分表示させたい場合、hvdispall コマンドを使用してください。

◆関連項目

hvdispall(1M)

RMSの全ノードのリソース情報を表示する

◆形式

hvdispall

◆機能説明

本コマンドは、全ノードのRMS リソースの現在の構成に関する情報を表示します。

構成の中の各リソースに対して、Resource名、Resource Type、およびHostName属性を表示し、ローカルリソースに対しては、現在のリソース状態を表示します。

一部のリソース状態に対しては、StateDetails情報も表示されます(hvdisp(1M)を参照)。

本コマンドが実行されたノード(ローカルノード)には、Local System、その他のノード(リモートノード)には、Remote System と表示されます。

本コマンドは、システム管理者権限で 実行してください。

◆オプション

なし

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆注意事項

本コマンドを実行するノードでCFが起動していない場合、本コマンドは使用できません。

◆備考

  • システム管理者権限以外のユーザで本コマンドを実行した場合は、以下のメッセージが表示されます。

    "hvdispall: Must be super-user to issue this command"
  • RMS が未起動のノードは、以下のメッセージが表示されます。

    "hvdisp: RMS is not running"
  • OS が未起動のノード、または OS は起動済みで CF が未起動のノードは、以下のメッセージが表示されます。

    "CF is not running on this node."
  • LEFTCLUSTER 状態のノードは、以下のメッセージが表示されます。

    "CF is LEFTCLUSTER on this node."

◆関連項目

hvassert(1M), hvdisp(1M)

hvdump(1M)

RMS に関するデバッグ情報を収集する

◆形式

hvdump {-g | -f outfile | -t waittime| -w workdirectory }

◆機能説明

本コマンドは、ローカルノードの RMS に関するデバッグ情報を取得するために使用します。ローカルノードで BM(ベースモニタ)が稼動している場合は、本コマンドの呼び出しにより BM は次の処理を行います。

  • RMS 環境変数を bmlog に出力します。

  • クラスタを構成する異なるホスト間の Communication Verification Protocol のデバッグ情報を出力します。

  • RMS リソースグラフの各リソースのデバッグ情報を bmlog に出力します。

  • 未処理の wait リストジョブの一覧を bmlog に出力します。

BM が稼動していなければ、上記の情報は本コマンドで収集されません。また、上記の処理に加えて、本コマンドは、BM が稼動しているかどうかに関わらず、次のファイルを収集し、圧縮されたアーカイブを作成します。

  • $RELIANT_LOG_PATH 配下の関連するログファイル

  • ディレクトリ $RELIANT_PATH/build/wizard.d

  • $RELIANT_PATH/build 配下の '.us' ファイルすべて

  • $RELIANT_PATH/bin 配下の実行可能スクリプトすべて

  • $RELIANT_PATH/etc の hvipaliases、hvconsoles、および hvgdconfig*

  • /var/tmp/config.us、hvenv.local、hvgdstartup、abortstartlog、および coredumps

  • /etc/hosts、/etc/default/cluster

  • /etc/vfstab*(Linux では /etc/fstab*)、および NFS 関連の各ファイル

  • /etc/networks、/etc/inetd.conf、/etc/cip.cf、/etc/default/cluster.config

  • /var/adm/messages*(Linux では /var/log/messages*)

  • システムに関する情報(ファイル systemlog にダンプされます)

  • 'hvdisp -m' の出力(ファイル hvdisp_m に出力されます)、'hvdisp -s' の出力(ファイル hvdisp_s に出力されます)

  • /var/symapi/log/*、/var/symapi/config/netcnfg、および rms_symapi_db.bin の各ファイル

  • 'symcli -def'、'syminq'、'symgate list'、'symdg list'、'vxdmpadm listctlr all'、'vxdisk list'、'pkgparam VRTSvxvm'、'vxlicense -p'、'powermt display dev=all'、および 'pkgparam EMCpower' の各コマンド出力などの SRDF 関連情報(ファイル symclilog に出力されます)

hvdump が上記のファイルのいずれかを収集できなかった場合は、その原因が圧縮されたアーカイブの中のファイル error_info に出力されます。

'-f' オプションを指定せずに hvdump を呼び出すと、作成される圧縮アーカイブは <cfname of the host>.<timestamp>.debug_information.tar.Z となります。アーカイブは $RELIANT_PATH 配下に作成されます。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-g

CONFIG.rms の内容に対応する構成およびウィザードファイルのみを収集します。CONFIG.rms に誤りがあるか、ファイル自体が存在しない場合は、$RELIANT_PATH/build 配下のすべての '.us' ファイルと、ディレクトリ $RELIANT_PATH/build/wizard.d が収集されます。

-f outfile

デフォルトのかわりに、圧縮アーカイブ outfile.Z を作成します。

-t waittime

hvdump がファイルのアーカイブを作成し圧縮する前に、BM(ベースモニタ)がデバッグ情報を switchlog および bmlog にダンプするのを待つ時間。デフォルトは 5 秒です。

-w workdirectory
[4.2A30 以降 4.3A30 以前]

本コマンドは -f によるアーカイブファイルを作成する前に、workdirectory (デフォルト/tmp) ディレクトリを一時的に使用してファイルの収集を行います。

/tmpの資源が不足している場合は十分な空き容量のあるディレクトリを指定してください。

[4.3A40 以降]

本コマンドは -f によるアーカイブファイルを作成する前に、workdirectory (デフォルト/var/tmp) ディレクトリを一時的に使用してファイルの収集を行います。

/var/tmpの資源が不足している場合は十分な空き容量のあるディレクトリを指定してください。

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆備考

クラスタを構成する一部のノードが停止している状態で本コマンドを実行した場合、本コマンドの実行処理中に以下のメッセージが switchlog、および /var/adm/messages (linux では /var/log/messages) に出力される場合がありますが、対処は不要です。

(BM, 8) Failed sending message <message> to object <object> on host <host>.

(WRP, 11) Message send failed, queue id <queueid>, process <process>, <name>, to host <node>.

◆関連項目

hvcm(1M), ps(1), ipcs(1), cp(1), find(1), tar(1), compress(1)

hvenv.local(4)

RMS ローカル環境変数ファイル

◆機能説明

hvenv.local は、ksh 形式の構文で記述された行からなる RMS ローカル環境変数ファイルです。RMS 内の特定の動作を制御する各種環境変数を設定します。RMS の稼動中にファイルが変更された場合に、その変更を有効にするには、RMS を停止し、再起動する必要があります。

ここでは、すべての関連する環境変数の説明、タイムアウト値、および hvenv.local ファイルの記述例を示します。hvenv.local ファイルは、ディレクトリ /opt/SMAW/SMAWRrms/bin に格納する必要があります。

◆構成

hvenv.local ファイルでは、ハッシュ記号 "#" で始まる行はすべて無視されます。それ以外の各行には、1つの環境変数が設定されています。次の例では、rc スクリプトからの RMS の起動を禁止します。

# do not start RMS from within the rc script
export HV_RCSTART=0

◆備考

クラスタアプリケーションを Online 状態にする前に、構成をテストしておくことが重要です。各種ディテクタ、自動起動、およびコマンドタイムアウト値のテストを行ってください。特定のタイムアウト値を設定または変更する必要がある場合は、その一部は hvenv.local ファイルで行うことができます。

<各種環境変数の形式>

次の環境変数は、hvenv.local ファイルで設定することができます。

HV_AUTOSTARTUP
HV_AUTOSTARTUP_IGNORE
HV_AUTOSTART_WAIT
HV_CHECKSUM_INTERVAL
HV_CM_EXIT_WAIT(4.2A00以降削除)
HV_CONNECT_TIMEOUT
HV_GDSTOP_DETLIST
HV_GMOUNTMAXLOOP
HV_GMOUNTMAXRETRY
HV_LOG_ACTION
HV_LOG_ACTION_THRESHOLD
HV_LOG_WARN_THRESHOLD
HV_LOH_INTERVAL
HV_MAX_HVDISP_FILE_SIZE
HV_MAXPROC
HV_MLOCKALL(4.2A00以降追加)
HV_RCSTART
HV_REALTIME_PRIORITY
HV_SCRIPTS_DEBUG
HV_SYSLOG_USE
HV_USE_ELM(4.2A00以降追加)
HV_USE_GDSTOP
HV_WAIT_CONFIG(4.2A30以降削除)
RELIANT_HOSTNAME
RELIANT_INITSCRIPT
RELIANT_LOG_LIFE
RELIANT_LOG_PATH
RELIANT_SHUT_MIN_WAIT
RELIANT_STARTUP_PATH
SCRIPTS_TIME_OUT

<環境変数の説明>

HV_AUTOSTARTUP は、ローカルノードのすべての userApplication の RMS 起動時の自動起動処理を定義します。AutoStartUp 属性の設定は、この変数が優先されることがあります。 値が '0' ならば、すべての userApplication オブジェクトの自動起動は禁止されます。値が '1' ならば、すべての userApplication オブジェクトが自動起動されます。

デフォルト値:          1
設定値:                0/1

HV_AUTOSTARTUP_IGNORE は、RMS 起動時に無視されるクラスタノードのリストです。デフォルトでは、この環境変数は設定されていません。AutoStartUp 属性が設定され、ユーザアプリケーションで定義されているすべてのクラスタノードが Online であると報告すると、ユーザアプリケーションが自動起動処理を開始します。クラスタノードがこのリストに含まれている場合は、このノードがまだ Online 状態を報告していなくても、自動起動処理が開始されます。1つ以上のクラスタノードを一定期間以上クラスタから切り離す必要があり、かつ、RMS は現在の構成(.us)ファイルを続行して使用しなければならない場合、この環境変数が使用されます。デフォルトの RMS の動作では、特定のアプリケーションで定義されたすべてのクラスタノードが Online 状態を報告した後にはじめて、Online 処理が開始されます。クラスタノードが HV_AUTOSTARTUP_IGNORE リストに存在する場合は、このノードがまだ Online 状態を報告していなくても、自動起動処理が開始されます。このリストですべての利用不可能なクラスタノードを指定すれば、すべてのユーザアプリケーションが起動時に自動的に Online となることが保証されます。リストは、クラスタノードの列が空白、カンマ、コロン、または改行で区切られたものです。

注意

環境変数 HV_AUTOSTARTUP_IGNORE の使用には十分な注意が必要です。必ず有効なクラスタ情報を使用し、最新の状態に保ってください。クラスタノードを RMS クラスタに戻すときは、必ずこの環境変数からそのノードを削除します。削除しない場合は、データが破損したり失われる危険性があります。原因は、RMS は起動処理時にこのリスト中のすべてのノードを無視し、このリストに指定されたノードでアプリケーションがすでに実行されているかどうかを確認しないためです。システム管理者は、このリストを最新の状態に保つ必要があります。

デフォルト値:          -
設定値:               任意の RMS クラスタノードのリスト

HV_AUTOSTART_WAIT は、アプリケーションを Online にする際に、すべてのクラスタノードが Online を報告しなければならない時間を秒数で指定します。この時間が経過してもすべてのクラスタノードが Online でない場合は、どのクラスタノードがまだ Online 状態を報告していないか、また、なぜユーザアプリケーションはまだ Online 処理を開始できないのかを示すメッセージが switchlog ファイルに書き込まれます。警告メッセージのみが switchlog ファイルに出力されます。特定のユーザアプリケーションで定義されたすべてのクラスタノードが Online 状態を報告すると、影響を受けるアプリケーションは直ちに自動的に Online となります。

デフォルト値:          60    (秒)
設定値:                任意の数値

HV_CHECKSUM_INTERVAL は、各 Online のノードが各自のチェックサムとローカルチェックサムが同じであることを確認するのを RMS が待つ時間を秒数で指定します。この時間内にチェックサムが確認されると、ローカルノード上の RMS が通常どおり動作し続けます。一方、リモートノードのチェックサムが確認されない場合、またはチェックサムが異なることが確認された場合は、HV_CHECKSUM_INTERVAL の今回の待機時間中に起動されたローカルモニタはシャットダウンします。また、リモートノードのチェックサムが確認されない場合、またはチェックサムが異なることが確認された場合、HV_CHECKSUM_INTERVAL の今回の待機時間前に起動されていたローカルモニタはそのノードを Offline と認識します。

デフォルト値:          120   (秒)
設定値:                任意の数値

HV_CM_EXIT_WAIT は、RMS 起動後、hvcm コマンドが終了する前に待つ時間を秒数で指定する環境変数です。RMS がこの時間内に正しく起動されないと、hvcm はこの障害を検出し、エラーメッセージを生成して、0 以外の終了ステータスで終了します。
本環境変数は4.2A00以降では使用できません。

デフォルト値:          2     (秒)
設定値:                任意の数値

RMS がスクリプト(rc2.d スクリプトなど)から自動的に起動される場合は、この時間を、デフォルトの 2 秒から 10 または 15 秒ぐらいの値に増加させる必要があります。起動時の問題がすべて認識され、正しく報告されることを保証するためです。

HV_CONNECT_TIMEOUT は、リモートクラスタノードが Offline になったと判断する前に、BM(ベースモニタ)がリモートクラスタノードからのメッセージを待つ秒数の最大値です。通常は、この値のデフォルト設定を変更する必要はありません。ただし、アプリケーションがマシンリソースを多用する場合には、誤った障害報告や、その結果誤ってアプリケーションを切替えたり、稼動中のマシンを停止する事態を防止するために、この設定を調整する必要があります。RMS がマシンまたはアプリケーションの障害に対処するまでの待ち時間を過ぎても、メッセージが受信されない場合に、このような状況が起こり得ます。

注意

環境変数 HV_CONNECT_TIMEOUT の使用には十分な注意が必要です。値を大きくしすぎると、アプリケーションの切替えやリモートクラスタノードの停止が遅れてしまう可能性があります。

デフォルト値:          PRIMECLUSTER 4.2A00以前: 5(秒)
                       PRIMECLUSTER 4.2A30、または4.3A00(RHEL-AS版): 5(秒)
                       PRIMECLUSTER 4.2A30、または4.3A00(RHEL5版): 30(秒)
                       PRIMECLUSTER 4.3A10以降: 30(秒)
設定値:                5以上の任意の数値

HV_GDSTOP_DETLIST は、Gds リソースに関するパラメタです。本パラメタは変更しないでください。

HV_GMOUNTMAXLOOP および HV_GMOUNTMAXRETRY は、Fsystem リソースの監視処理において、I/O 異常により監視処理が復帰しない場合に、I/O の復旧を待ち合わせる復旧処理を繰り返す回数を指定します。

デフォルト値:          HV_GMOUNTMAXLOOP   4 回
                       HV_GMOUNTMAXRETRY  7 回
設定値:                共に 1 以上の任意の数

本パラメタの詳細については、“PRIMECLUSTER 導入運用手引書 (Oracle Solaris)”、“PRIMECLUSTER 導入運用手引書 (Linux)”の“Fsystem リソースの属性”または、“PRIMECLUSTER活用ガイド <クラスタ構築・運用時の留意点>”の“Fsystem リソースの属性”を参照してください。

HV_LOG_ACTION は、ログディスク上の使用済み領域が HV_LOG_ACTION_THRESHOLD で定義されたしきい値以上で、すべてのサブディレクトリがすでに削除されている場合の、hvlogcontrol の動作を定義します。値が "on" ならば、現在のログファイルも削除されます。"off" ならば、ログファイルは削除されませんが、警告メッセージが定期的にコンソールに表示されます。

デフォルト値:          off
設定値:                off/on

HV_LOG_ACTION_THRESHOLD は、hvlogcontrol の動作を定義します。ログディスク上の使用済み領域がこのしきい値以上になると、ログ以下のサブディレクトリはすべて削除されます。

デフォルト値:          98      (パーセント)
設定値:                0 以上 100 以下の任意の数値

HV_LOG_WARN_THRESHOLD は、hvlogcontrol の動作を定義します。ログディスク上の使用済み領域がこのしきい値以上になると、警告メッセージがコンソールに表示されます。

デフォルト値:          95      (パーセント)
設定値:                0 以上 100 以下の任意の数値

HV_LOH_INTERVAL は、最終 Online ノード(LOH)を特定するためにタイムスタンプを比較する際の、最小時間差を秒数で指定します。最終 Online ノード(LOH)とは、userApplication が最後に Online 状態であったノードを意味します。本設定は OnlinePriority 属性が設定されている場合に使用されます。

クラスタノードが異なる 2つの userApplication を比較して、LOH タイムスタンプエントリの差がこの属性で指定する時間よりも小さかった場合、RMS は自動起動せず、優先順位の変更は行われません。この場合はコンソールにメッセージを送信し、オペレータ介入が必要になります。

この値を設定する場合は、そのクラスタ内部での時刻同期精度を考慮に入れる必要があります。クラスタノード間で発生しうる時間差よりも大きい値を指定してください。

デフォルト値:          30      (秒)
設定値:                任意の数値

HV_MAX_HVDISP_FILE_SIZE は、内部の一時ファイル(/usr/opt/reliant/locks/.rms.$$)の最大サイズを指定します。このファイルは、BM(ベースモニタ)から hvdisp コマンドへデータを送信する際に使用されます。サイズはバイト数で指定します。一時ファイルが最大サイズに達したことを検出すると、BM はファイルを閉じ、削除して、現在の hvdisp と同一の新しい hvdisp 要求を発行します。新しい hvdisp は、新しく開かれたファイルを介して BM からデータを受信を開始します。再初期化の際、BM は、現在の構成を hvdisp 要求(-u または -m)に適切なフォーマットでダンプします。一時ファイルは、1つの hvdisp セッション中に何度でも初期化することができます。

デフォルト値:          20 000 000      (バイト)
設定値:                任意の数値  <= 設定されたノードファイルサイズの制限値

HV_MAXPROC は、RMS が一度にフォークできるスクリプトの最大数を定義します。

デフォルト値:         30      (フォークするプロセス数)
設定値:               任意の数値  <= 設定されたノードフォーク数の制限値

HV_MLOCKALL は、BM(ベースモニタ)とBMが割当てたメモリをロックするかどうか定義します。1 に設定するとベースモニタおよび割当てたすべてのメモリは、メモリ内でロックされます。0 (デフォルト) に設定すると、ベースモニタはスワップアウトする場合があります。

本環境変数は4.2A00以降で使用できます。

デフォルト値:          1
設定値:               0/1

HV_RCSTART は、S99RMS rc スクリプトの動作を定義します。HV_RCSTART が 1 に設定され、ファイル /opt/SMAW/SMAWRrms/etc/CONFIG.rms が存在し、有効なエントリを含む場合は、BM(ベースモニタ)がシステムのブート時に起動されます。

デフォルト値:          1
設定値:               0/1

HV_REALTIME_PRIORITY は、BM(ベースモニタ)およびそのディテクタの RT クラス内の優先順位を定義します。デフォルトでは、BM が非リアルタイムフラグ '-R' を指定して起動されない限り、BM とディテクタはリアルタイムプロセスです。HV_REALTIME_PRIORITY のデフォルト値を調整する場合は、高すぎる値、または低すぎる値を設定しないよう注意してください。優先順位を高く設定すると、他の OS のリアルタイムプロセスが、プロセッサのタイムスライスを取得できなくなる可能性があります。低く設定すると、BM がディテクタからの通知に反応できなくなったり、コマンドラインからの要求を実行できなくなったりする可能性があります。BM を非リアルタイムフラグ '-R' を指定して起動すると、HV_REALTIME_PRIRORITY の値は無視されます。

デフォルト値:          50
設定値:               1 以上 99 以下の任意の数値

HV_SCRIPTS_DEBUG は、RMS スクリプトのデバッグの開始を可能とする環境変数です。この変数が設定されている場合、各スクリプトは、実行した OS コマンドなどのデバッグ情報を詳細に記録します。この設定は、PRIMECLUSTER 製品提供のスクリプトにのみ適用されます。また、各スクリプトによって記録される情報の種類は、スクリプトによって異なる可能性があります。

デフォルト値:          未設定
設定値:                任意の値

HV_SYSLOG_USE は、syslog 機能による RMS メッセージのログを開始および停止します。デフォルトでは、すべての RMS ERROR、FATAL ERROR、および NOTICE メッセージがシステムログに記録されます。

デフォルト値:          1(ログ開始)
設定値:                0/1

HV_USE_ELM は、RMS ベースモニタによるハートビート監視モードを定義します。
0 に設定すると、リモートノードとベースモニタの状態は、ネットワークを通じて UDP ハートビートパケットを定期的に送信することにより検出されます。 HV_CONNECT_TIMEOUT で定義した間隔内にリモートノードからのハートビートが受信されなかった場合、 RMS はノードがダウン状態にあると判断します。リカバリタイムアウトの間待って復旧しない場合、ノード停止処理を開始します。 CF が設定されており ELM を無効にすると、リカバリタイムアウトは600秒になります。リモートノードのダウンを効率的に検出するには長い時間であるため、hvcm -h <timeout> -c <config_file> コマンドを使用して、リカバリタイムアウト値を調整してください。
1 (デフォルト)に設定すると、 ELM (Enhanced Lock Manager) と UDP ハートビート方式を組み合わせて使用します。この設定は、CF がインストールされ構成設定が完了している場合にのみ有効です。ELM のロックは、ローカルノードによって取得され、ELM がリモートノードまたはベースモニタのDOWN 状態を通知するまで、ローカルノードにより保存されます。ELM がリモートノードの DOWN状態を通知すると、リモートノードは直ちに停止されます。また、 ELM がリモートノードの状態の変化を通知しない間も RMS は UDP ハートビート方式の監視をしています。リカバリタイムアウトの間 UDP ハートビートが受信できない場合は、リモートノードは停止されます
本環境変数は4.2A00以降で使用できます。

デフォルト値:          1(推奨)
設定値:               0/1

HV_USE_GDSTOP は、Gds リソースに関するパラメタです。本パラメタは変更しないでください。

HV_WAIT_CONFIG は、RMS が hvcm -c で起動された場合に Online ノードから構成定義ファイルを受信するまでRMSが待ち合わせる時間を秒数で指定します。構成定義ファイルが HV_WAIT_CONFIG 秒内に受信されなかった場合は、ローカルモニタは最小構成で処理を継続します。
本環境変数は4.2A30以降では使用できません。

デフォルト値:          120   (秒)
設定値:                任意の数値

RELIANT_HOSTNAME は、RMS クラスタ内のローカルクラスタノードの名前です。この変数は変更しないでください。
この変数のデフォルト値は、CF 内で定義されたローカルノードのノード名(cftool -l の出力の最初のフィールド)の末尾に "RMS" を付加した名前です。RMS が正しく動作するためには、この変数が、すべてのクラスタノードで正しく設定されている必要があります。

注意

この変数にデフォルト値以外の値を設定すると、「RMS 命名規則」に反することになります。それでも RMS は正常に動作しますが、いくつかの便利な機能が使用できなくなります。例えば、命名規則に従った設定をしていれば、すべての RMS コマンドは、CF 名と SysNode 名の両方を有効なノード名とみなします。

デフォルト値:     `cftool -l 2>/dev/null | tail -1 | awk '{print $1}' | grep .  || uname -n`RMS
設定値:            任意の文字列

RELIANT_INITSCRIPT は、起動時に RMS によって実行される初期化スクリプトを指定します。このスクリプトは、他のプロセスが起動する前に実行されます。これはグローバルスクリプトで、RMS 起動時にすべてのクラスタノードで 1 度実行されます。スクリプトが失敗すると、RMS は正常に起動されず、0 以外の終了ステータスで異常終了します。

デフォルト値:          RELIANT_PATH/bin/InitScript
設定値:                任意の実行可能な <path>/<filename>

RELIANT_LOG_LIFE は、RMS ログを保持する日数を指定します。RMS が起動される度に、その前に RMS が起動した時間に基づく名前でディレクトリが作成されます。ディレクトリ名のフォーマットは、年-月-日_時:分:秒です。前に RMS が起動した時間からのすべてのログファイルが、このディレクトリに移動されます。すべての RMS ログファイルはこの方法で保持されます。RELIANT_LOG_PATH 配下のサブディレクトリのうち、更新日時(ctime)が、RELIANT_LOG_LIFE 変数で指定された日数より前のディレクトリはすべて、cron ジョブによって削除されます。

デフォルト値:          7(日)
設定値:               任意の数値

RELIANT_LOG_PATH は、すべてのログファイルを格納するディレクトリを指定します。デフォルトのパスは /var/opt/SMAWRrms/logです。

デフォルト値:          /var/opt/SMAWRrms/log
設定値:                任意のディレクトリ名

RELIANT_PATH は、RMS ディレクトリ階層のルートへのパスです。デフォルトでは、/opt/SMAW/SMAWRrms です。この変数を明示的に変更する必要はありません。

デフォルト値:          /opt/SMAW/SMAWRrms
設定値:                RMS インストールディレクトリ

RELIANT_SHUT_MIN_WAIT は、hvshut コマンドがタイムアウトするまでの時間を秒数で指定する環境変数です。

hvshut コマンドが -l、-s、-a のいずれかのオプションで実行されると、RMS は起動状態のクラスタアプリケーションのオフライン処理を行った後、RMS の停止処理を行います。

そのため、RELIANT_SHUT_MIN_WAIT には、以下を合計した時間を設定してください。

  1. クラスタアプリケーションのオフライン処理が終了するのに必要な最大時間

  2. BM(ベースモニタ) が停止するのに必要な最大時間(30 秒)

参照

RELIANT_SHUT_MIN_WAIT の詳細については、以下のマニュアルの“グローバル環境変数”の“RELIANT_SHUT_MIN_WAIT”を参照してください。

  • PRIMECLUSTER 4.3A30 以降 :“PRIMECLUSTER RMS 導入運用手引書”

  • PRIMECLUSTER 4.3A20 以前 :“PRIMECLUSTER 活用ガイド<クラスタ構築・運用時の留意点>”

RMS環境変数の参照/変更方法については、“PRIMECLUSTER RMS 導入運用手引書”を参照してください。

デフォルト値:          PRIMECLUSTER 4.1A20以前: 150(秒)
                       PRIMECLUSTER 4.1A30以降4.3A00以前: 900(秒)
                       PRIMECLUSTER 4.3A10以降(Solaris版) : MAXINT (秒)
                       PRIMECLUSTER 4.3A10以降4.3A20以前(Linux版) : 900 (秒)
                       PRIMECLUSTER 4.3A30以降(Linux版) : MAXINT (秒)
設定値:                0 - MAXINT

RELIANT_STARTUP_PATH は、起動時に構成定義ファイル(.us ファイル)を検索するディレクトリを指定します。この変数を明示的に変更する必要は決してありません。

デフォルト値:          /opt/SMAW/SMAWRrms/build
設定値:                任意のディレクトリ名

SCRIPTS_TIME_OUT は、RMS で開始したスクリプトが完了するまでのグローバル時間を秒数で指定する環境変数です。スクリプトがこの時間内に終了しない場合は、失敗したとみなされ、RMS は適切な Fault 処理を開始します。この変数に、各アプリケーションに適切な値を設定することが非常に重要です。また、RMS インストール時およびテストフェーズにおいて、十分にテストする必要があります。個々のスクリプトのタイムアウト値は、必要なノードの ScriptTimeout 属性で設定することができます。この値が小さすぎると、RMS はスクリプトが失敗したと誤って判断し、Fault 処理を開始してしまいます。これによりアプリケーションは正常に Offline または Online となることができなくなります。また、この値が極端に大きくても、スクリプトの失敗を認識するまでの RMS の待ち時間が長くなりすぎるため、不適切です。アプリケーションの使用不可能な時間が長くなってしまうからです。

デフォルト値:          300(秒)
設定値:                任意の数値

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆関連項目

hvcm(1M)

hvlogclean(1M)

RMS ログファイルを削除する

◆形式

hvlogclean [-d]

◆機能説明

本コマンドを実行すると、古いログファイルがサブディレクトリに保存されます。サブディレクトリの名前は RMS を最後に起動した時刻です(-d オプションを指定すると、古いログファイルが削除されます)。本コマンドは、RMS の稼動中でも新しいログファイルを作成します。夜間の cron プロセスが、hvlogclean プロセスを実行し、指定された削除時間間隔よりも古いバックアップログファイルをすべて削除します。削除時間間隔は、環境変数 RELIANT_LOG_LIFE を設定することにより、変更できます。

本コマンドは、システム管理者権限で実行してください。

注意

Cmdline リソースに登録した Start スクリプトから常駐プロセスを起動している場合、“PRIMECLUSTER 導入運用手引書 (Oracle Solaris)”、“PRIMECLUSTER 導入運用手引書 (Linux)”の“スクリプトの留意事項について”、または、“PRIMECLUSTER活用ガイド<クラスタ構築・運用時の留意点>”の“スクリプトの留意事項について”に記載の対処が行われているかどうかを確認してください。

対処が行われていない場合、本コマンドでログの削除を行っても、ディスクの空き領域が増加しない場合があります。

◆オプション

-d

古いログファイルを保存するかわりに削除します。

◆使用例

次のコマンドは、すべての RMS ログファイルを /var/opt/SMAWRrms/log/last_cm_start に保存し、新しいログファイルを作成します。

hvlogclean

◆終了ステータス

0 :正常終了

0 以外:異常終了

hvsetenv(1M)

RMS rc スクリプトで起動するかどうかの指定、または AutoStartUp 属性の制御を行う

◆形式

hvsetenv {HV_RCSTART|HV_AUTOSTARTUP} [ 0 | 1 ]

◆機能説明

本コマンドにより、RMS の rc 起動や、ローカルノードのすべての userApplication の自動起動に関する現在の設定の表示、設定の変更が可能です。HV_RCSTART または HV_AUTOSTARTUP のみを引数として使用すると、本コマンドは、それぞれ RMS 環境変数 HV_RCSTART または HV_AUTOSTARTUP の現在の設定を返します。第 2 引数に '0' または '1' を指定すると、その値が RMS 環境変数に設定されます。

本コマンドは、システム管理者権限で実行してください。

◆オプション

HV_RCSTART

RMS 環境変数 HV_RCSTART の現在の設定を返します。

HV_AUTOSTARTUP

環境変数 HV_AUTOSTARTUP の現在の設定を返します。

◆オペランド

0

RMS の rc 起動、または、すべての userApplication の自動起動を無効にします。

1

RMS の rc 起動、または、すべての userApplication の自動起動を有効にします。

◆終了ステータス

0

適切な RMS 環境変数の値を、正常に取得または変更したことを示します。

1

適切な RMS 環境変数の値の変更に、失敗したことを示します。

◆関連項目

hvshut(1M)

RMS を停止する

◆形式

hvshut {-f | -L | -a | -l | -s SysNode | -A}

◆機能説明

本コマンドは、構成内の 1つ以上のノード上で RMS を停止します。ローカルノード上の構成モニタは、どのノードが停止されるかを伝えるメッセージを他の Online ノードに送信します。本コマンドは、RMS のみ停止し、オペレーティングシステムは停止しません。Online のユーザアプリケーションオブジェクトが存在するときに、-f、-L、または -A オプションを使用すると、アプリケーションは稼動し続けますが、RMS によって監視されなくなります。hvshut が正常な停止を待つ時間は、構成のサイズに基づいて計算されます。この時間は、環境変数 RELIANT_SHUT_MIN_WAIT を使用して変更することができます。

参照

RELIANT_SHUT_MIN_WAIT の詳細については、以下のマニュアルの“グローバル環境変数”の“RELIANT_SHUT_MIN_WAIT”を参照してください。

  • PRIMECLUSTER 4.3A30 以降 :“PRIMECLUSTER RMS 導入運用手引書”

  • PRIMECLUSTER 4.3A20 以前 :“PRIMECLUSTER 活用ガイド<クラスタ構築・運用時の留意点>”

RMS環境変数の参照/変更方法については、“PRIMECLUSTER RMS 導入運用手引書”を参照してください。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-f

ローカルノード上の RMS を強制(緊急)停止します。本オプションは、RMS プロセスを停止し、ローカルノード上のクリーンアップ処理を実行します。本コマンドは、RMS によって監視されているアプリケーションの状態については考慮しません。特に、実行中のアプリケーションは Offline 処理を実行しません。Online または Offline 処理を実行中のアプリケーションは、中間状態のままとなる場合があります。
ローカルノードにおける RMS の停止をリモートノードに通知する際、通知に失敗して、リモートノードがローカルノードを停止してしまう可能性があります。

注意

  • -a、-l、-s、または -L オプションにより、クラスタが正常で、かつ強制停止を試みた後にのみ、-f オプションを使用してください。-f オプションは Offline スクリプトを省略するため、リソースの状態を保証するために Offline スクリプトの実行が必要な場合は、手動で起動しなければなりません。

  • hvshut -f により、クラスタの整合性が破壊される可能性があります。特に、ローカルノード上で Online であった userApplication は、hvswitch の強制オプションを使用しない限り、他のノードに切替えることができません。

-L

実行中のアプリケーションを停止させずに、ローカルノード上の RMS を強制停止します。すべての RMS ノードに、ローカルノードで強制停止が実行中であることが通知されます。この処理を開始する前に、確認を求めるメッセージが表示されます。

注意

hvshut -L により、クラスタの整合性が破壊される可能性があります。特に、ローカルノード上で Online であった userApplication は、hvswitch の強制オプションを使用しない限り、他のノードに切替えることができません。

-a

すべてのノード上の RMS を停止します。すべての Online のユーザアプリケーションを Offline にすることを試みます。

注意

ユーザアプリケーションが Faulted または Offline 状態の場合は、その子リソースを Offline にしようと試みます。

-l

ローカルノード上の RMS を停止します。本オプションでは、ノード上の Online のユーザアプリケーションの Offline 処理を実行します。
ユーザアプリケーションの AutoSwitchOver 属性に ShutDown が設定されている場合は、ユーザアプリケーションの切替えも行われます。

注意

hvshut -l は1ノードごとに RMS を停止する場合に使用してください。
すべてのノードの RMS を同時に停止する場合は、-a オプションを使用してください。

-s SysNode

SysNode の RMS を停止します。本オプションでは、ノード上の Online のユーザアプリケーションの Offline 処理を実行します。

-A

実行中のアプリケーションを停止せずに、すべてのノードの RMS を強制停止します。すべての RMS ノードに、すべてのクラスタノードで強制停止が実行中であることが通知されます。この処理を開始する前に、確認を求めるメッセージが表示されます。
WARNING: The -A option of the hvshut command will shut down the RMS software without bringing down any of the applications on all the hosts in the cluster. Do you wish to proceed?(yes = shut down RMS on all hosts/no = leave RMS running).

◆使用例

次のコマンドは、システムノード node1RMS の RMS を停止します。

hvshut -s node1RMS

◆終了ステータス

0 :正常終了

0 以外:異常終了

◆備考

注意

RMS の起動処理中は RMS の停止を行わないでください。RMS の停止を行う場合は、RMS の起動が完了(ユーザアプリケーションの状態遷移が完了)後に行ってください。

◆関連項目

hvcm(1M)

hvswitch(1M)

RMS ユーザアプリケーションまたはリソースの制御を他のホストに切替える

◆形式

hvswitch [-f] userApplication [SysNode] 形式1

hvswitch -p userApplication 形式2

hvswitch [-f] resource SysNode 形式3

◆機能説明

本コマンドは、RMS リソースの制御を、RMS 構成内のノード間で切替えます。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-f

Faulted 状態のリソースや、RMSが起動していないノードが存在する場合でも、強制的に切替えます。この処理を開始する前に、確認を求めるメッセージが表示されます。

注意

-f オプションを使用すると、整合性が失われたりデータが破損する場合があるので、注意が必要です。
-f オプションを使用する際は、PRIMECLUSTER 4.3A30以降の場合、“PRIMECLUSTER導入手引書”の“7.5.1 クラスタアプリケーションの強制切替えに関する注意”、PRIMECLUSTER 4.3A20以前の場合、“PRIMECLUSTER 活用ガイド<クラスタ構築・運用時の留意点>”の“6.1.1 クラスタアプリケーションの強制切替えに関する注意”を確認してから行ってください。

ポイント

PRIMECLUSTER 4.3A10以降(Solaris版)またはPRIMECLUSTER 4.3A30以降(Linux版)では、-fオプション使用時にデータが破損するリスクを低減するため、RMS が起動していないノードを強制停止してからクラスタアプリケーションを強制起動する場合があります。

ノード強制停止が行われた場合、コマンドが復帰するまでには、通常のhvswitchコマンドの処理時間に加え、ノード強制停止の処理時間(処理がタイムアウトするまでの時間はシャットダウン機能で設定されます)がかかります。また、ノード強制停止に失敗した場合、クラスタアプリケーションの起動は行いません。

userApplication

ユーザアプリケーションリソースを指定します。

resource (4.3A40 以降)

gResourceを指定します。

SysNode

切替え先のノードを指定します。

userApplication指定の切替えの場合、userApplicationは指定されたSysNode に切り替えられます。指定されなかった場合は、userApplicationは優先順位の最も高いシステムノードに切り替えられます。

gResource 指定の切替えの場合、SysNode にはコマンドを実行するノードのSysNode名を指定する必要があります。

-p userApplication

本オプションは使用しないでください。

◆使用例

次のコマンドは、ユーザアプリケーション App1 をシステムノード node1RMS に切替えます。

hvswitch App1 node1RMS

◆終了ステータス

0 :正常終了

0 以外:異常終了

注意

本コマンドは、BM (ベースモニタ)への指示の通知が成功した時点でコマンドの終了ステータスが 0 になります。 BMでの処理結果が成功したかどうかは、 hvdisp(1M) コマンド、 hvassert(1M) コマンド、または hvdispall(1M) コマンドにより、 userApplication および gResource の状態を確認して判断してください。

◆備考

注意

userApplication の Offline 状態への遷移が完了した直後に、ノード間で userApplication の状態を同期する処理が開始されます。同期処理が完了する前に hvswitch コマンドを実行すると、コマンドの切替え要求が取り消されることがあります。この場合は、再度 hvswitch コマンドを実行することで切替え処理を開始できます。

◆関連項目

hvassert(1M), hvcm(1M), hvdisp(1M), hvdispall(1M)

hvutil(1M)

RMS リソースの可用性を操作する

◆形式

hvutil {-a | -d | -f [ -q ] | -c | -s } userApplication 形式 1

hvutil {-t n | -N string } resource 形式 2

hvutil {-o | -u} SysNode 形式 3

hvutil -l { level | display } 形式 4

hvutil -L { level | display } resource 形式 5

hvutil {-w | -W} 形式 6

hvutil {-i { userApplication | all } | -r} 形式 7

hvutil {-m { on | off | forceoff } userApplication |

-M { on | off | forceoff } } 形式 8

hvutil {-f | -c } resource 形式 9

◆機能説明

本コマンドは、RMS に対する汎用のインタフェースです。
次の管理操作を実行します。

  • リソースを起動または停止する

  • リソースを Offline にする

  • 障害が発生したリソースまたは Wait 状態の SysNode をクリアする

  • ディテクタ監視間隔を設定する

形式 6 で呼び出した場合は、停止要求が競合する場合に備えて、ノードの現在の重みを出力します。
形式 7 で呼び出した場合は、RMS の継続状態のデバイスの最終 Online ノード(LOH)のエントリを、無効にするか、または更新します。
形式 8 で呼び出した場合は、userApplication に保守モードを設定、または解除します。

本コマンドは、システム管理者権限で実行してください。

◆オプション

-a userApplication

-d オプションで Deact 状態にした userApplication の Deact 状態を解除します。-d オプションで Deact 状態にした userApplication に対してのみ使用してください。
-a オプションは、userApplication を Online にはしません。

-d userApplication

userApplication を Deact 状態にします。-d オプションは、userApplication を構成から削除せずに停止させるので、他のノードが userApplication を制御するのを防ぐ必要がある状況に適しています。
userApplication が Online である場合は、-d オプションは、userApplication を Deact 状態にする前に、まず userApplication とそのすべての子を Offline にします。-a オプションで起動されるまで、クラスタアプリケーションを切替えることはできません。

-s userApplication

Offline の userApplication を Standby 状態にします。

注意

-s オプションを使用した後、userApplication を Offline に戻すには、hvutil -f コマンドを使用します。

-f {userApplication | resource } (resource 指定は 4.3A40 以降)

切替えを開始したり RMS を停止したりすることなく、Online の userApplication / gResource 、または Standby の userApplication を Offline にします。

userApplication/resource は、Offline にする userApplication/gResource の名前です。

注意

-f オプションを使用した後、userApplication を Online に戻すには、hvswitch コマンドを使用します。

-q (4.2A00 以降)

本オプションは未サポートです。

-c userApplication

すべての障害状態をクリアするために、指定された userApplication のすべての子の Online または Offline 処理を実行します。userApplication が Offline または Faulted である場合は、Offline 処理が実行されます。userApplication が Online である場合は、Online 処理が実行されます。

-t n resource

指定されたリソースのディテクタ時間を n 秒に設定します。resource はディテクタが監視するリソースの名前です。新しい時間は、現在のサイクル終了後に有効となります。

-N string resource

本オプションは、ディテクタ開発者のみ使用してください。
指定されたリソースのディテクタに任意の文字列を送信します。文字列は 128 バイト以下にしてください。ディテクタで GdNotify() 関数が定義されていない場合、文字列は無視されます。resource はディテクタが監視するリソースの名前です。GdNotify() 関数が定義されている場合は、この関数の戻り値が出力されます。

-o SysNode

シャットダウン機構でクラスタノード(SysNode)を強制停止できなかった場合に、すべてのクラスタノード上の指定された SysNode の Wait 状態をクリアします。SysNode は Wait 状態がクリアされた後、Online 状態に戻ります。

注意

SysNode の Wait 状態を安全にクリアするためには、hvutil -o コマンドではなく hvutil -u コマンドを使用してください (-u オプションの詳細については、後述の -u SysNode を参照してください)。

本オプションを使用する場合には、コマンド実行前に以下を確認してください。

  • 強制停止できなかったクラスタノードの OS および RMS が起動している

  • CF の状態が UP である

-u SysNode

シャットダウン機構でクラスタノード(SysNode)を強制停止できなかった場合に、すべてのクラスタノード上の指定された SysNode の Wait 状態をクリアします。

注意

本オプションを使用する場合には、強制停止できなかったクラスタノード(Sysnode) を手動で停止し、CF の状態が DOWN となったことを確認してから実行してください。CF の状態が LEFTCLUSTER の場合は、cftool -k コマンドで、LEFTCLUSTER を解消してから実行してください。クラスタノードを停止せずに本コマンドを実行した場合には、データが破損する可能性があります。

本コマンドを実行すると、シャットダウン機構が指定されたクラスタノード(SysNode)を正常に停止させた場合と同じように、アプリケーションの切替えが行われます。

-l { level | display }

level のログメッセージを出力します。level は数字のリストまたは範囲です。リスト中の個々のレベルは、カンマまたは空白で区切ります(リスト中に空白を使用する場合は、引数全体を引用符で囲まなければなりません)。レベルの範囲は n1-n2 と記述します。これで n1 から n2 までのすべてのレベルが含まれることになります。-n2 という範囲指定は 1-n2 と同じです。n1- と記述すると、n1 以上のレベルすべてを指定することになります。n1 の値は 1 以上である必要があります。
(4.2A00 以降) display オプションは現在のログメッセージのレベルを表示します。

注意

  • 複数のログレベルを指定して BM(ベースモニタ)を実行すると、システム性能が低下する可能性があります。有効なログレベルは以下のとおりです。

          0   すべてのログレベルをオンにします
          1   未使用
          2   ディテクタ履歴をオンにします
          3   未使用
          4   mskx スタック履歴をオンにします
          5   エラーメッセージまたは警告メッセージ
          6   ハートビートおよび通信のレベル
          7   BM レベル
          8   ディテクタエラー
          9   管理コマンドメッセージ
         10   基本タイプレベル
         11   動的再構成コントラクトレベル
         12   未使用
         13   トークンレベル
         14   ディテクタメッセージ
         15   ローカルキューレベル
         16   ローカルキューレベル
         17   スクリプトレベル
         18   userApplication コントラクトレベル
         19   一時的なデバッグ履歴
         20   SysNode 履歴
         21   メッセージレベル
         22   bm トレースログ
         23   未使用
         off  すべてのログレベルをオフにします
  • ログレベルをオンにした状態で、RMS を 1 日以上連続して動作させる運用の場合、RMSのログによるディスク容量の圧迫を避けるため、1日1回 hvlogclean コマンドが実行されるよう、cron の設定に hvlogclean コマンドを設定してください。これにより、1日ごとにログファイルが退避され、RELIANT_LOG_LIFE の日数より古いログファイルは自動で削除されます。hvlogcleanの詳細については、hvlogclean(1M)を参照してください。

-L { level | display } resource

resource に対してログレベル level をオンにします。resource はディテクタが監視するリソースの名前です。有効なログレベルは以下のとおりです。

  • 0

    ログをオフにします

  • 正の数値

    ログをオンにします

(4.2A00 以降) display オプションは現在の resource に対するログメッセージのレベルを表示します。

-m command userApplication (4.1A30 以降)

指定された userApplication に保守モードを設定または解除します。有効なコマンドは以下のとおりです。

  • on

    保守モードを設定します

  • off

    保守モードを解除します

  • forceoff

    適切な状態にないリソースが存在する場合でも、保守モードを解除します

-M command (4.1A30 以降)

すべての SysNode 上のすべての userApplication に、保守モードを設定または解除します。要求された状態変更に対して、適切な状態にない userApplication は処理されません。有効なコマンドは以下のとおりです。

  • on

    保守モードを設定します

  • off

    保守モードを解除します

  • forceoff

    適切な状態にないリソースが存在する場合でも、保守モードを解除します

-w

ローカルノード上で現在 Online であるすべての userApplication の重みの合計を出力します。

注意

Online 以外の状態にある userApplication の重みは 0 と定義されます。

-W

ローカルで Online であるかどうかに関わらず、すべての構成済みのuserApplication の重みの合計を出力します。

-i { userApplication | all }

すべてのクラスタノード上の指定された userApplication の最終 Online ノード(LOH)エントリを無効にします。キーワード all が指定された場合は、すべての LOH エントリが無効となります。
LOH エントリが無効になると、優先順位切替え要求の自動起動に「優先順位が最も高い」ノードを計算する際に、そのノードは考慮されません。

-r

すべての LOH エントリを更新します。

-c resource (4.3A40 以降)

resourceの故障形跡をクリアします。

◆使用例

次のコマンドは、App1 ユーザアプリケーションを Deact 状態にします。

hvutil -d App1

次のコマンドは、App2 ユーザアプリケーションを Offline にします。

hvutil -f App2

◆終了ステータス

0 :正常終了

0 以外:異常終了

注意

本コマンドは、BM (ベースモニタ)への指示の通知が成功した時点でコマンドの終了ステータスが 0 になります。BM での処理結果が成功したかどうかは、 hvdisp(1M) コマンド、 hvassert(1M) コマンドまたは hvdispall(1M) コマンドにより、 userApplication の状態を確認して判断してください。

◆関連項目

hvassert(1M), hvcm(1M), hvdisp(1M), hvdispall(1M), hvswitch(1M)