wsadmin スクリプト・ライブラリーによる管理アーキテクチャー・セットアップの自動化

スクリプト・ライブラリーは、ご使用の環境で自動化を支援するための 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/servers/V70 サブディレクトリーにあります。
  • ノードとノード・グループの管理プロシージャーは、app_server_root/scriptLibraries/system/V70 サブディレクトリーにあります。
ディレクトリーにある各スクリプトは、wsadmin ツールを起動すると自動的にロードされます。 wsadmin ツールの起動時に独自の Jython スクリプト (*.py) を自動的にロードするには、新規サブディレクトリーを作成し、既存の自動化スクリプトを app_server_root/scriptLibraries ディレクトリーに保存します。
ベスト・プラクティス ベスト・プラクティス: スクリプト・ライブラリー・プロシージャーを使用してカスタム・スクリプトを作成するには、変更されるスクリプトを新規サブディレクトリーに保存してライブラリーが上書きされないようにします。 スクリプト・ライブラリーのスクリプト・プロシージャーは編集しないでください。bprac

以下のステップを実行して、ノード・グループを作成し、そのグループに 3 つのノードを追加します。

手順

  1. オプション: wsadmin ツールを起動します。
    このステップを実行して、wsadmin ツールを起動してサーバー、ジョブ・マネージャー、または管理エージェント・プロファイルに接続するか、または wsadmin ツールをローカル・モードで実行します。wsadmin ツールを起動する場合は、対話モード例を使用してスクリプトを実行してください。
    • wsadmin ツールを起動してサーバーに接続するには、bin ディレクトリーから以下のコマンドを入力します。
      wsadmin -lang jython
    • Jython スクリプト言語を使用する wsadmin ツールをローカル・モードで起動するには、bin ディレクトリーから以下のコマンドを入力します。
      wsadmin -conntype none -lang jython
    wsadmin ツールが起動すると、システムはスクリプト・ライブラリーのすべてのスクリプトをロードします。
  2. ご使用の環境のノードを表示します。
    以下の例に示すように、AdminNodeManagement スクリプト・ライブラリーの listNodes スクリプト・プロシージャーを実行します。
    bin>wsadmin -lang jython -c "AdminNodeManagement.listNodes()"
    以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
    wsadmin>AdminNodeManagement.listNodes()
    この例では、コマンドは以下の出力を戻します。
    Node1
    Node2
    Node3
  3. ノード・グループを作成します。
    以下の例に示すように、新規ノード・グループに割り当てる名前を指定して、AdminNodeGroupManagement スクリプト・ライブラリーの createNodeGroup スクリプト・プロシージャーを実行します。
    bin>wsadmin -lang jython -c "AdminNodeGroupManagement.createNodeGroup("NodeGroup1")"
    以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
    wsadmin>AdminNodeGroupManagement.createNodeGroup("myNodeGroup")
  4. ノードをノード・グループに追加します。
    以下の例に示すように、ノード名とノード・グループ名を指定して、AdminNodeGroupManagement スクリプト・ライブラリーの addNodeGroupMember スクリプト・プロシージャーを実行し、Node1Node2、および Node3 ノードを NodeGroup1 ノード・グループに追加します。
    wsadmin -lang jython -c "AdminNodeGroupManagement.addNodeGroupMember("Node1", "NodeGroup1")"
    wsadmin -lang jython -c "AdminNodeGroupManagement.addNodeGroupMember("Node2", "NodeGroup1")"
    wsadmin -lang jython -c "AdminNodeGroupManagement.addNodeGroupMember("Node3", "NodeGroup1")"
    以下の例に示すように、対話モードを使用してこのスクリプト・プロシージャーを実行することもできます。
    wsadmin>AdminNodeGroupManagement.addNodeGroupMember("Node1", "NodeGroup1")
    wsadmin>AdminNodeGroupManagement.addNodeGroupMember("Node2", "NodeGroup1")
    wsadmin>AdminNodeGroupManagement.addNodeGroupMember("Node3", "NodeGroup1")

タスクの結果

wsadmin スクリプト・ライブラリーは、関連する wsadmin コマンドと同じ出力を戻します。 例えば、AdminServerManagement.listServers() スクリプトは使用可能なサーバーのリストを戻します。AdminClusterManagement.checkIfClusterExists() スクリプトは、クラスターが存在する場合は true を、クラスターが存在しない場合は false を値として戻します。コマンドが期待される出力を戻さない場合、スクリプト・ライブラリーは、そのスクリプトが正常に実行されたときに値 1 を戻します。スクリプトが失敗すると、スクリプト・ライブラリーは、例外とともに値 -1 およびエラー・メッセージを戻します。

デフォルトでは、システムにより failonerror オプションが無効になっています。 このオプションを有効にするには、以下の例に示すように、スクリプト・プロシージャーの最後の引数として true を指定します。
wsadmin>AdminApplication.startApplicationOnCluster("myApplication","myCluster","true")

次のタスク

スクリプト・ライブラリーのスクリプト・プロシージャーを組み合わせることにより、カスタム・スクリプトを作成してご使用の環境を自動化します。 カスタム・スクリプトは、app_server_root/scriptLibraries ディレクトリーの新規サブディレクトリーに保存してください。


トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_7libadminarch
ファイル名:txml_7libadminarch.html