Jump to content 日本-日本語
≫ お問い合わせ

HP OpenVMS: システム管理者マニュアル (上巻)

第13章 キュー・マネージャとキュー・データベースの管理

≫ 

OpenVMSドキュメント・ライブラリ

目次
まえがき
第1章:本書の概要
第2章:管理ユーティリティとツール
第3章:インストールとアップグレード
第4章:システムの起動と停止
第5章:オペレーティング・システムのカスタマイズ
第6章:システム時刻の設定
第7章:ユーザアカウントの管理
第8章:周辺デバイスの管理
第9章:記憶媒体の管理
第10章:ファイルとディレクトリの操作
第11章:BACKUPの使用方法
第12章:機密保護
第13章:キュー・マネージャとキュー・データベースの管理
第14章:キューの設定と保守
索引
PDF
OpenVMS ホーム
ここから本文が始まります

目次

13.1 キュー・マネージャについて
13.2 キュー・データベースについて
13.3 キュー・データベースの格納場所の指定
13.3.1 キュー・マスタ・ファイルの格納場所の指定
13.3.2 キュー・ファイルとジャーナル・ファイル
13.4 キュー・マネージャに関する情報の表示
13.5 キュー・マネージャの起動とキュー・データベースの作成
13.6 キュー・マネージャ・フェールオーバのカスタマイズ
13.7 キュー・マネージャの停止
13.7.1 キュー・マネージャの停止
13.7.2 キュー・マネージャの再起動
13.8 複数のキュー・マネージャの使用
13.8.1 複数のキュー・マネージャについて
13.8.2 追加キュー・マネージャの作成
13.9 キュー・データベースの保存と復元
13.9.1 キュー・データベース・ファイルの保存
13.9.2 キュー・データベース・ファイルの復元
13.10 キュー・システム性能の最大化
13.11 キュー・マネージャに関する問題の解決
13.11.1 一般的な問題の回避: 問題解決チェックリスト
13.11.2 キュー・マネージャが起動しない場合
13.11.3 キュー登録システムが停止する場合またはキュー・マネージャがあるノードで実行されない場合
13.11.4 キュー・マネージャが使用できない場合
13.11.5 ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合
13.11.6 複数の OpenVMS Cluster ノードでキュー登録動作が一定でない場合
13.12 キュー登録システムに関する問題の弊社への連絡

キューを作成し起動するためには, その前にキュー・マネージャとキュー・データベースを設定しておかなければなりません。 この章では, OpenVMS バッチ・キューおよびプリント・キュー登録システムで, キュー・マネージャとキュー・データベースを設定し管理する方法について説明します。

この章の内容

この章では,次の作業について説明します。

作業

参照箇所

キュー・データベース・ファイルの位置指定

13.3 項 「キュー・データベースの格納場所の指定」

キュー・マネージャの情報表示

13.4 項 「キュー・マネージャに関する情報の表示」

キュー・マネージャの起動とキュー・データベースの作成

13.5 項 「キュー・マネージャの起動とキュー・データベースの作成」

キュー・マネージャ・フェールオーバのカスタマイズ

13.6 項 「キュー・マネージャ・フェールオーバのカスタマイズ」

キュー・マネージャの停止

13.7 項 「キュー・マネージャの停止」

複数の(追加の)キュー・マネージャの作成

13.8 項 「複数のキュー・マネージャの使用」

キュー・データベースの保存と復旧

13.9 項 「キュー・データベースの保存と復元」

キュー・システム性能の最大化

13.10 項 「キュー・システム性能の最大化」

キュー・マネージャ問題の解決

13.11 項 「キュー・マネージャに関する問題の解決」

キュー登録システム問題の弊社への連絡

13.12 項 「キュー登録システムに関する問題の弊社への連絡」

さらに,次の項目について説明します。

項目

参照箇所

キュー・マネージャ

13.1 項 「キュー・マネージャについて」

キュー・データベース

13.2 項 「キュー・データベースについて」

複数の(追加の)キュー・マネージャ

13.8.1 項 「複数のキュー・マネージャについて」

この章では,多くの場所で DCL コマンドを参照しています。 DCL コマンドについての詳細は,『OpenVMS DCL ディクショナリ』を参照してください。

13.1 キュー・マネージャについて

システムでプリンタまたはバッチ処理を使用するには,キュー を使用する必要があります。 キュー・マネージャ はキューの動作を制御します。キュー・データベース はマスタ・ファイルをはじめ,キュー・ファイルやジャーナル・ファイルを格納します。 これらのファイルにはキューとジョブに関する情報が格納されます。

キュー操作を行うためには,必ずキュー・マネージャを起動して,キュー・データベースを作成しておく必要があります。 これらの実際の操作については,この後の 13.5 項 「キュー・マネージャの起動とキュー・データベースの作成」 で説明します。

OpenVMS Cluster 環境においてキューを管理するときのキュー・マネージャの働きを 図 13-1 「OpenVMS のバッチとプリント・キュー・システム」 に示します。

図 13-1 OpenVMS のバッチとプリント・キュー・システム

OpenVMS のバッチとプリント・キュー・システム

バッチ・ジョブまたはプリント・ジョブがキューに登録されると, キュー・マネージャは次の操作を行います。

  1. ジョブのタイプ,ファイル名,キューの名前,特殊オプションなどが指定された,ユーザからのキュー要求を受け取る。

  2. 受け取った情報をキュー・データベースに記録し, ジョブをプリントまたは実行するときに読み出す。

  3. 対応するキューにジョブを登録して,順番を待つ。

    1. プリント・ジョブは,シンビオント と呼ぶ独立プロセスに送信されて書式整形され,印刷のためにプリンタに送信される。

    2. バッチ・ジョブの場合は,ジョブ・コントローラ がバッチ・ジョブ・プロセスを生成する。

1 つ以上のキュー・マネージャ・プロセスが,ノードのすべてのプロセスまたは OpenVMS クラスタ環境内のすべてのプロセスのキュー登録を制御します。 OpenVMS Cluster の 1 つのノードからジョブを登録して,別のノードのキューでそのジョブを実行することも可能です。 各ノードのユーザ・プロセス,シンビオント,ジョブ・コントローラは,直接キュー・マネージャと通信します。

また,ジョブ・コントローラはキュー・マネージャと協力して,次のキュー管理作業を行います。

  • バッチ,シンビオント,キュー・マネージャ・プロセスの作成と監視

  • リブート時のキュー・マネージャ・プロセスの再起動

  • OpenVMS Cluster 環境におけるキュー・マネージャのフェールオーバ処理

キュー・マネージャのフェールオーバ

省略時の設定では,キュー・マネージャが動作中のノードがクラスタを離れた場合,キュー・マネージャは別のノードにフェールオーバしようとします。

OpenVMS Cluster 環境では,クラスタのノードにキューを要求させる順番を指定したり,キュー・マネージャを実行可能なノードを制限したりすることができます。 詳細は13.6 項 「キュー・マネージャ・フェールオーバのカスタマイズ」 を参照してください。

複数のキュー・マネージャ

CPU,ディスク容量,メモリの制約を回避するには, 複数のキュー・マネージャを使用して, バッチ処理とプリント処理の作業負荷をノード間で分散したり, データベース・ファイルをディスク間で分散します。

たとえば,バッチ・キューやプリント・キューのためにキューを別々に作成し,それぞれのキューのマネージャを別々のノードで実行できます。 バッチ・キュー・マネージャを 1 つのノードで実行し,プリント・キュー・マネージャを別のノードで実行します。 また,キュー・ファイルとジャーナル・ファイルを独立したディスク管理することもできます。

キュー・マネージャを追加作成する方法と複数のキュー・マネージャを使用する理由,およびその場合の制限事項については,13.8 項 「複数のキュー・マネージャの使用」 を参照してください。

13.2 キュー・データベースについて

キュー・データベースは,キュー・システムが動作しつづけるために必要な,ジョブ,キュー,キュー・マネージャなどの情報を保持します。 1 つの省略時のキュー・マネージャ SYS$QUEUE_MANAGER に対するキュー・データベースを構成するファイルは次のとおりです。

ファイル

説明

マスタ・ファイル (QMAN$MASTER.DAT)

内容:

  • キュー・ファイルとジャーナル・ファイルの格納場所情報

  • フォームと特性の定義情報

  • キュー名のリスト

  • キュー・マネージャを実行可能なノードのリスト

  • キュー・マネージャのリストと, キュー・マネージャを実行できるノードのリスト。

キュー・ファイル (SYS$QUEUE_MANAGER.QMAN$QUEUES)

作成,起動,変更されたキューの定義を含む。

ジャーナル・ファイル (SYS$QUEUE_MANAGER.QMAN$JOURNAL)

次の場合,キュー・マネージャが最後の既知状態に戻ることを可能にする情報を含む。

  • スタンドアロン型のマシンが予期せぬ停止をした場合。

  • キュー・マネージャを実行している OpenVMS Cluster ノードが OpenVMS Cluster 環境を離れた場合。

このファイルには,ジョブの定義も含まれる。

複数のキュー・マネージャを持つシステムでは, 各追加キュー・マネージャの新しいキュー・ファイルとジャーナル・ファイルは, キュー・データベースに含まれています。 追加キュー・ファイルは, キュー・マネージャ名.QMAN$QUEUES の形式で命名されます。 追加ジャーナル・ファイルは, キュー・マネージャ名.QMAN$JOURNAL の形式で命名されます。

図 13-2 「キュー・データベース」 は,PRINT_MANAGER と BATCH_MANAGER という 2 つのキュー・マネージャを登録したマスタ・ファイルを格納したキュー・データベースを示しています。 各キュー・マネージャにはそれぞれ,キュー・ファイルとジャーナル・ファイルがあります。

図 13-2 キュー・データベース

キュー・データベース

省略時の設定では, データベース・ファイルはすべて SYS$COMMON:[SYSEXE] に格納されています。 ただし必要であれば,別の場所に移すことも可能です。 次の節で,データベース・ファイルを移動する理由と方法を説明します。

13.3 キュー・データベースの格納場所の指定

キュー・データベース・ファイルが, 省略時の格納場所 SYS$COMMON:[SYSEXE] に存在しない場合には, キュー・データベースの格納場所を指定する必要があります。 省略時のファイル格納場所を変える理由には,次のようなものがあります。

  • 複数のシステム・ディスクを使用する OpenVMS Cluster 環境では, 省略時の格納場所は正常に機能しない。 これは,省略時の場所が各システム・ディスクで異なるからである。 ファイルはすべてのクラスタ・メンバ・ノードで共有されるディスクに格納しなければならない。

    このような構成では,マスタ・ファイル QMAN$MASTER.DAT を格納しているディスクは,システム起動時に キュー・データベースを使用しているすべてのノードで利用できるようにする必要がある。

  • システム・ディスクの容量を節約したり,性能を向上させる。 通常は,キュー・ファイルとジャーナル・ファイルを移動するだけで十分である。

キュー・データベース・ファイルの移動方法

キュー・データベース・ファイルを移動する方法には 2 種類あります。

  • キュー・データベース・ファイルの最初の作成時には, 代替の格納場所に作成する。

    1. 論理名 QMAN$MASTER を SYLOGICALS.COM に定義し, マスタ・ファイルを作成する場所を指定する。

    2. START/QUEUE/MANAGER コマンドに ディレクトリ指定パラメータを指定して,キュー・マネージャ起動する。 その後,キュー・ファイルとジャーナル・ファイルを作成する場所を指定する。

    詳細は 13.5 項 「キュー・マネージャの起動とキュー・データベースの作成」 を参照。

  • すでにキュー・データベース・ファイルを作成している場合には, 次の操作を実行する。

    1. キュー・マネージャを停止する。

    2. キュー・データベース・ファイルを新しい格納場所にコピーする。

    3. ファイルが新しい場所にコピーされ,元の場所のファイルが削除されたことを確認する。

    4. マスタ・ファイルを移動する場合には,論理名 QMAN$MASTER をすべてのノードで定義して,マスタ・ファイルの格納場所を指定する。 また,この論理名定義をすべてのノードの SYLOGICALS.COM に追加する。

    5. START/QUEUE/MANAGER コマンドに ディレクトリ指定パラメータを指定して,キュー・マネージャを起動する。 その後,キュー・ファイルとジャーナル・ファイルを作成する場所を指定する。

マスタ・ファイルの格納場所の指定方法については, 13.3.1 項 「キュー・マスタ・ファイルの格納場所の指定」 を参照してください。 キュー・ファイルとジャーナル・ファイルの格納場所の指定方法については, 13.3.2 項 「キュー・ファイルとジャーナル・ファイル」 を参照してください。

13.3.1 キュー・マスタ・ファイルの格納場所の指定

マスタ・ファイルの格納場所を指定するためには, キュー・マネージャの起動とキュー・データベースの作成の前に,次の操作を実行してください。

  1. 次の形式でコマンドを入力する。

    DEFINE/SYSTEM/EXECUTIVE_MODE QMAN$MASTER 等価名

    等価名パラメータには, マスタ・ファイルを作成し格納する装置とディレクトリを指定する。

    OpenVMS Cluster 環境では,このコマンドを OpenVMS Cluster 内のすべてのノードで入力する。

    注意:

    OpenVMS Cluster 環境では,マスタ・ファイル用に指定したディレクトリは, クラスタのすべてのノードで利用できる必要があります。 ディレクトリ指定が隠し論理名になっている場合には, OpenVMS Cluster のすべてのノードで同じ名前で定義してある必要があります。 さらに,ディスクは, システム・スタートアップの初期に OpenVMS Cluster メンバ・ノードにマウントされている必要があります。

  2. ステップ 1 で入力したコマンドを,OpenVMS Cluster 環境のすべてのノードの SYS$MANAGER:SYLOGICALS.COM スタートアップ・コマンド・プロシージャに追加する。

  3. 指定した格納場所がノードのシステム・ディスクでない場合には, そのディスクをマウントするコマンドをコマンド・プロシージャ SYS$MANAGER:SYLOGICALS.COM に追加する。 通常 SYLOGICALS.COM では論理名の定義を行うが,この場合, このプロシージャのなかでマスタ・ファイルが格納されているディスクをマウントすることに注意。 これは,ジョブ・コントローラがキュー・マネージャを起動する前に, マスタ・ファイルが利用できるようにしておくためである。

    SYLOGICALS.COM でシステム単位の論理名を定義する方法については, 5.2.5 項 「システム単位の論理名を定義するための SYLOGICALS.COM の変更」を参照。

13.3.2 キュー・ファイルとジャーナル・ファイル

START/QUEUE/MANAGER コマンドに ディレクトリ指定パラメータを指定して, キュー・ファイルとジャーナル・ファイルの格納場所を指定します。 次に例を示します。

$ START/QUEUE/MANAGER DUA2:[SYSQUE]

このコマンドは,キューとジャーナル・ファイルが DUA2:[SYSQUE] ディレクトリに格納されるように指定します。

注意:

OpenVMS Cluster 環境では,キュー・ファイルとジャーナル・ファイルに対して指定したディレクトリは,キュー・マネージャを実行できるすべてのノードで利用できる必要があります。 ディレクトリ指定が隠し論理名になっている場合には, OpenVMS Cluster のすべてのノードで同じ名前で定義してある必要があります。 さらに,ディスクは, システム・スタートアップの初期に すべてのOpenVMS Clusterメンバ・ノードにマウントされている必要があります。

START/QUEUE/MANAGER コマンドを一度入力すると,入力したディレクトリ位置はキュー・データベースに保存されます。 キュー・マネージャを再起動する場合,ディレクトリ位置を再指定する必要はありません。

13.4 キュー・マネージャに関する情報の表示

1 つ以上のキュー・マネージャに関する情報を表示するには, SHOW QUEUE/MANAGERS コマンドを入力します。

  1. 次の例では,PRINT_MANAGER と SYS$QUEUE_MANAGER という 2 つのキュー・マネージャに関して,省略時の (/BRIEF) 情報を表示する。

    $ SHOW QUEUE/MANAGERS
    Queue manager PRINT_MANAGER, running, on NODEA::
    
    Queue manager SYS$QUEUE_MANAGER, running, on NODED::
    
  2. システムまたはクラスタのキュー・マネージャに関する詳細情報を表示するには,/FULL 修飾子を使用する。

    次の例では,マスタ・ファイルは 1 か所にあるが,2 つのキュー・マネージャに属しているキュー・ファイルとジャーナル・ファイルは異なる場所にある。

    
    $ SHOW QUEUE/MANAGERS/FULL
    Master file:  SYS$SPECIFIC:[SYSEXE]QMAN$MASTER.DAT;
    
    Queue manager PRINT_MANAGER, running, on NODEA::
      /ON=(NODEA,NODEB,*)
      Database location:  DUA2:[SYSQUE]
    
    Queue manager BATCH_MANAGER, running, on NODED::
      /ON=(NODEC,NODED,NODEE,*)
      Database location:  SYS$SYSROOT:[SYSEXE]
    

図 13-3 「キュー・データベース・ファイルの格納位置」 は,2 番目の例で示したキュー・データベース・ファイルの場所を示しています。

図 13-3 キュー・データベース・ファイルの格納位置

キュー・データベース・ファイルの格納位置

13.5 キュー・マネージャの起動とキュー・データベースの作成

キューを作成するためには, 次の形式でコマンドを使用してキュー・データベースを作成しておく必要があります。

START/QUEUE/MANAGER/NEW_VERSION[/ON=(ノード名,...)] [ディレクトリ指定]

/NEW_VERSION

新しいキュー・データベース・ファイルを作成することを指定する。

  • マスタ・ファイル

  • キュー・ファイル

  • ジャーナル・ファイル

/NEW_VERSION 修飾子を指定するのは,新しいデータベース・ファイルを作成する場合だけである。 キュー登録システムがすでに機能している場合には,新しいデータベース・ファイルを作成する必要はない。

/ON= (ノード名,...)

キュー・マネージャのフェールオーバをカスタマイズすることを許可する。 詳細は13.6 項 「キュー・マネージャ・フェールオーバのカスタマイズ」 を参照。

ディレクトリ指定

キュー・ファイルとジャーナル・ファイルの場所を指定する。 13.3.2 項 「キュー・ファイルとジャーナル・ファイル」 を参照。 キュー・ファイルとジャーナル・ファイルを省略時の場所以外の場所に作成する場合には, このパラメータを使用する。

重要:

現在正しく機能しているキュー・データベースがない場合にのみ, /NEW_VERSION 修飾子を指定します。 既にキュー・データベース・ファイルがある場合にこの修飾子を指定すると, 現在のキュー・データベース・ファイルは上書きされます。

通常,ユーザがこの作業を実行するのは 1 度だけです。 これは,ユーザがこのコマンドを実行すると, システムはこのコマンドと指定した修飾子とパラメータとともに, このコマンドをキュー・データベースに格納するからです。

ユーザが STOP/QUEUE/MANAGER/CLUSTER コマンドを入力しない限り, ジョブ・コントローラは再起動時に自動的にキュー・マネージャを起動します。 このため,スタートアップ・コマンド・プロシージャに START/QUEUE/MANAGER コマンドを記述する必要はありません。

重要:

ここでは, システム・ディスクが 1 つの OpenVMS Cluster またはシステム上で, キュー・マネージャを起動する方法とキュー・データベースを作成する方法を説明します。

複数のシステム・ディスクを持った OpenVMS Cluster 内のシステムでは, 特殊な作業を実行する必要があります。 OpenVMS Cluster は混合アーキテクチャでも構いません。 実行方法については『OpenVMS Cluster システム』を参照してください。

作業方法

  1. システム・アドレス・パラメータ SCSNODE および SCSSYSTEMID の値が, DECnet for OpenVMS ノード名およびノードID と一致することを確認する。 システムでキューを正常に実行させるためには, これらの値は正しく定義されていなければならない。

    • SYSMAN ユーティリティ の PARAMETERS SHOW コマンドが, システム・アドレス・パラメータ SCSNODE および SCSSYSTEMID の値を決める。

    • NCP の SHOW EXECUTOR SUMMARY コマンドを実行すると, DECnet for OpenVMS ノード名およびノードID が表示される。

    詳細は 13.11.5.1 項 「問題の調査」 の 2 番目の例を参照。

  2. 省略時の位置 SYS$COMMON:[SYSEXE] にキュー・データベース・ファイルを作成する場合は,ステップ 3 へ進む。

    省略時の位置以外の位置にキュー・データベース・ファイルを作成する場合は, 13.3.1 項 「キュー・マスタ・ファイルの格納場所の指定」または 13.3.2 項 「キュー・ファイルとジャーナル・ファイル」,あるいは両方を参照。

  3. キュー・マネージャを起動してキュー・データベース・ファイルを作成するには, START/QUEUE/MANAGER コマンドを実行する。 このコマンドを実行するとキュー・マネージャ・プロセスが起動する。 オプションで,キュー・ファイルとジャーナル・ファイルを作成できる。

キュー・マネージャが起動しない場合は, 13.11.1 項 「一般的な問題の回避: 問題解決チェックリスト」 の問題解決チェックリストを参照。

次の例は以下を指定しています。

  • マスタ・ファイルはディレクトリ DUA4:[MASTER] にある。

  • キュー・ファイルとジャーナル・ファイルの場所はディレクトリ DUA2:[SYSQUE] である (しかし,マスタ・ファイルの場所は DUA4:[MASTER] から移動しない)。

$ DEFINE/SYSTEM/EXECUTIVE_MODE QMAN$MASTER DUA4:[MASTER]
$ MOUNT/SYSTEM/NOASSIST DUA4:
$ !
$ ! Add the two previous commands to SYLOGICALS.COM
$ !
$ START/QUEUE/MANAGER/NEW_VERSION DUA2:[SYSQUE]

1 つ以上のキュー・マネージャを追加作成する方法については, 13.8 項 「複数のキュー・マネージャの使用」 を参照してください。

13.6 キュー・マネージャ・フェールオーバのカスタマイズ

省略時の設定では, OpenVMS Cluster 環境のすべてのノードでキュー・マネージャが実行可能であり,実行に決まった順番はありません。 START/QUEUE/MANAGER コマンドの /ON 修飾子を使うと, キュー・マネージャの実行可能な OpenVMS Cluster ノードを, 実行したい順に列挙したリストを指定できます。 少なくとも 1 つのノードが常にキュー・マネージャを実行できるようにするために,ノード・ディスクの最後にアスタリスク (*) を指定することをお勧めします。

13.7 キュー・マネージャの停止

キュー・マネージャを停止し,再起動するには,DCL コマンドを入力する必要があります。

13.7.1 キュー・マネージャの停止

スタンドアロン・ノードまたは OpenVMS Cluster ノードでキュー・マネージャをシャットダウンするには,次のコマンドを入力します。

$ STOP/QUEUE/MANAGER/CLUSTER

キュー・マネージャは,次の作業を実行します。

  • 再起動不可能なすべての現在のジョブの処理を強制終了し, 再起動可能なすべての現在のジョブをキューに再度登録する。

  • すべての実行キューを停止させる。

  • すべてのノードで自動起動を禁止にする。

  • キュー・マネージャに関連するすべてのキュー・データベース・ファイルをクローズする。

STOP/QUEUE/MANAGER/CLUSTER コマンドが入力されると, キュー・マネージャ・プロセスが停止状態になるため, START/QUEUE/MANAGER コマンドを入力することによってキュー・マネージャを再度起動しないかぎり,キュー・システムに対する要求は拒否されます (キュー・マネージャが 1 つでも実行されているとキュー・システムも実行されています)。

OpenVMS Cluster 遷移によって, キュー・マネージャの状態が変化することはありません。 また,START/QUEUE/MANAGER コマンドが入力されないかぎり,新たに使用可能になったノードがキュー・マネージャの起動を試みることはありません。

クラスタ全体で動作するキュー・マネージャを停止させるためには, /CLUSTER 修飾子が必要です。 以前の/CLUSTER 修飾子なしの STOP/QUEUE/MANAGER コマンドは,DCL の STOP/QUEUES/ON_NODE コマンドと同じ働きをします。 キュー・マネージャを停止させることなく,特定の 1 つのノードのすべてのキューを停止したい場合は,STOP/QUEUES/ON_NODE コマンドを使用してください。

13.7.2 キュー・マネージャの再起動

システムをリブートすると,キュー・マネージャは自動的に再起動されます。 しかし,次のいずれかの理由で START/QUEUE/MANAGER コマンドを入力しなければならないことがあります。

  • STOP/QUEUE/MANAGER/CLUSTER コマンドを入力した場合は, START/QUEUE/MANAGER コマンドを入力して, キュー・マネージャを再起動する。

  • OpenVMS Cluster 環境において,キュー・マネージャを実行するノードを追加する場合は, START/QUEUE/MANAGER コマンドに /ON 修飾子を指定する。 詳細は13.6 項 「キュー・マネージャ・フェールオーバのカスタマイズ」 を参照。

  • OpenVMS Cluster 環境において,もっとも望ましいノード上でキュー・マネージャ・プロセスが実行されているかどうか確認する場合は, START/QUEUE/MANAGER コマンドを入力する。 もっとも望ましいノード上で実行されていない場合,キュー・マネージャは, サービスを中断することなく,そのノードに移動される。 省略時のノード・リスト (*) を使用している場合,キュー・マネージャは移動されない。

作業方法

キュー・マネージャを再起動する場合は,次の形式で START/QUEUE/MANAGER コマンドを使用します。

START/QUEUE/MANAGER[/ON=(ノード名,...)] [ ディレクトリ指定 ]

キュー・マネージャを再起動する場合, 現在使用している /ON=(ノード名,...) 修飾子または ディレクトリ指定パラメータの値を変更するのでないかぎり, それらの項目を指定する必要はありません。 キュー・マネージャを起動するコマンドは,指定した修飾子およびパラメータと一緒にキュー・データベースに格納されます。 それらの指定がない場合,キュー・マネージャは,キュー・データベースに格納されているノード・リストと位置情報を使って起動されます。

キュー・マネージャが起動しない場合の対処方法については, 13.11.1 項 「一般的な問題の回避: 問題解決チェックリスト」 で説明しています。

13.8 複数のキュー・マネージャの使用

複数のキュー・マネージャを使用すると,バッチ処理とプリント処理の作業負荷を複数のノードやディスク・ボリューム間で分散できます。 複数のキュー・マネージャの概要と, キュー・マネージャを追加作成するにはどのような処理が必要であるかを理解しておかなければなりません。

13.8.1 複数のキュー・マネージャについて

この節では,複数のキュー・マネージャの操作に関連する項目について説明します。

複数のキュー・マネージャを使用する場合の制限事項

複数のキュー・マネージャには次の制限事項があります。

  • 1 つのキュー・マネージャで実行されているキューは, 別のキュー・マネージャで実行中のキューを参照できない。 たとえば,キュー・マネージャ A で実行中の汎用キューは, キュー・マネージャ B で実行中の実行キューにジョブを渡すことができない。

  • 1 つのキュー・マネージャのキューから別のキュー・マネージャのキューにジョブを移動することはできない。

  • OpenVMS Cluster 環境では,最大 5 つのキュー・マネージャを使用できる。

複数のキュー・マネージャの名前

キュー・マネージャのプロセス名は,キュー・マネージャ名の最初の 12 文字です。 省略時のキュー・マネージャ名は SYS$QUEUE_MANAGER です。 省略時のキュー・マネージャのプロセス名は QUEUE_MANAGE です。 PRINT_MANAGER という名前の追加キュー・マネージャを作成すると, プロセス名は PRINT_MANAGE になります。

キュー・マネージャに関する問題が発生したときに,その問題に適切に対処できるように,すべてのキュー・マネージャのプロセス名を把握しておかなければなりません。 13.11 項 「キュー・マネージャに関する問題の解決」 を参照してください。

複数のキュー・マネージャによるキュー・データベース・ファイルの使用

複数のキュー・マネージャは,1 つのマスタ・ファイルを共有します。 しかし,複数のキュー・マネージャを使用するキュー・データベースには, 各キュー・マネージャに対して 1 つのキュー・ファイルと 1 つのジャーナル・ファイルが格納されます。 13.2 項 「キュー・データベースについて」 を参照してください。

複数のキュー・マネージャを管理するためのコマンド

省略時の設定では,次のコマンドは省略時のキュー・マネージャ SYS$QUEUE_MANAGER,または省略時のキュー・マネージャで実行中のキューに影響します。

  • START/QUEUE/MANAGER

  • ENABLE AUTOSTART/QUEUES と DISABLE AUTOSTART/QUEUES

  • STOP/QUEUES/ON_NODE

  • STOP/QUEUE/MANAGER/CLUSTER

  • DELETE/QUEUE/MANAGER

/NAME_OF_MANAGER 修飾子を使用すると,これらのコマンドに対して異なるキュー・マネージャを指定できます。

13.8.2 追加キュー・マネージャの作成

1 つ以上のキュー・マネージャを作成するには,次の操作を実行してください。

  1. 13.5 項 「キュー・マネージャの起動とキュー・データベースの作成」 のステップ 1 とステップ 2 を実行する。

  2. キュー・マネージャを追加作成するには,次の形式でコマンドを入力する。

    START/QUEUE/MANAGER/ADD/NAME_OF_MANAGER=名前 - [/ON=(ノード名,...)] [ディレクトリ指定]

    /ADD

    既存のマスタ・ファイルにキュー・マネージャを追加作成し,新しいキュー・ファイルとジャーナル・ファイルを作成する。

    /NAME_OF_MANAGER=名前

    31 文字以内の名前を使用して,省略時のキュー・マネージャ以外のキュー・マネージャを作成する。 キュー・マネージャは最大 5 つ作成できる。

    /ON= (ノード名,...)

    キュー・マネージャのフェールオーバをカスタマイズすることを許可する。 詳細は13.6 項 「キュー・マネージャ・フェールオーバのカスタマイズ」 を参照。

    ディレクトリ指定

    キュー・ファイルとジャーナル・ファイルの格納場所を指定する。 13.3.2 項 「キュー・ファイルとジャーナル・ファイル」 を参照。 キュー・ファイルとジャーナル・ファイルを省略時の格納場所以外の場所に作成する場合には,このパラメータを使用する。

重要:

新しいキュー・マネージャを作成するときには, /NEW_VERSION 修飾子を指定しないでください。 複数のキュー・マネージャは 1 つのマスタ・ファイルを共有します。 追加作成した各キュー・マネージャに対して,追加のキュー・ファイルとジャーナル・ファイルが自動的に作成されます。

次のコマンドは,BATCH_MANAGER という名前の新しいキュー・マネージャを作成し,起動します。

$ START/QUEUE/MANAGER/ADD/NAME_OF_MANAGER=BATCH_MANAGER/ON=(A,B,*) DUA2:[QUEUES]

13.8.2.1 複数のキュー・マネージャの作成と移動

INITIALIZE/QUEUE コマンドでキューを 作成するときには,/NAME_OF_MANAGER 修飾子を付けて,キューが実行されるキュー・マネージャの名前を指定します。 /NAME_OF_MANAGER 修飾子を指定しないと,キューは省略時のキュー・マネージャ SYS$QUEUE_MANAGER 上で作成されます。

既存のキューを元のキュー・マネージャから別のキュー・マネージャに移動するには,DELETE/QUEUE コマンドでキューを削除し,INITIALIZE/QUEUE コマンドで再作成します。

13.8.2.2 キュー・マネージャの保守

キュー・マネージャを保守するために DCL コマンドを入力するときは, 必ず /NAME_OF_MANAGER 修飾子でコマンドを適用するキュー・マネージャを指定します。 /NAME_OF_MANAGER 修飾子を指定しない場合,コマンドは省略時のキュー・マネージャ SYS$QUEUE_MANAGER で実行されます。

例で各コマンドが行っている操作は次のとおりです。

  • 最初のコマンドは,PRINT_MANAGER というキュー・マネージャを作成して起動し, マスタ・ファイル,キュー・ファイル,およびジャーナル・ファイルを作成する。

  • 2 番目のコマンドは, BATCH_MANAGER という追加キュー・マネージャを作成して起動する。 また,このキュー・マネージャに対して, キュー・ファイルとジャーナル・ファイルも自動的に作成される。

  • 省略時のキュー・マネージャ SYS$QUEUE_MANAGER は定義されない。

  • SHOW QUEUE/MANAGERS コマンドは,システムで実行中のキュー・マネージャに関する情報を表示する。 13.4 項 「キュー・マネージャに関する情報の表示」 を参照。

$ START/QUEUE/MANAGER/NEW_VERSION/NAME_OF_MANAGER=PRINT_MANAGER -
_$ /ON=(JADE,RUBY,*) 
$ START/QUEUE/MANAGER/ADD/NAME_OF_MANAGER=BATCH_MANAGER -
_$ /ON=(OPAL,PEARL,*) 
$ SHOW QUEUE/MANAGER/FULL
Master file:  SYS$SPECIFIC:[SYSEXE]QMAN$MASTER.DAT;

Queue manager PRINT_MANAGER, running, on JADE::
  /ON=(JADE,RUBY,*)
  Database location:  SYS$COMMON:[SYSEXE]

Queue manager BATCH_MANAGER, running, on OPAL::
  /ON=(OPAL,PEARL,*)
  Database location:  SYS$SYSROOT:[SYSEXE]

13.9 キュー・データベースの保存と復元

キュー構成に変更を行う場合は, 必ずキュー・データベース・ファイルのコピーを作成しておきます。 このコピーを保存しておくと, キュー・データベース・ファイルにアクセスできなくなったときに, 保存したキュー・データベースを復元することができます。 その結果,フォームや属性を再定義して, 各キューを再度初期化する必要がなくなります。

13.9.1 キュー・データベース・ファイルの保存

次に,キュー・システムが動作しているときに キュー・データベースのレコードごとのコピーを保存する手順を説明します。 保存されるのはキュー,フォーム,および特性の定義だけであり, ジョブ情報は保存されません。 なお,時刻指定してあるジョブや保留中のジョブが, ジャーナル・ファイルの復元後に再実行される場合があるので, ジャーナル・ファイルは保存しないようにしてください。

作業方法

  1. 次の形式で OpenVMS の CONVERT ユーティリティ・コマンドを入力して, マスタ・ファイルを保存する。

    CONVERT/SHARE QMAN$MASTER.DAT マスタ・ファイル名

    マスタ・ファイル名には,QMAN$MASTER.DAT のコピー先のファイル名を指定する。

    CONVERT ユーティリティについては,『OpenVMS Record Management Utilities Reference Manual』を参照。

  2. 次の形式で CONVERT コマンドを入力して,キュー・ファイルを保存する。

    CONVERT/SHARE SYS$QUEUE_MANAGER.QMAN$QUEUES - キュー・ファイル名

    キュー・ファイル名には,SYS$QUEUE_MANAGER.QMAN$QUEUES のコピー先のファイル名を指定する。

  3. 次の形式で BACKUP ユーティリティ・コマンドを使用して, CONVERT で作成したファイルを保存する。

    BACKUP/LOG マスタ・ファイル名 , キュー・ファイル名 装置: セーブ・セット名 /LABEL= ラベル

    BACKUP ユーティリティについては,『OpenVMS システム管理 ユーティリティ・リファレンス・マニュアル』を参照。

次の例は,キュー・データベースを保存する方法を示す簡単なプロシージャです。

$ SET DEFAULT SYS$COMMON:[SYSEXE]
$ CONVERT/SHARE QMAN$MASTER.DAT MASTERFILE_9SEP.KEEP;
$ CONVERT/SHARE SYS$QUEUE_MANAGER.QMAN$QUEUES QFILE_9SEP.KEEP;
$ INITIALIZE MUA0: QDB
$ MOUNT/FOREIGN MUA0:
%MOUNT-I-MOUNTED, QDB mounted on _LILITH$MUA0:
$ BACKUP/LOG MASTERFILE_9SEP.KEEP,QFILE_9SEP.KEEP MUA0:QDB_9SEP.SAV/LABEL=QDB
%BACKUP-S-COPIED, copied SYS$COMMON:[SYSEXE]MASTERFILE_9SEP.KEEP;
%BACKUP-S-COPIED, copied SYS$COMMON:[SYSEXE]QFILE_9SEP.KEEP;
$ DISMOUNT MUA0:

13.9.2 キュー・データベース・ファイルの復元

キュー・データベース・ファイルを復元すると,すべてのキュー,フォーム, 属性,キュー・マネージャ情報が復元されます。 しかし,キューに登録されているジョブに関する情報は復元されません。

作業方法

  1. キュー・マネージャが動作している場合は,DCL の STOP/QUEUE/MANAGER/CLUSTER コマンドを入力して停止させる。

  2. 3 つのキュー・データベース・ファイルをすべて削除する。 残っているファイルがあっても,すべて削除すること。

  3. MOUNT コマンドを使用して,キュー・データベースのバックアップを格納したディスクまたはテープをマウントする。

  4. BACKUP ユーティリティを使用して,13.9 項 「キュー・データベースの保存と復元」 のステップ 3 で作成したセーブ・セットからキュー・ファイルとマスタ・ファイルを復元する。 マスタ・ファイルかキュー・ファイルを省略時以外の場所に格納している場合は, その場所に復元する。 格納場所を変更した場合は,キュー・マネージャを起動するときに新しい格納場所を指定すること。

    注意:

    キュー・データベースの復元では, いずれか 1 つだけが失われている場合でも, 必ずマスタ・ファイルとキュー・ファイルの両方を復元する必要があります。

  5. START/QUEUE/MANAGER コマンドを使ってキュー・マネージャを起動する。 /NEW_VERSION 修飾子は使用しないこと。 新しい空のジャーナル・ファイルが自動的に作成される。

次の例は,キュー・データベースをテープから復元する方法を示すプロシージャです。

$ STOP/QUEUE/MANAGER/CLUSTER
$ SET DEFAULT SYS$COMMON:[SYSEXE]
$ DELETE SYS$QUEUE_MANAGER.QMAN$JOURNAL;,SYS$QUEUE_MANAGER.QMAN$QUEUES;, -
_$ QMAN$MASTER.DAT;
$ MOUNT/FOREIGN MUA0:
%MOUNT-I-MOUNTED, QDB mounted on _LILITH$MUA0:
$ BACKUP/LOG MUA0:QDB_9SEP.SAV/SELECT=[SYSEXE]MASTERFILE_9SEP.KEEP; -
_$ QMAN$MASTER.DAT;
%BACKUP-S-CREATED, created SYS$COMMON:[SYSEXE]QMAN$MASTER.DAT;1
$ SET MAGTAPE/REWIND MUA0:
$ BACKUP/LOG MUA0:QDB_9SEP.SAV/SELECT=[SYSEXE]QFILE_9SEP.KEEP; -
_$ SYS$QUEUE_MANAGER.QMAN$QUEUES
%BACKUP-S-CREATED, created SYS$COMMON:[SYSEXE]SYS$QUEUE_MANAGER.QMAN$QUEUES;1
$ DISMOUNT MUA0:
$ START/QUEUE/MANAGER

13.10 キュー・システム性能の最大化

次のシステム資源は,キュー登録システムの性能に最も影響を与えます。

  • CPU -- CPU 速度および可用性は,キュー・マネージャを実行するノードで重要な要素である。 キュー・マネージャに時間的な余裕があり, CPU 速度が高速であるほど,キュー・マネージャはより速く処理を行える。

  • ディスク -- ディスクの速度や,データベース・ディスクに対するキュー登録以外の動作 (ページングや,データベースに対する大量のアクセスなど) も性能に影響を与える可能性がある。

次の操作を行うと,キュー登録システムの性能を最大化できます。

13.11 キュー・マネージャに関する問題の解決

次の参照箇所を読んで,キュー・マネージャに関する問題を解決してください。

問題

参照箇所

一般的な問題の回避: 問題解決チェックリスト

13.11.1 項 「一般的な問題の回避: 問題解決チェックリスト」

キュー・マネージャが起動しない場合

13.11.2 項 「キュー・マネージャが起動しない場合」

キュー登録システムが停止する場合またはキュー・マネージャがあるノードで実行されない場合

13.11.3 項 「キュー登録システムが停止する場合またはキュー・マネージャがあるノードで実行されない場合」

キュー・マネージャが使用できない場合

13.11.4 項 「キュー・マネージャが使用できない場合」

ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合

13.11.5 項 「ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合」

別々の OpenVMS Cluster ノードでキュー登録動作が一定でない場合

13.11.6 項 「複数の OpenVMS Cluster ノードでキュー登録動作が一定でない場合」

キュー登録システムに関する問題の弊社への連絡

13.12 項 「キュー登録システムに関する問題の弊社への連絡」

13.11.1 一般的な問題の回避: 問題解決チェックリスト

キュー登録システムに関する一般的な問題を避けるために, 次の条件を必ず満たしてください。

必要条件

参照箇所

QMAN$MASTER がクラスタ内のすべてのノードで同等に定義されていること。

13.3 項 「キュー・データベースの格納場所の指定」

キュー・データベースが指定の格納場所に存在すること。

13.3 項 「キュー・データベースの格納場所の指定」

キュー・データベース・ディスクがマウントされており利用可能なこと。

13.3 項 「キュー・データベースの格納場所の指定」

十分な数のノードを /ON 修飾子のノード・リストに指定すること。 ノード・リストを指定する場合には,ノード・リストの最後にアスタリスク (*) を指定するとよい。

13.11.4 項 「キュー・マネージャが使用できない場合」

システム・アドレス・パラメータ SCSNODE と SCSSYSTEMID が DECnet for OpenVMS のノード名およびノード ID と一致すること。

13.11.5 項 「ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合」

13.11.2 キュー・マネージャが起動しない場合

START/QUEUE/MANAGER コマンドを入力しても,キュー・マネージャが起動しない場合,システムは次のメッセージを表示します。

%JBC-E-QMANNOTSTARTED, queue manager could not be started

13.11.2.1 問題の調査

次のようなコマンドを使用して,オペレータ・ログ・ファイル SYS$MANAGER:OPERATOR.LOG (またはオペレータ・コンソール) 上に, キュー・マネージャまたはジョブ・コントローラから問題に関してメッセージが出力されていないか検索してください。

$ SEARCH SYS$MANAGER:OPERATOR.LOG/WINDOW=5 QUEUE_MANAGE,
JOB_CONTROL,BATCH_MANAGE

メッセージが見つかったら,それを利用してさらに問題を調査し, 13.11.1 項 「一般的な問題の回避: 問題解決チェックリスト」 の条件を満たしていることを確認してください。

13.11.2.2 原因

この問題が発生するのは,システムがキュー・マスタ・ファイルを見つけることができないからです。 多くの場合,論理名の定義が正しくないか, またはディスクが使用可能な状態でないと考えられます。 たとえば,次のメッセージは,マスタ・キュー・ファイルが適切な場所に格納されていないことを示します。

%%%%%%%%%%%  OPCOM  13-MAR-2000 15:53:52.84  %%%%%%%%%%%
Message from user SYSTEM on ABDCEF
%JBC-E-OPENERR, error opening SYS$COMMON:[SYSEXE]QMAN$MASTER.DAT

%%%%%%%%%%%  OPCOM  13-MAR-2000 15:53:53.04  %%%%%%%%%%%
Message from user SYSTEM on ABDCEF
-SYSTEM-W-NOSUCHFILE, no such file

13.11.2.3 問題の解決

複数のキュー・マネージャが存在するシステムでも,追加キュー・マネージャによって表示されるメッセージを,検索文字列にプロセス名を含めて調べてください。 ユーザのシステムで実行されているキュー・マネージャに関する情報を表示するために,13.4 項 「キュー・マネージャに関する情報の表示」 の説明に従って SHOW QUEUE MANAGERS コマンドを使用してください。 メッセージに表示されたすべての問題を解決してください。

$ START/QUEUE/MANAGER DUA55:[SYSQUE] [1] 
%JBC-E-QMANNOTSTARTED, queue manager could not be started [2] 
$SEARCH SYS$MANAGER:OPERATOR.LOG /WINDOW=5 QUEUE_MANAGE,JOB_CONTROL [3] 
%%%%%%%%%%%  OPCOM  14-APR-2000 18:55:18.23  %%%%%%%%%%%
Message from user SYSTEM on CATNIP
%QMAN-E-OPENERR, error opening DUA55:[SYSQUE]SYS$QUEUE_MANAGER.QMAN$QUEUES;

%%%%%%%%%%%  OPCOM  14-APR-2000 18:55:18.29  %%%%%%%%%%%
Message from user SYSTEM on CATNIP
-RMS-F-DEV, error in device name or inappropriate device type for operation

%%%%%%%%%%%  OPCOM  14-APR-2000 18:55:18.31  %%%%%%%%%%%
Message from user SYSTEM on CATNIP
-SYSTEM-W-NOSUCHDEV, no such device available [4] 
$ START/QUEUE/MANAGER DUA5:[SYSQUE] [5] 

  1. キュー・マネージャを起動するコマンド。 キュー・ファイルとジャーナル・ファイルの格納場所として DUA55:[SYSQUE] が指定されている。

  2. キュー・マネージャを起動できなかったことを示すエラー・メッセージ。

  3. このコマンドは,オペレータ・ログ・ファイルに関連するメッセージがあるか調べる。 SEARCH コマンドには,BATCH_MANAGE などの 2 番目のキュー・マネージャ名が指定されていない。

  4. このメッセージは,装置 DUA55: が存在しないために, キュー・ファイルをオープンできなかったことを示す。

  5. このコマンドは,キュー・ファイルとジャーナル・ファイルの場所として DUA5:[SYSQUE] を正しく指定しているため,キュー・マネージャを正しく起動できる。

複数のキュー・マネージャとそのプロセス名についての詳細は, 13.8.1 項 「複数のキュー・マネージャについて」 を参照してください。

13.11.3 キュー登録システムが停止する場合またはキュー・マネージャがあるノードで実行されない場合

クラスタ内のあるノードでキュー・マネージャが実行されない場合, またはキュー登録システムが停止する場合には, この項の説明をお読みください。 特に,次のいずれかの項目にあてはまる場合は,この項を参考にしてください。

  • キュー・マネージャが実行されていたノードをクラスタから分離する。

  • 新しいノードをクラスタでブートする。

  • START/QUEUE/MANAGER コマンドの /ON 修飾子 で指定したノード・リストを変更する。

  • キュー・データベースの移動後にキュー・マネージャを起動する。

13.11.3.1 問題の調査

キュー・マネージャの起動時またはフェールオーバ時のオペレータ・ログをチェックしてください。 キュー・マネージャ (QUEUE_MANAGE プロセス名) からのオペレータ・メッセージがないかログを検索してください。

複数のキュー・マネージャが存在するシステムの場合も, 追加キュー・マネージャから表示されるメッセージがないか, 検索文字列にプロセス名を含めて調べてください。 システムで実行されているキュー・マネージャに関する情報を表示するためには,13.4 項 「キュー・マネージャに関する情報の表示」 の説明に従って SHOW QUEUE MANAGERS コマンドを使用してください。

複数のキュー・マネージャとそれらのプロセス名についての詳細は, 13.8.1 項 「複数のキュー・マネージャについて」 を参照してください。

次のメッセージは,キュー・データベースが指定した格納場所に存在しないことを示しています。

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:06:25.21  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
%QMAN-E-OPENERR, error opening CLU$COMMON:[SYSEXE]SYS$QUEUE_MANAGER.QMAN$QUEUES;

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:06:27.29  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
-RMS-E-FNF, file not found

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:06:27.45  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
-SYSTEM-W-NOSUCHFILE, no such file

次のメッセージはキュー・データベース・ディスクがマウントされていないことを示しています。

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:36:49.15  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
%QMAN-E-OPENERR, error opening DISK888:[QUEUE_DATABASE]SYS$QUEUE_MANAGER.QMAN$QUEUES;

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:36:51.69  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
-RMS-F-DEV, error in device name or inappropriate device type for operation

%%%%%%%%%%%  OPCOM   4-FEB-2000 15:36:52.20  %%%%%%%%%%%
Message from user SYSTEM on MANGLR
-SYSTEM-W-NOSUCHDEV, no such device available

13.11.3.2 原因

キュー登録システムは,次の環境下では正常に動作しません。

  • キュー・ファイルとジャーナル・ファイルの格納場所を指定する START/QUEUE/MANAGER コマンドで指定した ディレクトリ指定パラメータの値が, すべてのノードで正確に同じでなく,かつキュー・マネージャが関係するノードの 1 つで起動される場合。 これは通常,OpenVMS Cluster 環境でシステム・ディスクを追加するときやキュー登録データベースを移動するときに起こる。

  • キュー・データベース・ディスクが,キュー・マネージャを実行する予定のノードにマウントされていない場合。

キュー・マネージャに重大なエラーが発生し, キュー・マネージャが同一ノードで 2 分間に 2 回連続して強制的にクラッシュやフェールオーバを行った場合には, 通常,キュー登録システムは完全に停止します。 ただし,元のノードの起動に失敗した後で,キュー・マネージャをデータベースにアクセスできる別のノードに移動した場合は, キュー登録システムの実行を続けることができます。

13.11.3.3 問題の解決

次の操作を実行してください。

  1. キュー・マネージャが停止している場合には, START/QUEUE/MANAGER コマンドに次の項目を加えて実行します。

    • /ON 修飾子による適切なノードのリスト

    • キュー・ファイルとジャーナル・ファイルの格納場所を指定する適切な ディレクトリ指定パラメータ。 / ON 修飾子で指定するノード・リスト内のすべてのノードは, このディレクトリにアクセスできなければならない。

  2. ノード・リストに指定されたすべてのノードで, マスタ・ファイルが格納されているディスクをマウントする MOUNT コマンドを, プロシージャ SYLOGICALS.COM に追加する。 ただし,キュー・データベース・ファイルが格納されているディスクからブートされるノードは省く。 システム・ディスクの場合は, ディスクをノードに明示的にマウントする必要はない。

13.11.4 キュー・マネージャが使用できない場合

キュー・マネージャが起動しない場合や,実行を停止した場合には, キュー・マネージャは使用できなくなります。

13.11.4.1 問題の調査

問題を調査するには,SHOW CLUSTER コマンドを入力して,リストに指定されているノードが使用可能な状態であるかどうか確認します。

13.11.4.2 原因

十分なフェールオーバ・ノード・リストがキュー・マネージャに対して指定されていないため,キュー・マネージャを実行できるノードがフェールオーバ・リストにありません。

13.11.4.3 問題の解決

キュー・マネージャがいずれかのノードで実行できるよう, /ON 修飾子にシステム構成にあったノード・リストを指定して, START/QUEUE/MANAGER コマンドを入力してみてください。

どのノードを指定すればよいのか明確でない場合は, OpenVMS Cluster の残りのノードがキュー・マネージャを実行できるよう, リストの最後にアスタリスク (*) ワイルドカード文字を指定することをお勧めします。 アスタリスクを指定しておくと,ノード・リストに十分な数のノードが指定されていなくても,キュー・マネージャが使用不能になることがなくなります。

13.11.5 ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合

ある OpenVMS Cluster ノードでキュー登録システムが実行されない場合には,この項の内容をもとに対処してください。

13.11.5.1 問題の調査

次の操作を実行してください。

  1. 次のメッセージがないか, 問題が発生したときのオペレータ・ログを検索する。 これらのメッセージは,関連するノードがブートされた後, 30 秒ごとに表示される。

    %%%%%%%%%%%  OPCOM   4-FEB-2000 15:36:49.15  %%%%%%%%%%%
    Message from user SYSTEM on ZNFNDL
    %QMAN-E-COMMERROR, unexpected error #5 in communicating with node CSID 000000
    
    %%%%%%%%%%%  OPCOM   4-FEB-2000 15:36:49.15  %%%%%%%%%%%
    Message from user SYSTEM on ZNFNDL
    -SYSTEM-F-WRONGACP, wrong ACP for device_
    
  2. システム・アドレス・パラメータの SCSNODE と SCSSYSTEMID に対するノードの値を, DECnet のノード名およびノード ID に対する値と比較する。 次に例を示す。

    $ RUN SYS$SYSTEM:SYSMAN
    SYSMAN> PARAMETERS SHOW SCSSYSTEMID
    
    Parameter Name            Current    Default     Min.     Max.     Unit  Dynamic
    --------------            -------    -------    -------  -------   ----  -------
    SCSSYSTEMID                 19941          0        -1        -1 Pure-numbe
    SYSMAN> PARAMETERS SHOW SCSNODE
    
    Parameter Name            Current    Default     Min.     Max.     Unit  Dynamic
    --------------            -------    -------    -------  -------   ----  -------
    SCSNODE                 "RANDY  "    "    "    "    "    "ZZZZ" Ascii
    SYSMAN> EXIT
    $ RUN SYS$SYSTEM:NCP
    NCP> SHOW EXECUTOR SUMMARY
    
    
    
    Node Volatile Summary as of  5-FEB-2000 15:50:36
    
    Executor node = 19.45 (DREAMR)
    
    State                    = on
    Identification           = DECnet for OpenVMS VAX V7.2
    
    
    NCP> EXIT
    $ WRITE SYS$OUTPUT 19*1024+45
    19501
    

13.11.5.2 原因

DECnet のノード名とノード ID が, システム・アドレス・パラメータの SCSNODE と SCSSYSTEMID に一致しない場合には,オペレーティング・システムの内部機構であるプロセス間通信 (IPC: interprocess communication) は正常に動作しません。 また,影響を受けたノードは,キュー登録システムには使用できません。

13.11.5.3 問題の解決

次の操作を実行してください。

  1. 値が一致するように, システム・アドレス・パラメータのSCSNODE および SCSSYSTEMID, または DECnet のノード名およびノードIDを変更する。

    これらのシステム・パラメータについての詳細は, 『OpenVMS システム管理 ユーティリティ・リファレンス・マニュアル』を参照。 DECnet のノード名とノード ID の詳細は, 『DECnet for OpenVMS Guide to Networking[21]を参照。

  2. システムをリブートする。

13.11.6 複数の OpenVMS Cluster ノードでキュー登録動作が一定でない場合

次の現象が発生した場合には,この項の内容をもとにして対処してください。

  • プリント・ジョブを登録した後,同じノードでは SHOW ENTRY コマンドでジョブを表示できるが,OpenVMS Cluster 環境の別のノードでは表示できない。

  • キューを定義または変更した後,同じノードでは SHOW QUEUE コマンドで変更箇所を表示できるが,別のノードでは表示できない。

  • あるノードではジョブのプリントまたは登録を実行できるが, 別のノードでは実行できない。 JOBQUEDIS エラーを受け取る。

13.11.6.1 問題の調査

次の操作を実行してください。

  1. SHOW LOGICAL コマンドを使用して,クラスタ 内の各ノードの環境内で QMAN$MASTER 論理名を変換する。 与えられたノードに変換値が存在しない場合には, SYS$COMMON:[SYSEXE] の省略時の値を変換する。

    1 つまたは複数のノードで SHOW LOGICAL 変換値に別の物理ディスク名が表示された場合には,問題を特定したことになる。

  2. 関連ノードの 1 つがブートされたときのオペレータ・ログ・ファイルをチェックする。 次のような,JOB_CONTROL プロセスからの OPCOM メッセージを検索する。

    %%%%%%%%%%%  OPCOM   4-FEB-2000 14:41:20.88  %%%%%%%%%%%
    Message from user SYSTEM on MANGLR
    %JBC-E-OPENERR, error opening BOGUS:[QUEUE_DIR]QMAN$MASTER.DAT;
    
    %%%%%%%%%%%  OPCOM   4-FEB-2000 14:41:21.12  %%%%%%%%%%%
    Message from user SYSTEM on MANGLR
    -RMS-E-FNF, file not found
    

13.11.6.2 原因

この問題は,クラスタ内の別々のノード上の QMAN$MASTER 論理名を別々に定義したために発生します。 その結果,複数のキュー登録環境ができてしまいます。 この問題は,通常,OpenVMS Cluster 環境でシステム・ディスクを追加するときやキュー登録データベースを移動するときに起こります。

13.11.6.3 問題の解決

次の操作を実行してください。

  1. キュー・マネージャとキュー・データベースが 1 つか存在しない場合には,ステップ 2 に進む。 複数のキュー・マネージャとキュー・データベースが存在する場合には, 次の操作を実行する。

    1. QMAN$MASTER 論理名が正しく定義されていないノードの 1 つで, 次の形式でコマンドを入力する。

      STOP/QUEUE/MANAGER/CLUSTER - /NAME_OF_MANAGER=キュー・マネージャ名

      ただし,キュー・マネージャ名には停止するキュー・マネージャの名前を指定する。

    2. 無効なキュー・データベースの 3 つのファイルをすべて削除する (複数のキュー・マネージャがあるシステムでは,無効なファイルは 4 つ以上ある)。

  2. 論理名 QMAN$MASTER を,関連するシステムで割り当て直し, この論理名が定義されているスタートアップ・プロシージャ(通常は SYLOGICALS.COM) 内の定義を訂正する。

  3. 関連しないノードで STOP/QUEUE/MANAGER/CLUSTER コマンドを入力して, 有効なキュー・マネージャを停止する。

  4. START/QUEUE/MANAGER をいずれかのノードで入力して, キュー登録システムが正常に動作することを確認する。

13.12 キュー登録システムに関する問題の弊社への連絡

キューに問題が生じ,それを弊社のサポート担当者に連絡する必要がある場合には, 次の表に示す内容をご連絡ください。 この情報は,ユーザのシステムの問題を診断するのに役立ちますので, できるだけ多くの情報を連絡するようにしてください。

提供内容

説明

問題の概要

次の項目を含める。

  • 問題が起こった環境。 問題が起こったノード,ユーザ・アカウント,使用していたレイヤード製品など。

  • オペレーションに与えた影響。 どのサイト・オペレーション (プリント・チェック,重大なバッチ・ジョブなど) に影響があったか。 問題発生頻度 (1 ヶ月に 1 回の出力,1 日に数回の出力等)。

  • キュー登録システムが正常に動作しているときと, 問題が発生したときの間に起こったシステム事象。

  • 正常に動作している作業。

問題再現のための手順

問題を再現するための正確な手順と, それに必要なハードウェアまたはソフトウェアを明確に記述する。

構成情報

例:

  • OpenVMS Cluster システムの構成であるかどうか。 複数のシステム・ディスクを使用しているかどうか。

  • キュー・データベースを省略時の格納場所 (SYS$COMMON:[SYSEXE]) に保存してあるかどうか。 マスタ・ファイルをキュー・ファイルとジャーナル・ファイルとは別の格納場所に保存してあるかどうか。

SHOW QUEUE/MANAGER/FULL コマンド出力

次の例に示すように,SYSMAN を使用してこのコマンドをすべてのノードで実行すること。

$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> DO/OUTPUT SHOW QUEUE/MANAGERS/FULL
SYSMAN> EXIT
$ TYPE SYSMAN.LIS

出力ファイル SYSMAN.LIS をタイプしてみて, すべてのノードで出力が一致するかどうか確認する。

キュー・ファイルとジャーナル・ファイルの格納場所

可能であれば, (キュー・ファイルとジャーナル・ファイルの格納場所を指定する) START/QUEUE/MANAGER コマンドの ディレクトリ指定パラメータで指定した最も新しい値を探し出すこと。 何も指定しなかった場合の省略時の値は SYS$COMMON:[SYSEXE] である。

QMAN$MASTER 論理名の変換値

変換値がすべてのノードで同じかどうか確認すること。

次のコマンドを入力して結果出力を含めること。

$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> DO SHOW LOGICAL QMAN$MASTER

SHOW LOGICAL コマンドから返された変換値が物理ディスク名でない場合には,SHOW LOGICAL コマンドを各ノードの環境で再実行して, 変換値に物理装置名が含まれるまで戻り値を変換すること。

オペレータ・ログ・ファイル出力

次のコマンドを入力して,ジョブ・コントローラまたはキュー・マネージャによるメッセージ出力に対するオペレータ・ログを検索すること。

$ SEARCH SYS$MANAGER:OPERATOR.LOG/WINDOW=5 -
_$ JOB_CONTROL,QUEUE_MANAGE

複数のキュー・マネージャが存在するシステムでは, 省略時の設定でないキュー・マネージャに対しては, 追加キュー・マネージャのキュー・マネージャ名の最初の 12 文字を指定すること。 たとえば,名前が PRINT_MANAGER のキュー・マネージャの場合には,次のようにして PRINT_MANAGE と指定すること。

$ SEARCH SYS$MANAGER:OPERATOR.LOG/WINDOW=5 -
_$ JOB_CONTROL,QUEUE_MANAGE,PRINT_MANAGE

関連 DCL コマンドから戻される情報

DCL コマンドを入力すると問題が発生する場合には,この情報も含めること。

キュー・データベースのジャーナル・ファイルのコピー

BACKUP ユーティリティに /IGNORE=INTERLOCK 修飾子を指定して使用することにより,SYS$QUEUE_MANAGER.QMAN$JOURNAL ファイルのコピーを作成し,このコピーを弊社に提出すること。

複数のキュー・マネージャが存在するシステムでは, すべてのキュー・マネージャのジャーナル・ファイルのコピーを提出すること。 省略時の設定ではないキュー・マネージャのジャーナル・ファイル名の形式は, キュー・マネージャ名.QMAN$JOURNAL である。

作成されたプロセス・ダンプのコピー

次のコマンドを実行して関連するプロセス・ダンプを探し出し, そのファイルのコピーを弊社に提出すること。

$ RUN SYS$SYSTEM:SYSMAN
SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> DO DIRECTORY/DATE SYS$SPECIFIC:[SYSEXE]JBC$*.DMP, -
_SYSMAN> QMAN$*.DMP,PRTSMB.DMP,LATSYM.DMP

PRTSMB または LATSYM ではないシンビオントを使用した実行キューに問題がある場合には,そのシンビオントのプロセス・ダンプ・ファイルのコピーも含めること。 ファイル名の形式は,イメージ・ファイル名.DMP である。

SHOW QUEUE コマンドの出力

問題が個々のキューに関係する場合には, SHOW QUEUE コマンドを実行して関連するキューを表示すること。

その他の関連情報

例:

  • キュー・データベースの作成日時と更新日時。 ノードを最後にリブートしてから作成または更新したかどうか。

  • IPCACP プロセスが関連ノードに存在するかどうか。 存在しない場合には,以前に存在したプロセスを特定すること。 たとえば,システム会計情報などをチェックしてみること。



[21] このマニュアルは今までアーカイブ・マニュアル扱いでしたが, このたび OpenVMS ドキュメンテーション CD-ROMで利用できるようになりました。

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