4.2.3 JP1/AJS3のサービスの設定を変更する必要がある場合(Windows限定)
ここでは,JP1/AJS3のサービスの設定を,デフォルトから変更する必要がある場合について説明します。また,他プログラムと連携するときの,JP1/AJS3のサービスの設定について説明します。
- 〈この項の構成〉
(1) JP1/AJS3が提供するサービスのアカウントの変更について
ジョブを実行する環境によって,JP1/AJS3のサービスのアカウントをユーザーアカウントに変更した方がよい場合があります。運用に応じてJP1/AJS3のサービスに設定するユーザーアカウントについて検討してください。
次に示すサービスのアカウントを変更する必要がある場合について説明します。
-
JP1/AJS3サービス
-
JP1/AJS3 Databaseサービス
-
JP1/AJS3 Console Managerサービス
-
JP1/AJS3 Console Agentサービス
-
JP1/AJS3 Check Managerサービス
-
JP1/AJS3 Check Agentサービス
-
JP1/AJS3 Queueless Agentサービス
-
JP1/AJS3 Queueless File Transferサービス
組み込みDBがバージョン10-00より前の方式の場合は,JP1/AJS3 Database ClusterServiceサービスのアカウントも変更する必要があります。
(a) ジョブ実行多重度を標準より高くする場合,またはデスクトップヒープ領域不足を発生させたくない場合
JP1/AJS3では,実行するジョブごとに新たに確保したWindowsのデスクトップヒープ領域(システムのリソース)を使用します。そのため,同時に多くのジョブを実行すると,OS全体で使用できるデスクトップヒープ領域が不足し,ジョブが異常検出終了になることがあります。なお,JP1/AJS3サービスおよびジョブごとのデスクトップヒープ領域の使用量は環境に依存します。
次の方法を適用することで,OS全体でデスクトップヒープ領域が不足する頻度を低くできます。ただし,どの方法を適用しても,デスクトップヒープ領域が不足することを完全には防止できません。Windows Server 2012またはWindows Server 2008では,OS全体で使用できるデスクトップヒープ領域が拡張されて,デスクトップヒープ領域が不足しにくくなっているため,次の方法を適用する必要はありません。詳細についてはMicrosoftのホームページなどで情報を確認してください。
-
JP1/AJS3サービスのアカウントとジョブを実行するユーザーアカウントを同じにする
JP1/AJS3サービスのアカウントと異なるユーザーアカウントでジョブを実行すると,ジョブの実行ごとに,JP1/AJS3サービスが使用しているデスクトップヒープ領域とは別のデスクトップヒープ領域が使用されます。そのため,JP1/AJS3サービスのアカウントとは異なるユーザーアカウントから同時に多くのジョブを実行すると,デスクトップヒープ領域が不足することがあります。
JP1/AJS3サービスのアカウントとジョブを実行するユーザーアカウントを同じにすることによって,JP1/AJS3サービスの起動時に確保した一つのデスクトップヒープ領域を,JP1/AJS3サービスと共有して使用できます。そのため,OS全体でデスクトップヒープが不足する頻度を低くできます。
なお,ドメインユーザーを使用する場合は,ジョブを実行するユーザーアカウントとJP1/AJS3サービスのアカウントの両方に「ドメイン名\ユーザー名」の形式で指定し,ドメイン名のあとには「.local」を指定しないでください。
ドメイン環境に属しているホストでJP1/AJS3サービスのアカウントに「.\ユーザー名」の形式で指定しても,サービスコントロールマネージャーによって,ドメインユーザーでJP1/AJS3のプロセスが起動されることがあります。
-
「ジョブ実行時にアクセストークンを再利用するための設定」を有効にする
ジョブ定義の[実行先サービス]に[標準]を指定している場合,アクセストークンを再利用するための設定を有効にすることで,ジョブの実行ごとにデスクトップヒープ領域を確保しなくなります。そのため,同時に多くのジョブを実行しても,OS全体でデスクトップヒープ領域が不足する頻度を低くできます。設定の詳細については,マニュアル「JP1/Automatic Job Management System 3 構築ガイド1 6.2.17 ジョブ実行時にアクセストークンを再利用するための設定」を参照してください。
-
デスクトップヒープ領域のサイズを変更する
Windowsのレジストリー情報を編集してデスクトップヒープ領域のサイズを変更できます。レジストリー編集方法については,Microsoftのホームページなどでデスクトップヒープ関連のサポート技術情報を参照してください。
JP1/AJS3サービスおよびジョブごとのデスクトップヒープ領域の使用量は,使用している環境に依存します。また,デスクトップヒープ領域のサイズを不用意に変更すると,システム全体に影響を与えるおそれがあります。このため,デスクトップヒープ領域のサイズを変更する場合は,十分に検証した上で実施してください。
(b) ネットワーク資源を使用する場合
実行するジョブを共有しているなど,ネットワーク資源を使用する場合は,「JP1/AJS3サービス」をユーザーアカウントに変更して運用してください。
また,ジョブのバッチファイルなどでネットワークドライブに接続している場合,JP1/AJS3サービスのアカウントとジョブを起動するユーザーアカウントを同じにすることによって,同じユーザーアカウントで起動した別のジョブからも,ネットワークドライブを切断できます。
なお,ジョブの詳細定義で指定するファイル名には,ネットワークドライブ名から始まるパスではなく,「\\コンピュータ名\共有フォルダ\ファイル名」のようにコンピュータ名から始まるパスを指定してください。
(c) スケジューラーサービスを多重起動した場合で,デスクトップヒープ領域不足を発生させたくない場合
システムの環境によって,ある数以上のスケジューラーサービスを多重起動したときにエラーとなることがあります。その際,Windowsイベントログに「イベントID:26 説明:アプリケーションを正しく初期化できませんでした。」というエラーメッセージが出力されます。これはシステムのリソース(デスクトップヒープ領域)が不足した場合に発生します。
JP1/AJS3では,スケジューラーサービスごとに多数の制御プロセスを起動するため,スケジューラーサービスを多重起動にすると,起動したスケジューラーサービス分のデスクトップヒープ領域を使用します。このため,デスクトップヒープ領域が不足することがあります。この場合も,JP1AJS3サービスとほかのサービスプログラムのデスクトップヒープ領域を共有しないようにするためには,JP1/AJS3サービスのアカウントをシステムアカウントからユーザーアカウントに変更して運用してください。
(d) JP1/AJS3のサービスをユーザーアカウントで運用する場合の権限
次に示すサービスをユーザーアカウントで運用する場合に設定する権限について説明します。
-
JP1/AJS3サービス
-
JP1/AJS3 Databaseサービス
-
JP1/AJS3 Console Managerサービス
-
JP1/AJS3 Console Agentサービス
-
JP1/AJS3 Check Managerサービス
-
JP1/AJS3 Check Agentサービス
-
JP1/AJS3 Queueless Agentサービス
-
JP1/AJS3 Queueless File Transferサービス
組み込みDBがバージョン10-00より前の方式の場合は,JP1/AJS3 Database ClusterServiceサービスも設定する必要があります。
上記のサービスをユーザーアカウントで運用する場合は,次の権限を持つユーザーを該当するサービスに設定します。
-
Administrators権限
-
ローカルログオンを許可する
-
サービスとしてログオン
-
プロセスレベルトークンの置き換え
-
プロセスのメモリークォータの増加
これらの権限のないユーザーを設定した場合は,動作を保証できません。
ローカルセキュリティポリシーに上記の権限を設定してください。
なお,JP1/AJS3サービスの起動アカウントをシステムアカウントからユーザーアカウントに変更すると,使用できるデスクトップヒープの領域サイズが異なるため,同時に実行できるジョブ(バッチファイル,スクリプトファイル)数が変わることがあります。
- 注意事項
-
-
すべての論理ホストと物理ホストのJP1/AJS3サービスは,同一のユーザーアカウントにしてください。
-
JP1/AJS3サービスの起動アカウントに必要な権限を設定したあと,権限を有効にするためにはJP1/AJS3サービスを再起動してください。
-
Active Directoryを使ったドメイン環境で運用している場合は,ドメインコントローラーがあるホストとドメイン内のホストで設定手順が異なります。詳細については,マニュアル「JP1/Base 運用ガイド」のActive Directory環境でOSユーザーにユーザー権利を与える方法についての説明を参照してください。
-
(2) メールシステムと連携する場合の変更について
特に「JP1/AJS3サービス」のアカウントと合わせる必要はありません。
メールシステム連携をJP1/AJS3 Mailサービス上で実行している場合は,メールのプロファイルを定義したユーザーアカウントをJP1/AJS3 Mailサービスに設定します。また,その他に,次の権限も設定します。
-
ローカルログオン
-
サービスとしてログオン
これらの権限のないユーザーを設定した場合は,動作を保証できません。
ローカルセキュリティポリシーに上記の権限を設定してください。
(3) JP1/Power Monitorと連携する場合の変更について
JP1/Power Monitorと連携して電源制御を実行する場合は,必ずJP1/Baseの起動管理機能を使って起動してください。その場合には,「JP1/AJS3サービス」の起動方法を「手動」にしてください。
(4) JP1/Baseの起動管理機能を使用する場合の変更について
JP1/Baseの起動管理機能では,標準で,「JP1/AJS3サービス」が自動起動するように設定されています。
- 起動管理機能を使う場合
-
「JP1/AJS3サービス」の起動方法を「手動」にしてください。
なお,JP1/Baseをバージョン8からバージョン9以降にバージョンアップした場合は,JP1/Baseの起動順序定義ファイルJp1svprm.datに記述されている[Jp1AJS2MONITOR]の自動起動パラメーターをコメントアウトしてください。
- 起動管理機能を使わない場合
-
「JP1/AJS3サービス」の起動方法を「自動」にしてもかまいません。