6.3.7 admstartprc,admstopprc,およびadmreloadコマンド実行時の考慮
admstartprc,admstopprc,およびadmreloadコマンドを使用してプロセスを起動または停止する場合の注意について説明します。
- 〈この項の構成〉
(1) admstartprcコマンドで複数のプロセスを起動する場合
admstartprcコマンドで複数のプロセスを起動する場合,次に示す動作をします。
(a) -pオプションが指定されない場合
プロセス監視定義ファイルにorderが設定されていても,すべてシリアルに起動します。
(b) -pオプションが指定された場合
プロセス監視定義ファイルにorderが設定されていても,すべて並列に起動します。したがって,異なるorderが指定されているプロセスでも,同時に起動することになります。指定されたプロセスの定義を読み込んで,orderごとに並列に実行する処理は行いません。
プロセス起動のタイミングが「command」(admstartprcコマンドによる起動)の場合,プロセス監視定義ファイルに「order=XXX」が設定されていても,orderの設定は起動時には無効になります。
(2) admstopprcコマンドで複数のプロセスを停止する場合
admstopprcコマンドで複数のプロセスを停止する場合,次に示す動作をします。
(a) -pオプションが指定されない場合
プロセス監視定義ファイルにorderが設定されていても,すべてシリアルに停止します。
(b) -pオプションが指定された場合
プロセス監視定義ファイルにorderが設定されていても,すべて並列に停止します。したがって,異なるorderが設定されているプロセスでも,同時に停止することになります。指定されたプロセスの定義を読み込んで,orderごとに並列に実行する処理は行いません。
(3) admreloadコマンドで削除した定義のプロセスを停止する場合
admreloadコマンドの-fオプションを指定した場合,削除したプロセス監視定義に対応するプロセスが生存していれば,そのプロセスを停止します。このときの処理は,運用定義/ADM/set_parallel_modeが"Y"の場合でも,プロセス起動順の逆順にシリアルに停止します。
(4) admreloadコマンドで変更した定義のプロセスを停止/起動する場合
admreloadコマンドの-fオプションを指定した場合,変更したプロセス監視定義に対応するプロセスが生存していれば,そのプロセスを停止したあとに再起動します。このときの処理は,運用定義/ADM/set_parallel_modeが"Y"の場合でも,プロセスの停止と再起動をシリアルに行います。
また,次のように,プロセス監視定義ファイル内のorderを変更した場合,admreloadコマンドでは「変更」として扱います。
- (変更前)
OSAgent,order=1:〜 ↓
- (変更後)
OSAgent,order=2:〜........
このときは,admreloadコマンドの引数には,「OSAgent」だけを指定します。「OSAgent,order=1」を指定した場合は,エラーとなります。
-
出力例
% admreload -i OSAgent -l changed:OSAgent ORDER: before:1 after:2