wsadmin スクリプトによるデータ・アクセス・リソース構成の自動化

スクリプト・ライブラリーは、ご使用の環境で自動化を支援するための Jython スクリプト・プロシージャーを提供します。 リソース管理スクリプトを使用して、Java™ Database Connectivity (JDBC) 構成を構成および管理します。

このタスクについて

スクリプト・ライブラリーは、最も一般的なアプリケーション・サーバー管理機能を自動化するために、プロシージャーのセットを提供します。 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/resources/JDBC/V70 サブディレクトリーにあります。 ディレクトリーにある各スクリプトは、wsadmin ツールを起動すると自動的にロードされます。 wsadmin ツールの起動時に独自の Jython スクリプト (*.py) を自動的にロードするには、その自動化スクリプトを app_server_root/scriptLibraries ディレクトリー内の新規サブディレクトリーに保存します。
ベスト・プラクティス ベスト・プラクティス: スクリプト・ライブラリー・プロシージャーを使用してカスタム・スクリプトを作成するには、変更されるスクリプトを新規サブディレクトリーに保存してライブラリーが上書きされないようにします。 スクリプト・ライブラリーのスクリプト・プロシージャーは編集しないでください。bprac

スクリプトを使用して、管理機能をさまざまに組み合わせて実行できます。 以下のプロシージャーの組み合わせ例を使用して、JDBC プロバイダーとデータ・ソースを構成します。

手順

  1. ノード・マネージャー上に、すべての必要な JDBC ドライバー・ファイルがインストールされていることを検証します。 ユーザー定義の JDBC プロバイダーを構成する場合は、ドライバー・ファイルについての情報のデータベース資料をチェックします。
  2. オプション: wsadmin ツールを起動します。
    このステップを実行して、wsadmin ツールを起動してサーバーに接続するか、ツールをローカル・モードで実行します。wsadmin ツールを起動する場合は、このトピック内の対話モード例を使用してスクリプトを実行してください。
    • wsadmin ツールを起動してサーバーに接続するには、bin ディレクトリーから以下のコマンドを入力します。
      bin>wsadmin -lang jython
    • wsadmin ツールをローカル・モードで起動して Jython スクリプト言語を使用するには、bin ディレクトリーから以下のコマンドを入力します。
      bin>wsadmin -conntype none -lang jython
    wsadmin ツールが起動すると、システムはスクリプト・ライブラリーのすべてのスクリプトをロードします。
  3. JDBC プロバイダーを構成します。

    必要な引数を指定して、スクリプト・ライブラリーの createJDBCProvider プロシージャーを実行します。 スクリプトを実行するには、ノード名、サーバー名、新規 JDBC プロバイダーに割り当てる名前、および実装クラス名を指定します。 オプションで、追加の属性を [["attr1", "value1"], ["attr2", "value2"]] というフォーマットで指定できます。特定のベンダー JDBC ドライバーのカスタム・プロパティーは、アプリケーション・サーバー・データ・ソース上に設定する必要があります。 使用可能なカスタム・プロパティーの詳細については、ご使用のデータベースの資料を参照してください。

    以下の例では、ご使用の構成で JDBC プロバイダーを作成します。
    bin>wsadmin -lang jython -c "AdminJDBC.createJDBCProvider("myNode", "myServer", "myJDBCProvider",
     "myImplementationClass", [["description", "testing"], ["xa", "false"], ["providerType", "provType"]])"
    以下の例に示すように、対話モードを使用してスクリプト・プロシージャーを実行することもできます。
    wsadmin>AdminJDBC.createJDBCProvider("myNode", "myServer", "myJDBCProvider", "myImplementationClass",
     [["description", "testing"], ["xa", "false"], ["providerType", "provType"]])
    このスクリプトは、新規 JDBC プロバイダーの構成 ID を戻します。
  4. テンプレートを使用して、データ・ソースを構成します。

    必要な引数を指定して、スクリプト・ライブラリーの createDataSourceUsingTemplate プロシージャーを実行します。 スクリプトを実行するには、ノード名、サーバー名、 JDBC プロバイダー名、使用するテンプレートの構成 ID、および新規データ・ソースに割り当てる名前を指定します。 オプションで、追加の属性を [["attr1", "value1"], ["attr2", "value2"]] というフォーマットで指定できます。

    以下の例では、テンプレートを使用してご使用の構成でデータ・ソースを作成します。
    bin>wsadmin -lang jython -c "AdminJDBC.createDataSourceUsingTemplate("myNode", "myServer", "myJDBCProvider",
     "Derby JDBC Driver DataSource(templates/system|jdbc-resource-provider-templates.xml#DataSource_derby_1)",
     "myDataSource", [["authDataAlias", "myalias"], ["authMechanismPreference", "BASIC_PASSWORD"],
     ["description", "testing"], ["jndiName", "dsjndi1"], ["logMissingTransactionContext", "true"],
     ["statementCacheSize", "5"]])"
    以下の例に示すように、対話モードを使用してスクリプト・プロシージャーを実行することもできます。
    wsadmin>AdminJDBC.createDataSourceUsingTemplate("myNode", "myServer", "myJDBCProvider", "Derby JDBC Driver 
     DataSource(templates/system|jdbc-resource-provider-templates.xml#DataSource_derby_1)", "myDataSource", 
     [["authDataAlias", "myalias"], ["authMechanismPreference", "BASIC_PASSWORD"], ["description", "testing"],
     ["jndiName", "dsjndi1"], ["logMissingTransactionContext", "true"], ["statementCacheSize", "5"]])
    このスクリプトは、新規データ・ソースの構成 ID を戻します。

タスクの結果

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_7libresource
ファイル名:txml_7libresource.html