Compaq OpenVMS
システム管理者マニュアル


前へ 次へ 目次 索引



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

キューを作成し起動するためには,その前にキュー・マネージャとキュー・データベースを設定しておかなければなりません。本章では, 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 コマンドについての詳細は,『Compaq OpenVMS DCL ディクショナリ』を参照してください。

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

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

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

OpenVMS Cluster 環境においてキューを管理するときのキュー・マネージャの働きを 図 13-1 に示します。

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


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

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

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

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

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

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

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

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

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

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

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] に存在しない場合には,キュー・データベースの格納場所を指定する必要があります。省略時のファイル格納場所を変える理由には,次のようなものがあります。

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

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

マスタ・ファイルの格納場所の指定方法については, 第 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 項 を参照。

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 キュー・データベース・ファイルの格納位置



前へ 次へ 目次 索引