スクリプト・ライブラリーは、ご使用の環境で自動化を支援するための Jython スクリプト・プロシージャーを提供します。
サーバー管理スクリプトを使用して、サーバー、サーバー・ランタイム環境、Web コンテナー、パフォーマンス・モニタリング、およびログを構成します。スクリプトを使用してサーバーを管理することもできます。
このタスクについて
スクリプト・ライブラリーは、最も一般的なアプリケーション・サーバー管理機能を自動化するために、プロシージャーのセットを提供します。
Jython スクリプト・ライブラリーを使用するには、以下の 3 つの方法があります。
- wsadmin ツールを使用して、対話モードで、Jython スクリプト・ライブラリーのスクリプトを実行します。
wsadmin ツールを起動し、以下の構文を使用して、スクリプト・ライブラリーに含まれている個々のスクリプトを
実行することができます。
wsadmin>AdminServerManagement.createApplicationServer("myNode", "myServer", "default")
- 以下の例に示すように、テキスト・エディターを使用して、Jython スクリプト・ライブラリーの複数のスクリプトを組み合わせます。
#
# My Custom Jython Script - file.py
#
AdminServerManagement.createApplicationServer("myNode", "Server1", "default")
AdminServerManagement.createApplicationServer("myNode", "Server2", "default")
# Use one of them as the first member of a cluster
AdminClusterManagement.createClusterWithFirstMember("myCluster", "APPLICATION_SERVER", "myNode", "Server1")
# Add a second member to the cluster
AdminClusterManagement.createClusterMember("myCluster", "myNode", "Server3")
# Install an application
AdminApplication.installAppWithClusterOption("DefaultApplication",
"..\installableApps\DefaultApplication.ear", "myCluster")
# Start all servers and applications on the node
AdminServerManagement.startAllServers("myNode")
カスタム・スクリプトを保存し、以下に示す構文を使用して、コマンド行から
そのカスタム・スクリプトを実行します。
bin>wsadmin -language jython -f path/to/your/jython/file.py
- カスタム・スクリプトの作成時に、構文例として Jython スクリプト・ライブラリー・コードを使用します。
スクリプト・ライブラリー内の各スクリプト例は、wsadmin スクリプトを作成する際のベスト・プラクティスを
示します。スクリプト・ライブラリー・コードは、app_server_root/scriptLibraries ディレクトリーにあります。スクリプトは、このディレクトリー内で、機能別にサブディレクトリーとして編成されています。例えば、app_server_root/scriptLibraries/application/V70 サブディレクトリーには、
製品のバージョン 7.0 以降に適用可能なアプリケーション管理タスクを実行するプロシージャーが含まれています。このスクリプト・ライブラリー・パスのサブディレクトリー V70 は、そのサブディレクトリー内のスクリプトがバージョン 7.0 のスクリプトであることを意味しているわけではありません。
スクリプト・ライブラリーの AdminServerManagement プロシージャーは、
app_server_root/scriptLibraries/servers/V70 サブディレクトリーにあります。ディレクトリーにある各スクリプトは、wsadmin ツールを起動すると自動的にロードされます。
wsadmin ツールの起動時に 独自の Jython スクリプト (*.py) を自動的にロードするには、新規サブディレクトリーを作成し、既存の自動化スクリプトを
app_server_root/scriptLibraries ディレクトリーに保存します。
ベスト・プラクティス: スクリプト・ライブラリー・プロシージャーを使用してカスタム・スクリプトを作成するには、変更されるスクリプトを新規サブディレクトリーに保存してライブラリーが上書きされないようにします。
スクリプト・ライブラリーのスクリプト・プロシージャーは編集しないでください。
bprac
AdminServerManagement.py スクリプトを使用して、管理機能をさまざまに組み合わせて実行できます。以下のステップを実行して、アプリケーション・サーバーの作成、アプリケーション・サーバーから AdminService インターフェースへの接続、Java™ 仮想マシン (JVM) 設定の構成、クラスターへのアプリケーション・サーバーの追加、およびノードへの変更の伝搬を行います。
手順
- オプション: wsadmin ツールを起動します。
このステップを実行して、wsadmin ツールを起動してサーバー、ジョブ・マネージャー、または管理エージェント・プロファイルに接続するか、または wsadmin ツールをローカル・モードで実行します。wsadmin ツールを起動する場合は、対話モード例を使用してスクリプトを実行してください。
wsadmin ツールが起動すると、システムはスクリプト・ライブラリーのすべてのスクリプトをロードします。
- アプリケーション・サーバーを作成します。
以下の例に示すように、AdminServerManagement スクリプト・ライブラリーの createApplicationServer スクリプト・プロシージャーを実行します。
bin>wsadmin -lang jython -c "AdminServerManagement.createApplicationServer("myNode", "myServer", "default")"
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminServerManagement.createApplicationServer("myNode", "myServer", "default")
- 対象のアプリケーション・サーバーを AdminService インターフェースに接続します。
AdminService インターフェースは、アプリケーション・サーバーの管理機能を操作するためのサーバー・インターフェースです。
アプリケーション・サーバーを AdminService インターフェースに接続するには、以下の例に示すように、ノード名、サーバー名、およびコネクター・タイプの各引数を指定して、AdminServerManagement スクリプト・ライブラリーの configureAdminService スクリプト・プロシージャーを実行します。
bin>wsadmin -lang jython -c "AdminServerManagement.configureAdminService("myNode", "myServer", "IPC", "JSR160RMI")
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminServerManagement.configureAdminService("myNode", "myServer", "IPC", "JSR160RMI")
- Java 仮想マシン (JVM) を構成します。
アプリケーション・サーバーの構成の一環として、ご使用のオペレーティング・システムで JVM をより効率的に使用するための設定を定義できます。
JVM は、コンパイルされた Java プログラムのバイト・コードを実行するための解釈計算エンジンです。
JVM は、Java バイト・コードをホスト・マシンのネイティブ命令に変換します。
アプリケーション・サーバーは Java プロセスの 1 つなので、
サーバー上の Java アプリケーションを稼働およびサポートするには JVM が必要です。
ノード名、サーバー名、JVM をデバッグ・モードで実行するかどうか、および JVM プロセスに渡すデバッグ引数があればそれらをすべて指定して、AdminServerManagement スクリプト・ライブラリーの configureJavaVirtualMachine スクリプト・プロシージャーを実行します。オプションとして、属性リストで追加の構成属性を指定できます。次の例を使用して JVM を構成します。
bin>wsadmin -lang jython -c "AdminServerManagement.configureJavaVirtualMachine("myNode", "myServer", "true", "mydebug", [["internalClassAccessMode", "RESTRICT"],
["disableJIT", "false"], ["verboseModeJNI", "false"]])"
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminServerManagement.configureJavaVirtualMachine("myNode", "myServer", "true", "mydebug", [["internalClassAccessMode", "RESTRICT"],
["disableJIT", "false"], ["verboseModeJNI", "false"]])
- クラスターを作成し、アプリケーション・サーバーをクラスター・メンバーとして追加します。
以下の例に示すように、AdminClusterManagement スクリプト・ライブラリーの createClusterWithFirstMember スクリプト・プロシージャーを実行します。
bin>wsadmin -lang jython -c "AdminClusterManagement.createClusterWithFirstMember("myCluster", "APPLICATION_SERVER", "myNode", "myServer")"
wsadmin>AdminClusterManagement.createClusterWithFirstMember("myCluster", "APPLICATION_SERVER",
"myNode", "myServer")
- ノードを同期化します。
構成の変更をノードに伝搬するには、以下の例に示すように、AdminNodeManagement スクリプト・ライブラリーの syncNode スクリプト・プロシージャーを実行して、
対象ノードを指定します。
bin>wsadmin -lang jython -c "AdminNodeManagement.syncNode("myNode")"
以下の例に示すように、対話モードを使用してスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminNodeManagement.syncNode("myNode")
タスクの結果
wsadmin スクリプト・ライブラリーは、関連する wsadmin コマンドと同じ出力を戻します。
例えば、AdminServerManagement.listServers() スクリプトは使用可能なサーバーのリストを戻します。AdminClusterManagement.checkIfClusterExists() スクリプトは、クラスターが存在する場合は true を、クラスターが存在しない場合は false を値として戻します。コマンドが期待される出力を戻さない場合、スクリプト・ライブラリーは、そのスクリプトが正常に実行されたときに値 1 を戻します。スクリプトが失敗すると、スクリプト・ライブラリーは、例外とともに値 -1 およびエラー・メッセージを戻します。
デフォルトでは、システムにより failonerror オプションが無効になっています。
このオプションを有効にするには、以下の例に示すように、スクリプト・プロシージャーの最後の引数として
true を指定します。
wsadmin>AdminApplication.startApplicationOnCluster("myApplication","myCluster","true")
次のタスク
スクリプト・ライブラリーのスクリプト・プロシージャーを組み合わせることにより、カスタム・スクリプトを作成してご使用の環境を自動化します。
カスタム・スクリプトは、app_server_root/scriptLibraries ディレクトリーの新規サブディレクトリーに保存してください。