1 回の REST 呼び出しでの複数の登録済みホストへのファイルのアップロード

POST REST API を呼び出すことによって、 1 つの集合の複数の登録済みホストへのファイルのアップロードを集合コントローラーから行うことができます。これらのファイル転送操作は、IBM JMX REST Connector 内で起こります。

始める前に

集合コントローラーを作成します。『Liberty 集合の構成』を参照してください。

各リモート・ホスト・コンピューターを集合コントローラーに登録します。『ホスト・コンピューターの Liberty 集合への登録』を参照してください。

手順

  1. オプション: REST API についての説明を読むため、ブラウザーで https://controller_host_name:controller_port_name/IBMJMXConnectorREST/api にアクセスし、 コントローラー管理ユーザー ID とパスワードを入力してログインします。 REST API 資料を表示するには、コントローラーが実行中である必要があります。

    「ファイル転送」セクションおよび「ルーティング」セクションに、 集合コントローラーとメンバー・サーバーまたは登録済みホストとの間のファイル転送に使用される API についての説明があります。

    collectiveController-1.0 フィーチャーは、ファイル転送機能を提供する restConnector-1.0 フィーチャーを有効にします。したがって、 REST API を表示するため、またはファイル転送操作を実行するために、集合コントローラーがフィーチャー・マネージャーに restConnector-1.0 を指定する必要はありません。スタンドアロン・サーバー構成では、 REST API を表示するために restConnector-1.0 フィーチャーが必要な場合があります。

  2. 集合コントローラーの HTTP ヘッダーにターゲット・ホストをリストします。
    com.ibm.websphere.collective.hostNames=comma-separated_list_of_target_hosts

    オプションで、以下のような他の HTTP ヘッダーを設定します。

    • ファイルのアップロードを実行し、そのアクションを非同期で実行するかどうかを指定します。 デフォルトは false です。デフォルトを変更するには、booleantrue を指定します。
      com.ibm.websphere.jmx.connector.rest.asyncExecution=boolean
    • ファイルのアップロード後に実行する一連のアクションを指定します。 既存の組み込みアクションは、入力 Liberty アーカイブ内の Liberty サーバーを集合に参加させる com.ibm.websphere.jmx.connector.rest.postTransferAction.join です。このヘッダーを使用して、他のカスタム・アクションをリストできます。複数のカスタム・アクションをリストする場合は、 URL エンコードしたコンマ文字で区切ります。
      com.ibm.websphere.jmx.connector.rest.postTransferAction=comma-separated_list_of_actions
      カスタム・アクションを使用可能にするために、 以下の構成を集合コントローラーの server.xml に追加します。
      <hostAccess enableCustomActions="true" />
    • 転送後のアクションに渡すためのオプション・リストを指定します。 このオプション・リストは、ヌルであるか、または、postTransferAction ヘッダーのリストと同数のリスト項目を含んでいる必要があり、 各オプションの項目索引はそれに対応するアクションの索引と一致していなければなりません。複数のオプションをリストする場合は、 URL エンコードしたコンマ文字で区切ります。
      com.ibm.websphere.jmx.connector.rest.postTransferAction.options=comma-separated_list_of_options

      組み込みアクション com.ibm.websphere.jmx.connector.rest.postTransferAction.join を指定する場合、 対応するオプションは次のとおりでなければなりません。

      --user=adminUser --password=adminPw --keystorePassword=keystorePw [--rpcUser=rpcUser --rpcPassword=rpcPw]
    • 転送アクションが実行される前に設定する環境変数を指定します。このヘッダーのペイロードは、 各 JSON キーが環境変数であり、各 JSON 値がそれに対応する値である、JSON オブジェクトです。システム・パスを指定する場合はスラッシュ (/) を使用します。
      com.ibm.websphere.jmx.connector.rest.transferEnvVars=list_of_environment_variables
  3. POST 操作を使用して、複数の登録済みホストへファイルをアップロードします。
    1. ターゲット・ロケーションが、対象のホストの構成可能書き込みディレクトリー内にあることを確認します。
    2. POST 操作を呼び出します。
      POST https://controller_host:controller_port/IBMJMXConnectorREST/file/{filePath}[?expandOnCompletion=boolean&local=boolean]
      • {filePath} は、ターゲット・ロケーションを指定する、UTF-8 URL エンコードした絶対パスです。例えば、 ファイルが C:/temp/myFile.txt の場合、パスは C%3A%2Ftemp%2FmyFile.txt です。
      • expandOnCompletion は、アップロードされたアーカイブの自動解凍を切り替える、オプションの照会パラメーターです。デフォルト値は false です。
      • local は、アップロードするファイルが既にコントローラー内にあるかどうかを指定する、オプションの照会パラメーターです。true の場合、この POST 要求のペイロードは、コントローラー内のソース・ファイル・ロケーションを表すストリングになります。デフォルト値は false です。
      • local 照会パラメーターが使用されない場合、または明示的に false に設定されている場合、POST ペイロードはソース・ファイル自体のバイナリー・コンテンツになります。

次のタスク

REST 呼び出しの状況または詳細を取得します。『複数の登録済みホストに対する REST 呼び出しの状況の取得』を参照してください。


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

ファイル名: twlp_collective_file_transfer_multihost.html