1. Windowsサービスとrcスクリプト

1.1. WebOTXのサービスについて

WebOTXのサービスについて説明します。

1.1.1. Windows

Windowsのサービスとして以下のサービスがあります。

1.1.2. HP-UX

HP-UXではマシン起動時にサービスが起動できるよう以下の起動スクリプトを提供しています。 ただしObjectSpinnerに関してはWindowsと同様マシン起動時には起動しません。

1.1.3. Linux

Linuxではマシン起動時にサービスが起動できるよう以下の起動スクリプトを提供しています。 ただしObjectSpinnerに関してはWindowsと同様マシン起動時には起動しません。

1.2. サービスの起動・停止方法

WebOTXのサービス全体を起動および停止する方法について説明します。 デフォルトの設定ではマシン起動時にサービスが起動するようになっています。ObjectSpinnerのサービスはWebOTXとしては利用しませんが、下記と同様の方法で起動・停止することができます。

Caution
UNIXでの起動停止の操作はrootユーザで実行してください。

1.2.1. Windows

「WebOTX AS Agent Service」サービスを起動・停止します。サービスコントロールマネージャもしくはnet start、net stopコマンドより実行できます。n

例) サービスの起動
> net start "WebOTX AS Agent Service"
例) サービスの停止
> net stop "WebOTX AS Agent Service"

サービス起動コマンド実行直後はまだ起動処理が行われています。サービスの起動完了は[ 3. ドメイン > 3.3. ドメインの確認 > 3.3.2. ドメインの起動完了確認 ] より、ドメインの起動処理完了をもって確認してください。

サービス停止時、WebOTXドメインの停止処理時間が定められたタイムアウト値を超過すると、サービス制御マネージャによって「ローカルコンピュータのWebOTX Agent Service サービスを停止できません。」と出力されることがあります。しかしながら、このメッセージが出力されても、実際には停止処理は引き続き行われています。よって、プロセスのストールなどの異常が発生していなければ最終的には停止することになります。

Caution
net start、net stop コマンドで起動する場合、コマンドプロンプトは管理者権限で起動してください。

1.2.2. HP-UX

/sbin/init.d/WOAgentSvc に起動・停止スクリプトがあります。スクリプトを実行することによりサービスの起動、停止が行えます。

例) サービスの起動
# /sbin/init.d/WOAgentSvc start 
例) サービスの停止
# /sbin/init.d/WOAgentSvc stop 

1.2.3. Linux

/etc/init.d/WOAgentSvc に起動・停止スクリプトがあります。スクリプトを実行することによりサービスの起動、停止が行えます。

例) サービスの起動
# /etc/init.d/WOAgentSvc start 
例) サービスの停止
# /etc/init.d/WOAgentSvc stop 

1.3. サービスの設定

Windows版のサービスは、プロパティファイルを持っています。ここに記述されたコマンドを実行してドメイン起動/停止を行っています。

${AS_INSTALL}\config\woasinfo.properties

この設定を変更することにより、コマンド実行待ち時間を変更することが可能です。

表1.3-1
項目 説明 既定値
startcmd ドメイン起動コマンドを記述します。 記述がない、不正記述などの場合はサービス起動に失敗します。 既定の状態では、startcmdに記述された起動コマンドが実行されると、管理ドメインの起動が行われます。 "${AS_INSTALL}\bin\WOAgentSvc.bat" start-domain
stopcmd ドメイン停止コマンドを記述します。 記述がない、不正記述などの場合はサービス停止に失敗します。 既定の状態では、stopcmdに記述された停止コマンドが実行されると、管理ドメインの停止が行われます。 "${AS_INSTALL}\bin\WOAgentSvc.bat" stop-domain
woascmdtimeout startcmd/stopcmdで指定したコマンド実行時のタイムアウトを、秒単位で指定します。 0を設定すると、ドメインの停止が非同期実行となり、コマンドの終了を待ち合わせません。 ドメインの起動は、本項目の値によらず非同期実行となります。 1800
pidfilepath サービスからドメインを起動した場合、サービスプロセスからエージェントプロセスを監視するために必要となるプロセスIDの取得先ファイル(appserv_pid)を指定します。 取得先ファイルのパスを監視したいドメインのパスに変更することで、監視対象のエージェントプロセスを変更することができます。 サービスプロセスが監視対象のエージェントプロセスの停止を検出した場合、自動でstopcmdに記述された停止コマンドが実行されます。
監視対象のエージェントプロセスをユーザドメインに変更した場合、管理ドメインの「管理対象ドメインの起動の有効化」を有効にしていると、 ユーザドメインのエージェントプロセス停止を契機に管理ドメインの停止が行われ、起動を有効化している全てのドメインが停止されますのでご注意ください。
${AS_INSTALL}\domains\WebOTXAdmin\config\appserv_pid

1.4. Windowsサービスアカウントの変更

Windowsサービスアカウントを変更する方法については、[ 4. ユーザ管理 > 4.4. その他の管理ユーザ > 4.4.2. Windowsサービスアカウント ]を参照してください。

1.5. サービス / rcスクリプト実行時の動作処理

サービス/スクリプトを実行した場合、それらに対して行った要求は、管理ドメイン(WebOTXAdmin)に実行されることになります。

1.5-a.jpg
図1.5-1

サービス/スクリプトの起動処理が行われると、管理ドメインは、自身の管理するユーザドメインの起動を行い、ユーザドメインの起動が完了するとステータスを起動中(running)に変更します。

サービス/スクリプトの停止処理が行われると、管理ドメインは、自身の管理するユーザドメインの停止を実行した後、ステータスを停止(not running)に変更します。

1.5.1. タイムアウト値設定

マシンの負荷が高い場合や、アプリケーションを多数配備した場合、ユーザドメインの起動処理、停止処理に時間を要し、結果、処理が遅延し、タイムアウトエラーが発生する場合があります。 このような場合、以下の箇所を考慮しタイムアウト値を設定する必要があります。

サービスに対するタイムアウト値は[1.3. サービスの設定]を確認してください。 各ドメインに対してタイムアウトを設定する場合、${INSTANCE_ROOT}\config配下に、otxadmin.propertiesファイルを作成し、下記の例のようにパラメータを設定することで、タイムアウト値を変更することが可能です。

${INSTANCE_ROOT}\config\otxadmin.properties
例)
waitDomainTimeout=180
waitDomainRunning=1200
waitDomainStopped=1800
表1.5.1-1
項目 説明 既定値
waitDomainTimeout ドメインが停止状態から開始状態に至るまでのタイムアウト値です。単位は秒となります。 なし(※1)
waitDomainRunning ドメインが開始状態から稼動状態に至るまでのタイムアウト値です。単位は秒となります。 なし(※1)
waitDomainStopped ドメインが稼動状態から停止状態に至るまでのタイムアウト値です。単位は秒となります。 1800

(※1)既定では、停止状態から稼動状態までのタイムアウト値が20分となります。

ドメイン全てに対して、一括でタイムアウト値を設定する場合、${INSTANCE_ROOT}\config配下ではなく${AS_INSTALL}\config配下にotxadmin.propertiesファイルを配置してください。