WAS 小ワザ集 第9回:startServer -script オプションの利用

 View Only
Sat February 19, 2022 11:50 PM

転載者注:以下の内容はWAS Fullプロファイル/WAS Traditionalランタイムについての情報です。

オリジナル文章公開日:2011年12月9日

今回の小ワザとして、”startServer”コマンドの”-script”オプションを紹介します。

開発環境・テスト環境の利用において、WebSphere Application Server(以下、WAS)設 定値の修正、停止時間の短縮、Windows環境におけるスレッド・ダンプの容易な取得な ど、技術担当者の作業効率向上に役立つオプションです。

1. WASの起動方法

WASの起動方法としては、cron tab (UNIX系)あるいは、サービス(Windows)に登録し、OS起動時にWASを起動するという方法が多くのお客様で利用されています。

別の起動方法としては、Windows版の場合には、スタートメニューから「サーバーの始動」をクリックして起動する方法があります。(図1)

更に、”startServer”コマンド(“startServer.bat”あるいは”startServer.sh”)で起動する方法もあります。本番環境では1つ目の方法が使われるケースが多く、開発環境やテスト環境では2つ目あるいは3つ目の方法で起動している場合が多いでしょう。

2. startServerコマンド

“startServer”コマンドには、以下のようないくつかのオプションが提供されていま す。

C:\WebSphere80\AppServer\profiles\AppSrv01\bin>startServer.bat server1 -help
使用法: startServer <サーバー> [オプション]
オプション: -nowait
-quiet
-logfile <ファイル名>
-replacelog
-trace
-script [<script filename>] [-background]
-timeout <秒数>
-statusport <ポート番号>
-profileName <プロファイル>
-recovery
-help

今回紹介する”-script”オプションでは、上記の使用法にあるように、”-script” の後ろにファイル名を指定することができ、指定したファイル名(.batあるいは .shと名付けると便利)で、起動用シェルスクリプト(バッチファイル)が生成されます(以下の例では、startup_Server1.batという名前を指定)。

ただし、”-script”オプションを指定してstartServerコマンドを実行した場合、実際にはサーバーは起動されず、起動用ファイルの作成のみが行われます。

C:\WebSphere80\AppServer\profiles\AppSrv01\bin>startServer.bat server1 -script startup_Server1.bat
ADMU0116I: ツール情報は次のファイルに記録されています:
C:\WebSphere80\AppServer\profiles\AppSrv01\logs\server1\startServer.log ADMU0128I: AppSrv01 プロファイルを使用してツールを開始しています
ADMU3100I: サーバーの構成を読み取ります: server1
ADMU3300I: サーバーの起動スクリプトが作成されました: startup_Server1.bat
C:\WebSphere80\AppServer\profiles\AppSrv01\bin>

ファイル名を指定しない場合には、”start_server1.sh”あるい は”start_server1.bat”という名前で作成されます。

C:\WebSphere80\AppServer\profiles\AppSrv01\bin>startServer.bat server1 -script ADMU0116I: ツール情報は次のファイルに記録されています: C:\WebSphere80\AppServer\profiles\AppSrv01\logs\server1\startServer.log ADMU0128I: AppSrv01 プロファイルを使用してツールを開始しています
ADMU3100I: サーバーの構成を読み取ります: server1
ADMU3300I: サーバーの起動スクリプトが作成されました: start_server1.bat

作成されたファイルには、WAS起動時に利用する各種設定が記述されています。 さて、ここまでで、オプションの指定の仕方を理解していただきましたが、そもそも、このオプションを利用するメリットは一体何でしょうか。以下にメリットを記します

3. startServer -scriptオプションの利点

“-script” オプションのメリットとして、大きく2つが挙げられます。以下にそれらについて説明をいたします。

メリットの1つめとしては、テキスト・エディターで容易に修正可能な点が挙げられます。

  • 作成されたファイルはテキストファイルなので、記述されている各種オプションパラメーターの修正が容易です。
  • 起動パラメーター設定やJVM関連パラメーター設定(JVMヒープサイズやGCオプション など)を試行錯誤しながら適切な値を模索する場合(設定値の修正を何度も繰り返し試 す場合)には、管理コンソールでのGUI操作に比べると効率的です。

ただし、”-script”オプションを指定して作成された起動スクリプトに対する修正は、 各種WAS構成ファイルには反映されません。従いまして、(スクリプト内の値の修正、サ ーバー再起動を繰り返し、試行錯誤の後に決定した)値を各種WAS構成ファイルに反映さ せるには、WAS管理コンソールから修正を行う必要がございます。

また、”-script”オプションを指定して起動スクリプトを生成した後に、管理コンソールから行った変更は起動スクリプトに反映はされませんので、スクリプトを生成し直す必要がございます。

メリットの2つめは、WASプロセスをフォアグラウンドで起動できる点です。

  • コマンド実行シェル(コマンドプロンプト)に標準出力・標準エラーが表示されるため、Windows環境においては、ログのモニタリングが容易です。
  • WASの停止時間を短縮できます (Ctrl + C で強制終了)。


  • スレッド・ダンプ(javacore)を容易に生成できる(Crtl + Break で生成) killコマンドが使えないWindows環境においてはとても便利です。

4. まとめ

今回の小ワザとして、startServerコマンドの”-script”オプションを紹介しました。開発環境やテスト環境において、「WASの起動オプションやJVM設定などを試行錯誤しながら設定値の修正を行い、その都度、WASの再起動を実施する」といった作業を実施される場合には、このオプションを試してみてはいかがでしょうか。

5. 参考

startup_Server1.bat ファイル

@REM startup_Server1.bat
@REM Generated: Sat Nov 19 09:33:11 GMT+09:00 2011
@setlocal @echo off
@REM Bootstrap values ...
cd C:\WebSphere80\AppServer\profiles\AppSrv01\bin
call "C:\WebSphere80\AppServer\profiles\AppSrv01\bin\setupCmdLine.bat" @REM For debugging the server process:
@REM set DEBUG=-Djava.compiler=NONE -Xdebug –Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=7777
@REM Environment Settings

WAS 小ワザ集:目次ページにもどる

Statistics
0 Favorited
7 Views
0 Files
0 Shares
0 Downloads