スクリプト・ライブラリーは、ご使用の環境で自動化を支援するための Jython スクリプト・プロシージャーを提供します。
アプリケーション管理スクリプトを使用して、ご使用の環境でビジネス・レベル・アプリケーションをインストール、アンインストール、エクスポート、始動、停止、および管理します。
このタスクについて
スクリプト・ライブラリーは、最も一般的なアプリケーション・サーバー管理機能を自動化するために、プロシージャーのセットを提供します。
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 のスクリプトであることを意味しているわけではありません。
スクリプト・ライブラリーのビジネス・レベル・アプリケーション・プロシージャーは、
app_server_root/scriptLibraries/application/V70 サブディレクトリーにあります。ディレクトリーにある各スクリプトは、wsadmin ツールを起動すると自動的にロードされます。
wsadmin ツールの起動時に 独自の Jython スクリプト (*.py) を自動的にロードするには、新規サブディレクトリーを作成し、既存の自動化スクリプトを
app_server_root/scriptLibraries ディレクトリーに保存します。
ベスト・プラクティス: スクリプト・ライブラリー・プロシージャーを使用してカスタム・スクリプトを作成するには、変更されるスクリプトを新規サブディレクトリーに保存してライブラリーが上書きされないようにします。
スクリプト・ライブラリーのスクリプト・プロシージャーは編集しないでください。
bprac
AdminBLA.py スクリプトを使用して、管理機能をさまざまに組み合わせて実行できます。引数の説明と構文例は、ビジネス・レベル・アプリケーションの構成スクリプトの文書を参照してください。
以下の手順およびスクリプト・ライブラリーを使用して、空のビジネス・レベル・アプリケーションの作成、構成単位としてのアセットの追加、およびビジネス・レベル・アプリケーションの開始を行うことができます。
手順
- wsadmin ツールを起動します。
このステップを実行して、wsadmin ツールを起動してサーバーに接続するか、ツールをローカル・モードで実行します。wsadmin ツールを起動する場合は、対話モード例を使用してスクリプトを実行してください。
wsadmin ツールが起動すると、システムはスクリプト・ライブラリーのすべてのスクリプトをロードします。
- ご使用の構成にアセットをインポートします。
アセットは、ビジネス・ロジックを含むアプリケーション・バイナリーを表します。ビジネス・ロジックは、ターゲットのランタイム環境で実行され、クライアント要求に対してサービスを提供します。アセットには、任意のファイル、ZIP または Java™ アーカイブ (JAR) ファイルなどファイルのアーカイブ、または Java Platform、Enterprise Edition (Java
EE) EAR ファイルなどのアーカイブ・ファイルのアーカイブを含めることができます。アセットのその他の例としては、Enterprise JavaBeans (EJB) JAR ファイル、EAR ファイル、OSGi バンドル、メディエーション JAR ファイル、共有ライブラリー JAR ファイル、および PHP アプリケーションなどの非 Java EE コンテンツがあります。
以下の例に示すように、AdminBLA スクリプト・ライブラリーの importAsset スクリプトを実行して、アセットをアプリケーション・サーバー構成リポジトリーにインポートします。
bin>wsadmin -lang jython -c "AdminBLA.importAsset("asset.zip", "true", "true")"
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminBLA.importAsset("asset.zip", "true", "true")
- 空のビジネス・レベル・アプリケーションを作成します。
以下の例に示すように、AdminBLA スクリプト・ライブラリーの createEmptyBLA スクリプトを実行して、新規ビジネス・レベル・アプリケーションを作成します。
bin>wsadmin -lang jython -c "AdminBLA.createEmptyBLA("myBLA", "bla to control transactions")"
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminBLA.createEmptyBLA("myBLA", "bla to control transactions")
- 作成したビジネス・レベル・アプリケーションに、アセットを構成単位として追加します。
構成単位は、デプロイされたアセット、他のビジネス・レベル・アプリケーション、またはアセットのバッキングなしで、WebSphere Application Server 以外のランタイム環境にデプロイされた外部の成果物を表すことができます。
ビジネス・レベル・アプリケーションには、構成単位が含まれていることもあれば、含まれていないこともあります。複数のビジネス・レベル・アプリケーションに
同じ構成単位を追加することはできませんが、1 つのアセットを使用して複数の構成単位を
作成することができます。
以下の例に示すように、AdminBLA スクリプト・ライブラリーの addCompUnit スクリプトを実行して、asset.zip を構成単位として myBLA に追加します。
bin>wsadmin -lang jython -c "AdminBLA.addCompUnit("myBLA", "asset.zip", "default",
"myCompositionUnit", "cu description", "1", "server1", "specname=actplan1")"
以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
wsadmin>AdminBLA.addCompUnit("myBLA", "asset.zip", "default", "myCompositionUnit", "cu description", "1", "server1", "specname=actplan1")
- 構成の変更を保存します。
以下のコマンド例を使用して、構成変更を保存します。
AdminConfig.save()
- ノードを同期化します。
以下の例に示すように、AdminNodeManagement スクリプト・ライブラリー内の syncActiveNodes スクリプトを使用して、ご使用の環境内の各アクティブ・ノードを同期化します。
wsadmin>AdminNodeManagement.syncActiveNodes()
- ビジネス・レベル・アプリケーションを開始します。
以下の例に示すように、AdminBLA スクリプト・ライブラリーの startBLA スクリプトを使用して、
構成単位が構成されているデプロイメント・ターゲットで、ビジネス・レベル・アプリケーションの各構成単位を開始します。
wsadmin>AdminBLA.startBLA("myBLA")
タスクの結果
対象のデプロイメント・ターゲットで、ビジネス・レベル・アプリケーションが構成されて開始されます。
wsadmin スクリプト・ライブラリーは、関連する wsadmin コマンドと同じ出力を戻します。
例えば、AdminServerManagement.listServers() スクリプトは使用可能なサーバーのリストを戻します。AdminClusterManagement.checkIfClusterExists() スクリプトは、クラスターが存在する場合は true を、クラスターが存在しない場合は false を値として戻します。コマンドが期待される出力を戻さない場合、スクリプト・ライブラリーは、そのスクリプトが正常に実行されたときに値 1 を戻します。スクリプトが失敗すると、スクリプト・ライブラリーは、例外とともに値 -1 およびエラー・メッセージを戻します。
デフォルトでは、システムにより failonerror オプションが無効になっています。
このオプションを有効にするには、以下の例に示すように、スクリプト・プロシージャーの最後の引数として
true を指定します。
wsadmin>AdminApplication.startApplicationOnCluster("myApplication","myCluster","true")
次のタスク
ビジネス・レベル・アプリケーションの構成スクリプトを使用し、カスタム・スクリプトを作成してご使用の環境を自動化します。カスタム・スクリプトは、app_server_root/scriptLibraries ディレクトリーの新規サブディレクトリーに保存してください。