WebSphere MQ File Transfer Edition v7.0.3 for z/OS 概説/構成/機能 IBM Software Group 日本アイ・ビー・エム株式会社
by user
Comments
Transcript
WebSphere MQ File Transfer Edition v7.0.3 for z/OS 概説/構成/機能 IBM Software Group 日本アイ・ビー・エム株式会社
® IBM Software Group WebSphere MQ File Transfer Edition v7.0.3 for z/OS 概説/構成/機能 日本アイ・ビー・エム株式会社 ソフトウェア事業 System z ミドルウェア・ソフトウェア・テクニカルソリューション © 2011 IBM Corporation IBM Software Group | 目次 1章 WebSphere MQ File Transfer Edition(WMQFTE)概説 2章 WMQFTE 構成 3章 WMQFTE 機能 当資料は、WMQFTE v7.0.3の概要についてまとめたものです。 当資料に含まれる全ての情報は、利用者の責任において使用されるべきものであり、特定環境への適 用は利用者の判断に依存します。 (更新履歴) 2011/12/12 初版 2 © 2011 IBM Corporation IBM Software Group | 1章 WMQFTE 概説 3 © 2011 IBM Corporation IBM Software Group | 目次 ファイル転送の現状と課題 IBMのソリューション WebSphere MQ File Transfer Edition(WMQFTE) 製品情報 WMQFTEの特徴 WMQFTEのメリット アーキテクチャー 機能 エージェントによるファイル転送の仕組み ファイル転送基本機能 ファイル転送の自動化 ユーザーEXITの組み込み コマンドによるファイル転送、コマンド実行例 GUIによるファイル転送、MQエクスプローラーでの転送設定例 エージェントとFTP/SFTPサーバー間のファイル転送 HTTPクライアントとFTEネットワーク間のファイル転送 データの暗号化と改ざん防止 監査、転送ログの収集と集中監視 運用、構成の一元管理 WMQFTEでのファイル転送の仕組み(まとめ 前提ハードウェア、OS、ソフトウェア 4 © 2011 IBM Corporation IBM Software Group | ファイル転送の現状と課題 現状 多くの企業が大量データのバッチ処理をファイル連携で実施している 組織間のデータ移動の主流はファイル渡しとなっている FTP、自作アプリケーション、各ベンダーの製品をベースに実装 部門毎に使用するテクノロジーが異なる ガートナーは、ファイル転送製品およびサービ スの市場は約4.5億ドルであり、毎年21∼ 26%成長すると予測 出典:米ガートナー, “Magic Quadrant for Managed File Transfer,” by L. Frank Kenney, June 23, 2008 課題 ファイル転送のための異なる製品の管理と保守にコストがかかる 転送の信頼性、セキュリティ、監査性に欠ける(FTP、自作アプリケーション) 1箇所から、リモートからの監視や管理ができない場合が多い 管理されたファイル転送基盤が求められている 管理されたファイル転送基盤が求められている 管理されたファイル転送(Managed File Transfer)とは、 “セキュアで信頼性のある組織間の文書交換 を可能にす るハードウェア、ソフトウェアのテクノノロジーである by Wikipedia US 5 © 2011 IBM Corporation IBM Software Group | IBMのソリューション 管理されたファイル転送のためのシステムインフラを提供 ITの開発と保守のための時間とコストを削減 コーディング不要 管理と運用を一元化 データ整合性の保持 信頼性、回復性、監査可能なファイル転送 WebSphere MQ SOAへの第一歩 IT基盤の再利用と統合 ESB機能の拡張 WebSphere MQ File Transfer Edition ユニバーサル・メッセージング・バックボーン トランスポートに求められる処理要件に、すべて対応可能なインフラをめざす メッセージングによるリアルタイム処理 ファイル転送によるバッチ処理 = + アプリケーション メッセージング 6 ファイル転送 メッセージングとファイルの 統合された転送基盤 © 2011 IBM Corporation IBM Software Group | WebSphere MQ File Transfer Edition(WMQFTE) WebSphere MQ familyの新しいソフトウェア製品 WebSphere MQの実証された転送バックボーン上に構築する、ファイル転送ソリューション 分散プラットフォームのWebSphere MQからトレードアップ可能 zOS版は、MQのライセンスが別に必要 2008年10月8日発表、12月出荷済み サポートプラットフォーム:z/OS 、Linux for System z、Linux on x86、I5/OS(IBM i) 、AIX、Solaris、HP-UX、Windows 最新リリース WebSphere MQ File Transfer Edition (for Multiplatform and for z/OS) 7.0.4 の発表(SWA11042-0) – http://w3-06.ibm.com/jp/domino02/NewAIS/aisintr5.nsf/ByLetterNo/SWA11042 管理されたファイル転送を実現する堅牢なソリューションを提供 ITシステム間のファイルの移動をコントロール 信頼できるファイル転送 大容量ファイル転送の最適化 転送の監査証跡 track configure IBMのSOA関連製品との連携 WebSphere Message Broker と組み合わせた ファイル転送ソリューションを提供 A B C audit X Y Z …… File Transfer Edition WebSphere MQ 7 © 2011 IBM Corporation IBM Software Group | 製品情報 WMQFTEライセンスの種類 詳細 ライセンス WebSphere MQ File Transfer Edition Client MQが導入されていないマシンでWMQFTEエージェントのみ稼動できる MQとはクライアント接続のみ MQサーバーが導入されているマシンにWMQFTEエージェントを稼働できる MQとはバインディング(ローカル)/クライアント接続が可能 z/OS上でWMQFTEエージェントを稼働できる MQサーバーとはバインディング接続のみで、MQのライセンスは別途必要 WebSphere MQ File Transfer Edition Server WebSphere MQ File Transfer Edition for z/OS 出荷形態 メディア・パック、またはダウンロード (z/OS版を除く) メディア Client Server z/OS版 WebSphere MQ File Transfer Edition Server, V7.0 DVD − ○ − WebSphere MQ File Transfer Edition, V7.0 z/OS Tape(3590 tape) − − ○ WebSphere MQ File Transfer Edition Client , V7.0 DVD ○ − − WebSphere MQ V7.0 Server and Client CDs − ○ − WebSphere MQ File Transfer Edition Remote Tools and Documentation,V7.0 DVD ○ ○ ○ Quick Start CD ○ ○ ○ Printed Quick Start Guide ○ ○ ○*1 *1 Program Directory (GI13-0530) License Information booklet (GC34-6980) 8 © 2011 IBM Corporation IBM Software Group | WMQFTEの特徴 使いやすさ 監査性 • 転送の起動、自動化運用、スクリプト、 スケジューリング、リスタート・ポリシー、 リモート・コンソールからの状況表示 • MQエクスプローラーとの統合 • 転送の監査ログ • 転送元と転送先でタイム・スタンプ付のログを取得 • MQのキューにログを保持. 簡単な操作 • フットプリントが小さく、迅速な導入が可能 • コーディングは不要 –GUIツールでの定義 −コマンドの提供 • WebSphere MQの活用 セキュリティ WebSphere WebSphere MQ MQ File File Transfer Transfer Edition Edition 適用範囲の広さ • WebSphere MQ V6とV7を転送プロトコルとしてサポート • コア・プラットフォーム・サポート (Windows, z/OS, Linux, Solaris, AIX, HP) • よく使用されるファイル・タイプのサポート (Flat files, z/OS QSAM, BPAM) • ASCII/EBCDIC, CR/LF変換 9 • ファイル・システムのアクセス許可 • リンク・レベル・セキュリティ (MQ SSL によるセキュリティを継承) • チェックサムによる改ざん検出 転送の自動化 • スケジューリング 日時指定、設定間隔での繰返し • イベントをトリガーとしてファイル転送を起動 例)ファイルの作成/ファイル容量など © 2011 IBM Corporation IBM Software Group | WMQFTEのメリット ファイル転送のバックボーンを提供 WebSphere MQネットワークを活用 バックボーンに接続する任意の拠点同士でファイル転送が可能 ファイルの転送元と転送先のシステムは、直接接続されている必要はない バックボーン内で転送元と転送先のネットワーク・パスを設定(MQネットワーク) 時間に依存しないファイル転送 WMQFTEによる管理されたファイル転送バックボーン 転送元のアプリケーションは、ファイル送付時に 送り先が使用可能である必要はない バックボーンがネットワークの切断に対応、 ネットワーク復旧後に自動的に転送を再開する MQネットワークを活用 A File B C D E ・・・ X Y Z File 信頼できるファイル転送 実績のあるMQを利用 MQチャネルのSSLによる暗号化、認証 障害時の自動再転送、リスタート 10 MQチャネルの自動再接続 障害回復後、チェックサムによりファイルの 整合性をチェックし、未送信部分から再送 FTPベースの転送 File C ・・・ B A D E Y X Z File © 2011 IBM Corporation IBM Software Group | WMQFTEのメリット(続き) 開発/保守コストの削減、迅速なソリューション作成が可能 コーディングは不要で、コマンド/GUIによるファイル転送実行が可能 複数ファイル一括転送、ファイル転送要求のテンプレート化による共有、再利用 ユーザEXITによるカスタマイズも可能 監査、転送ログの監視 一元管理による運用コストの削減 バックボーンの集中管理が可能 転送元と転送先の接続情報を1箇所で管理 リモートからファイル転送要求が出せる ファイル 転送要求 管理されたファイル転送バックボーン 監査、転送ログの取得、リモート監視が可能 MQのPublish/Subscribe機能を利用 ファイル転送の自動化 A B C D File E ・・・ X Y Z File コマンドをスクリプトにすることでファイル転送の自動化が図れる ファイル転送のスケジューリング リソースを有効活用 MQチャネルの圧縮機能を利用することで、バックボーン内のデータを圧縮転送 大容量のファイルを自動的に分割して転送し、メモリー、ネットワークの負荷を軽減 既存のMQネットワークを利用可能 11 © 2011 IBM Corporation IBM Software Group | アーキテクチャー(論理構成) WMQFTEを構成するコンポーネント 調整キュー・マネージャー ファイル転送のバックボーン(FTEドメイン)を管理する役割を持つキュー・マネージャー FTEエージェント ローカルマシンのファイルおよびデータ・セットの送受信を行う、常駐のJavaアプリケーション FTEエージェント・キュー・マネージャー FTEエージェントがファイル転送を行うために接続(ローカル/クライント)するキュー・マネージャー コマンド・キュー・マネージャー 主にファイル転送用のFTEコマンド・メッセージを適切なエージェントに送信するキュー・マネージャー 運用管理コマンド FTEコンポーネントの構成、ファイル転送の開始/スケジュール/取り消しなどの運用を行うコマンド群 MQエクスプローラー ファイル転送管理用GUIをプラグインで提供 FTEドメイン File/ DataSet File/ DataSet FTE エージェント FTE エージェント MQ エクスプローラー 12 調整キュー・マネージャー(MQ v7) FTE エージェント・ キュー・マネージャー (MQ v6 / v7) コマンド・キュー ・マネージャー (MQ v6 / v7) WebSphere MQベースのファイル転送バックボーン FTE エージェント File/ DataSet FTE エージェント File/ DataSet コマンド © 2011 IBM Corporation IBM Software Group | アーキテクチャー(物理構成例) 構成1:集中型 MQv7の1つのキュー・マネージャーに複数のFTEエージェントがクライアント接続 調整キュー・マネージャー、エージェント・キュー・マネージャー、コマンド・キュー・マネージャーを兼用 MQエクスプ ローラー QMGR1(MQv7) File FTE エージェント コマンド実行 構成2:分散型 調整キュー・ マネージャー エージェント・ キュー・ マネージャー コマンド・ キュー・ マネージャー MQクライアント接続 FTE File エージェント MQクライアント接続 凡例 物理的なマシン キュー・マネージャー FTEエージェントはローカルのキュー・マネージャーに接続 キュー・マネージャー間接続のMQネットワークを利用して、ファイル転送を行う MQチャネルの接続、構成、管理が必要 z/OS環境では、FTEエージェントとエージェント・キュー・マネージャーの接続はバインディング接続のみサポート。 調整キューマネージャーを他OSで構築する場合には分散型となる。 MQクライアント 接続 QMGR1(MQv7) QMGR間接続 :MQチャネル File/ FTE DataSet エージェント 13 コマンド QMGR2(MQv6) 実行 コマンド・ エージェント・ キュー・ キュー・ マネージャー マネージャー 調整キュー・ マネージャー コマンド・ キュー・ マネージャー コマンド実行 MQエクスプ ローラー QMGR間接続 :MQチャネル QMGR3(MQv6) QMGR間接続:MQチャネル エージェント・ キュー・ マネージャー File/ FTE エージェント DataSet © 2011 IBM Corporation IBM Software Group | エージェントによるファイル転送の仕組み バックボーン内では、ファイルをMQメッセージに変換して転送 送信側と受信側のエージェントがファイル/データ・セット/MQキューとMQメッセージの変換、読み書きを行う 送受信するファイルがアクセスできるマシンに、FTEエージェントが稼動している必要がある FTEエージェント同士が転送バイト数を確認しながら、ファイルとMQメッセージ変換を実行 【送信側と受信側のエージェントが異なるエージェント・キュー・マネージャーの場合】 QMGR1 FTE エージェント FTE エージェント MQチャネル エージェント・キュー・ マネージャー File/ DataSet/ ファイルを読んで MQキュー QMGR2 MQメッセージに変換 エージェント・キュー・ マネージャー ファイルはMQメッセージ として転送 File/ MQメッセージを読んで DataSet ファイルに書き出す MQキュー 【送信側と受信側のエージェントがエージェント・キュー・マネージャーを共有する場合】 MQクライアント接続 QMGR3 FTE エージェント MQキュー 14 File/ DataSet/ MQクライアント接続 FTE エージェント 宛先エージェント用のキューに MQメッセージを書き込む エージェント・キュー・ マネージャー File/ DataSet MQキュー © 2011 IBM Corporation IBM Software Group | ファイル転送基本機能 ファイル送信時のオプション ファイル送信後にソースファイルを削除 同名の宛先ファイルを上書き ファイル転送の優先度付け :転送メッセージにMQのプライオリティ(0-9)が設定される データ形式の変換 :バイナリ転送/テキスト転送、ASCII/EBCDIC、CR/LF変換の自動化 複数ファイルの一括転送 ファイル転送要求のグループ化 GUI、XML文書 ディレクトリ単位での転送 ワイルドカードによるファイルの指定 転送元 転送先 FTE エージェント FTE エージェント GUI、XML文書 ‘?’1文字の代替、 ‘*’0以上 の文字の代替(z/OSで使用可能なワイルドカード文字については、p.xxを参照) ファイルの分割転送 サイズの大きいファイルは、FTEエージェントが自動的に分割し複数のメッセージ分けて送信する 分割サイズは設定ファイルで指定することも可能 ファイル転送のキャンセル 転送中、保留中のファイル転送の取り消し 15 転送元 FTE エージェント 転送先 FTE エージェント © 2011 IBM Corporation IBM Software Group | ファイル転送の自動化 スケジュール転送機能 指定した日時にファイル転送を自動的に開始する(1回限りの転送) 例)2008/11/20 3:00にファイルを転送 転送元 一定間隔で繰返しファイルを転送する スケジュールを登録 単位は、分、時、日、週、月、年 例) 毎週日曜日 3:00にファイル転送を開始 FTE エージェント 転送要求 繰返し回数、終了日時の設定 時間 ファイル転送開始のためのトリガー設定 エージェントは スケジュールに従 い転送を開始 ファイル転送要求を出す時に、トリガー条件を指定できる 条件は、ファイルの有無、ファイルのサイズ 例) /work/source.zipが500MBを超えていたら送信する スケジュール機能と組み合わせることで、ファイルシステムに対するイベントを契機にファイル転送を行うこ とが可能 トリガー条件を 設定 転送元 転送要求 FTE エージェント 転送前に転送元ファ イルの有無/ファイル サイズを確認 16 条件を満たしている 場合、ファイルを転 送開始 © 2011 IBM Corporation IBM Software Group | ユーザーEXITの組み込み ファイル転送時にユーザEXITを呼び出すことが可能 ユーザEXITはJavaで作成し、エージェント毎に呼び出すEXITを設定する 例)ファイル転送終了後にe-mailで通知するなど EXITが呼び出されるポイント ソース側ファイル送信前とファイル送信後 ターゲット側のファイル受信前と受信後 転送元 ① ソース転送 開始EXIT ③ファイル転送 送信開始前 送信 ソース転送 ⑤ 終了EXIT 転送先 FTE エージェント 受信開始前 FTE エージェント 送信終了後 宛先転送 開始EXIT ② 宛先転送 終了EXIT ④ 受信 受信終了後 ①Æ⑤の順に処理は実行される ユーザーEXITに渡されるメタデータ メタデータは<key>,<value>のペア 転送要求時にメタデータを渡すことにより、ファイル転送毎にEXITの動きを制御できる 17 環境メタデータ ファイル・メタデータ 転送メタデータ :エージェントのバージョン :ファイル転送のオプションに関する情報など :転送要求時にユーザが指定することが可能 © 2011 IBM Corporation IBM Software Group | コマンドによるファイル転送 コマンドでファイル転送の実行、コンポーネントの構成、運用ができる リモートからコマンド実行ができる スクリプトによるファイル転送実行ができる コマンド一覧(1/2) ファイル転 送の開始/ 停止 構成 18 コマンド fteCreateTransfer 説明 ファイル転送要求の発行 ファイル転送要求の取り消し ファイル転送スケジュールの取り消し 調整キュー・マネージャーの指定 コマンド・キュー・マネージャーの指定 プロトコル・ブリッジ・エージェントを作成 Connect:Direct・ブリッジ・エージェントを作成 Webエージェントを作成 エージェントの作成 エージェントのクリーンアップ エージェントの削除 エージェント、Web エージェント、Connect:Direct ブリッ ジ・エージェント、またはプロトコル・ブリッジ・エージェント を、Windows サービスとして実行されるよう構成 fteModifyDatabaseLogger (Windowsのみ) スタンドアロン・データベース・ロガーをWindowsサービス として実行されるよう構成 fteCancelTransfer fteDeleteScheduledTransfer fteSetupCoordination fteSetupCommands fteCreateBridgeAgent fteCreateCDAgent fteCreateWebAgent fteCreateAgent fteCleanAgent fteDeleteAgent fteModifyAgent (Windowsのみ) © 2011 IBM Corporation IBM Software Group | コマンドによるファイル転送 コマンド一覧(2/2) 運用 問題判別 19 コマンド fteStartAgent fteStopAgent fteChangeDefaultConfigurationOptions fteListScheduledTransfers fteListAgents fteShowAgentDetails fteDisplayVersion fteSetAgentTraceLevel 説明 エージェントの開始 エージェントの停止 デフォルトの構成情報の変更 スケジュールされたファイル転送の表示 エージェントの表示 エージェント詳細情報の表示 製品のバージョンを表示 トレースレベルの設定 © 2011 IBM Corporation IBM Software Group | コマンド実行例 ファイル転送要求の実行 FTEエージェントAG3のUSS上のファイルをAG3のMVS datasetへ転送 $ fteCreateTransfer -sa AG3 -da AG3 -ds "//'MK.FTETEST.TEST1';VOL(MQ70G5);" -t text -w /home/mqfte/work/export/test1.orig.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008, 2009. ALL RIGHTS RESERVED BFGCL0035I: Transfer request issued. The request ID is: c3e2d840d4d8f7c14040404040404040c4a0f4c84919fe35 BFGCL0142I: The file transfer request has been submitted. The command is waiting for notification of the transfer's completion. BFGCL0139I: The requested file transfer has successfully completed. 2008/10/30 17:48に一回ファイル転送を実行して、スケジュールされたことを確認 $ fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To -de overwrite -tb ADMIN -ss 2008-1030T17:48 C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020201c38094920009802 $ fteListScheduledTransfers 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED スケジュール ID: 7 ソース・エージェント名: AG1 ソース・ファイル名: C:¥From¥File.txt 変換タイプ: binary 宛先ファイル名: C:¥To 宛先エージェント名: AG2 スケジュール開始時刻: 2008-10-30T17:48+0900 20 © 2011 IBM Corporation IBM Software Group | コマンド実行例 MQFTEドメイン内のエージェントの表示 $fteListAgents 5655-U80, 5724-R10 Copyright IBM Corp. Agent Name: Queue Manager Name: AG1_LIN_B01 FTE_AG01 AG_LIN_C01 FTE_CO AG_WIN_C01 FTE_CO AG_ZOS MQ6A 2008, 2010. Status: UNREACHABLE READY READY READY ALL RIGHTS RESERVED エージェントの起動 $fteStartAgent AG_ZOS 5655-U80, 5724-R10 Copyright IBM Corp. 2008, 2010. ALL RIGHTS RESERVED BFGCL0030I: The request to start agent 'AG_ZOS' on this machine has been submitted. BFGCL0031I: Agent log files located at: /var/ibm/wmqfte/config/FTE_CO/agents/AG_ZOS 21 © 2011 IBM Corporation IBM Software Group | コマンド実行例 ∼ z/OS STCとしてエージェントを起動する ∼ fteStartAgentコマンドでエージェントを起動すると、Unix System Services (USS)のバックグラウンドプロ セスとして常駐。 常駐プロセスはUSSからps -efコマンドでjavaとして確認することができる。 z/OSでの運用管理面では頼りない。 USS上のプロセス確認例 $ps -ef | grep fte SYSSTC 247 246 - 00:12:40 ttyp0000 -Dcom.ibm.tools.attach.enable=no -Dcom.ibm.wmqfte. SYSSTC 251 16777427 - 00:21:40 ttyp0000 0:05 /usr/lpp/java/J5.0/bin/java 0:00 grep fte z/OSのSTCとしてエージェントを起動する方法 STCとして起動する方法のうち、アドレス空間が常駐することのできるJZOS※を使用したものを紹介 /S BFGZSAG fteStartAgentコマンドが実行され、以後BFGZSAGというMVSアドレス空間が常駐する ps -efコマンドで見たときのプロセスはJVMLDM50(JZOSランチャー) ※ JZOSは、z/OSで動くJavaアプリケーションのためのJZOS JVMランチャーとJZOSツールのセットです。 JZOS JVMランチャーを使用すれば、USS環境の上でシェル・コマンドとしてJavaを実行するのではなく、 直接JVMをバッチ・ジョブのアドレス空間に呼び出すことができます。 22 © 2011 IBM Corporation IBM Software Group | コマンド実行例 ∼ z/OS STCとしてエージェントを起動する ∼ セットアップ手順(1/2) USS環境にあるサンプルJCLを、データセットにコピーする SAMPLIBのアロケーション – WMQFTE.V703.SAMPLE.JCL – RECFM=FB,LRECL=80,BLKSZ=3120,TYPE=PDS USSからSAMPLIBにJCLをコピー $ $ $ > > $ mkdir -p /tmp/wmqfte/JCL cd /usr/lpp/mqmfte/V7R0M3/samples/JCL/source for n in * ; do iconv -f IBM-943 -t IBM-939 $n > /tmp/wmqfte/JCL/$n done cp /tmp/wmqfte/JCL/* "//'WMQFTE.V703.SAMPLE.JCL'" 置換パラメータの確認 置換パラメータ ##AGENT## ##COORDQM## ##COMMANDQM## ##AGENTQM## ##MQPREFIX## ##SAMPLIB## ##JZOSLINK## ##JAVAPATH## ##MQJAVA## ##FTEPATH## ##CONFIGPATH## 23 説明 エージェント名 調整QMGR名 コマンドQMGR名 エージェントQMGR名 MQプロダクトHLQ 上記のサンプルJCL JZOSのJVMLDM50 JavaのHomeディレクトリ MQ JavaのHome MQ FTEのHome MQ FTEの構成ディレクトリ 設定例 AG_ZOS FTE_CO MQ6A MQ6A MQ60G (.SCSQxxxxのHLQ) WMQFTE.V703.SAMPLE.JCL SYS1.SIEALNKE /usr/lpp/java/J5.0 /usr/lpp/mqm/V6R0M0/java/lib /usr/lpp/mqmfte/V7R0M3 /var/ibm/wmqfte/config © 2011 IBM Corporation IBM Software Group | コマンド実行例 ∼ z/OS STCとしてエージェントを起動する ∼ セットアップ手順(2/2) SAMPLIBの編集 前ページにおいてアロケーションした、SAMPLIBのメンバーBFGZARG,BFGZENV,BFGZSAG,BFGZPAGに対して、 置換を行う。 BFGZSAG,BFGZPAGをPROCLIBにコピーする。 JZOSのセットアップ(すでに行っている場合はスキップしてよい) http://www-03.ibm.com/systems/z/os/zos/tools/java/products/j5sdk31readme.html cp JVMJCL50 "//'SYS1.SAMPLIB(JVMJCL50)'" cp JVMPRC50 "//'SYS1.PROCLIB(JVMPRC50)'" cp -x JVMLDM50 "//'SYS1.SIEALNKE(JVMLDM50)'" エージェントの起動 SDSFにて、/S BFGZSAGで起動 (BFGZSAGジョブログ抜粋) JVMJZBL2999T com.ibm.wmqfte.agent.bootstrap.impl.BootstrapMain.main 5655-U80, 5724-R10 Copyright IBM Corp. 2008, 2010. ALL RIGHTS RESERVED BFGLM0016I: The MVS Product Registration Service reports that the agent is permitted to start. BFGAG0115I: Relative path transfer root directory: /u/sysstc BFGAG0125W: The maximum size to which the java heap can grow is '64'MB, which is the default value. This value may be too low dependent on the agent's work load. BFGAG0058I: The agent has successfully initialized. BFGAG0059I: The agent has been successfully started. 24 © 2011 IBM Corporation IBM Software Group | コマンド実行例 ∼ z/OS STCとして起動したエージェントを停止する ∼ z/OSのSTCとして起動したエージェントを終了する方法 エージェントを起動しているジョブ名がBFGZSAGの例 JZOSを使用したもの /S BFGZPAG fteStopAgentコマンドが実行されてBFGZSAGを停止し、自分自身(BFGZPAG)も終了する。 z/OSのSTOPコマンドを使用 /P BFGZSAG fteStopAgentコマンドを -i パラメーターを指定して使用した場合の即時停止に相当する。 ファイルを転送中であっても即時停止される。 z/OSのMODIFYコマンドを使用 /F BFGZSAG,APPL=STOP fteStopAgentコマンドの代替手段として、制御された方法でエージェントを停止可能。 現在進行中の転送は完了するが、新規転送は開始ししない。 25 © 2011 IBM Corporation IBM Software Group | GUIによるファイル転送 MQエクスプローラーでファイル転送管理/運用が可能 MQエクスプローラーへのPlug-inとして提供 ファイル転送要求の作成 テンプレートに保管、再利用、共有ができる 監査ログの取得、表示 転送進行状況のモニター 転送ログ ソース・エージェント、宛先エージェント、完 了状態(成功/失敗)、開始時刻、 実行者、ログの更新時刻などが表示される 進行状況 ソース・エージェント、宛先エージェント、 転送中のファイル、進行状況(%)、 転送速度、開始時刻が表示される 26 © 2011 IBM Corporation IBM Software Group | MQエクスプローラーでの転送設定例 ファイル転送要求の作成 (オプション)スケジュールの設定 (必須)出力元、宛先の設定 新規の転送 ・サブディレクトリの転送 ・宛先ファイルの上書き ・転送モード(テキスト/バイナリ) ・チェックサム ・転送後のソースファイル削除 (オプション) トリガー条件の設定 27 © 2011 IBM Corporation IBM Software Group | エージェントとFTP/SFTPサーバー間のファイル転送 FTP/SFTPサーバーとFTEエージェント間のファイル転送を可能にするプロトコル・ブリッジ機能 WMQFTEネットワークにおいて、WMQFTEネットワークの外部にあるファイル・サーバーに保管されたファイルにアクセス することが可能 FTEブリッジ・エージェントがFTP/SFTPサーバー、FTEネットワーク間をブリッジ FTP(SFTP)サーバー1つに対し、ブリッジ・エージェントを1つ起動 ブリッジ・エージェントは、FTPサーバーに対するブリッジ機能のみ提供 FTPサーバーとファイル送受信する場合、ブリッジ・エージェントを転送先/転送元に指定し、 ファイル転送要求を発行 FTEエージェントは、転送先/転送元がブリッジ・エージェントであることを意識しない ブリッジ・エージェントは、ローカルではなく、FTPプロトコル経由でファイルを取得/書き込み 以下の機能は、プロトコル・ブリッジではサポートされていない トリガー (ファイル転送要求時に、転送条件を設定する機能) リソース・モニター (ディレクトリ内をポーリングし、ファイルの生成/削除をトリガーにタスクを実行する機能) サンドボックス (エージェントがアクセスできるファイル・システムの領域を制限する機能) z/OSのデータセットへの転送 FTPプロトコルで FTPサーバーにアクセス FTPクライアント File FTP/SFTP サーバー File 28 FTEネットワーク FTEエージェント間と同様にファイルを転送 FTEブリッジ・ エージェント FTE エージェント FTE エージェント File FTEブリッジ・エージェントと FTEエージェントを指定し、 ファイル転送要求を発行 File © 2011 IBM Corporation IBM Software Group | HTTPクライアントとFTEネットワーク間のファイル転送 HTTPを使用してWeb環境からFTEネットワークへの連携を可能にするWeb Gateway機能 HTTPクライアント(Webブラウザ等)を使用して、ファイルを既存FTEエージェントに転送可能 FTEエージェントを稼動できない携帯端末やOSからのHTTPを用いたファイル転送、など 転送状況のモニタリングも可能 データベース・ロガーを使用して、データベースに記録されている転送の状況を確認 HTTPクライアントからのリクエストを受け付け、FTEネットワークと連携するアプリケーションを提供 Java EE アプリケーション・サーバー上で稼動するエンタープライズ・アプリケーションをEAR形式で提供 Web Gatewayアプリケーションと通常のFTEエージェントをつなぐWebエージェント ファイル転送要求メッセージをエージェントのキュー・マネージャーから受け取り、一時ストア内のファイルを参照 ファイル・システムのストアから読み取ったファイルをFTE ネットワーク内の既存のエージェントに転送 RESTfulなインターフェースの提供 HTTPメソッド(POST/GETなど)を使用したファイル転送のリクエストが可能 Perl、Ruby、Pythonなどの言語もサポート HTTPクライアント Webシステム FTEネットワーク 携帯端末 File HTTP Web Gateway アプリケーション Web エージェント FTE エージェント File コンソール ブラウザー 29 © 2011 IBM Corporation IBM Software Group | データの暗号化と改ざん防止 SSLによるデータの暗号化と改ざん防止 ファイル転送バックボーン内を流れるデータをSSLで暗号化して盗聴を防止 FTEコンポーネント間をつなぐMQチャネルにSSL設定を行う 各(調整、エージェント、コマンド)キュー・マネージャー間:MQ送信チャネル/受信チャネル、 FTEエージェント(MQクライアント接続)とエージェント・キュー・マネージャー間 FTEコマンドとコマンドキュー・マネージャー間 SSLによる暗号化通信 コマンド実行 FTE エージェント コマンド・キュー・ マネージャー 調整キュー・マネージャー エージェント・キュー・ マネージャー エージェント・キュー・ マネージャー MQエクスプ ローラー FTE エージェント 障害回復後のファイルの整合性をチェックサムでチェック FTEエージェントが再起動後に、送信ファイルが変更されていない事を確認して続きを送信 MD5(Message Digest Algorithm 5)によりチェックサムを計算 30 128ビットのハッシュ値を出力するハッシュ関数 © 2011 IBM Corporation IBM Software Group | 監査、転送ログの収集と集中監視 監査ログ、転送ログやファイル転送状況を調整キュー・マネージャーが一元管理 FTEエージェントは、ファイル転送の状況をMQメッセージでパブリッシュ ログ情報のトピックをサブスクライブすることで、リモートから集中監視が可能 MQエクスプローラにプラグインされたGUIは、自動的にサブスクライブしてログを表示 ファイル監査メッセージの必要な情報だけをサブスクライブすることも可能 SYSTEM.FTE トピックのトピックストリング データベース・ロガーを使用することで、監査ログをデータベースに蓄積することが可能 MQFTEドメイン ユーザ・アプリケーション 調整キュー・マネージャー 監視 サブスクライブ サブスクライブ MQエクスプローラー 監視 パブリッシュ エージェント・ キュー・マネージャー FTE エージェント 31 エージェント・ キュー・マネージャー FTE エージェント エージェント・ キュー・マネージャー FTE エージェント 監査 監査ログ 送信元エージェント名 送信先エージェント名 完了状態(成功/失敗) 開始時刻 実行者 など © 2011 IBM Corporation IBM Software Group | 運用、構成の一元管理 ファイル転送コマンドのリモート実行 コマンドやGUIからの転送要求は、MQメッセージとして発行される XMLスキーマに基づいたメッセージ形式 コマンド・キュー・マネージャー経由でエージェントのコマンドキューに送信される WebSphere MQベースのファイル転送バックボーン コマンド 実行 M ル ャネ チ Q コマンド・キュー・ マネージャー MQ エージェント・ キュー・マネージャー MQチャネル FTE エージェント MQエクスプローラー チャ ネル エージェント・ キュー・マネージャー FTE エージェント バックボーンを構成するMQ構成を MQエクスプローラにより集中管理可能 EclipseベースのGUIでWindows,Linux-x86で稼働 オブジェクトの稼働状況、開始/停止など キュー・マネージャー、MQチャネル ホスト版キュー・マネージャーもリモートから管理可能 32 © 2011 IBM Corporation IBM Software Group | WMQFTEでのファイル転送の仕組み(まとめ) バックボーン内では、ファイルをMQメッセージに変換して転送 FTEエージェント同士が転送バイト数を確認しながら、ファイルとMQメッセージ変換を実行 MQのPub/Sub機能を利用して転送ログを一元管理 エージェントは転送状況、監査情報を調整キュー・マネージャーにパブリッシュする MQエクスプローラやユーザ・アプリケーションでログ情報をサブスクライブできる ファイル転送要求はMQメッセージを利用 コマンドはリモートから実行可能 ファイルはMQメッセージで転送 コマンド・キュー・ マネージャー コマンド 実行 エージェント・キュー・ マネージャー エージェント・キュー・ マネージャー ファイル転送はMQ メッセージで依頼 メッセージ受信 FTE エージェント FTE エージェント メッセージ送信 File/ DataSet/ パブリッシュ File/ DataSet/ MQキュー MQキュー MQエクスプ ローラー サブスクライブ 33 調整キュー・マネージャー Pub/Sub機能で 転送ログの管理 © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (1/7) 前提ハードウェア 前提OSおよび前提ソフトウェアをサポートするハードウェア 前提ソフトウェア WMQFTEサーバー・エディションの前提OS (1/3) ※ 2011年6月時点でのサポート状況 OS OS前提レベル z/OS ※1 z/OS V1.6, V1.7, V1.8, V1.9, V1.10, or V1.11 Linux for System z (64-bit) Red Hat Enterprise Linux (RHEL) V5.0 or later update Red Hat Enterprise Linux (RHEL) V6.0 or later update SUSE Linux Enterprise Server (SLES) V10 with Service Pack 1, or later SUSE Linux Enterprise Server (SLES) V11 ※1 z/OS 版の場合は、下記のソフトウェア要件も満たすこと ソフトウェア 前提レベル IBM Java V5.0 SR8 or later (注) V6.0 SR7 or later (注) 日本語環境におけるz/OSデータ・セットのコード変換において問題が発生し、修正済 日本語環境(DBCSコード変換)に必要なJava 1.5のfixは、以下の通り SR11 + ifix(IZ65603) SR11 FP1 (2010/2末出荷) SR12 (2010/7末出荷) 34 © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (2/7) 前提ソフトウェア WMQFTEサーバー・エディションの前提OS (2/3) 35 ※ 2011年6月時点でのサポート状況 OS OS前提レベル Linux for System x (32-bit) Red Hat Enterprise Linux (RHEL) V5.0 or later update Red Hat Enterprise Linux (RHEL) V6.0 or later update SUSE Linux Enterprise Server (SLES) V9, Service Pack 4 or later SUSE Linux Enterprise Server (SLES) V10, Service Pack 1 or later SUSE Linux Enterprise Server (SLES) V11 Linux for System x (64-bit) Red Hat Enterprise Linux (RHEL) V5.3 or later update Red Hat Enterprise Linux (RHEL) V6.0 or later update SUSE Linux Enterprise Server (SLES) V9, Service Pack 4 or later SUSE Linux Enterprise Server (SLES) V10, Service Pack 1 or later SUSE Linux Enterprise Server (SLES) V11 Linux for System P (64-bit) SUSE Linux Enterprise Server (SLES) V9, Service Pack 3 SUSE Linux Enterprise Server (SLES) V10, Service Pack 2 SUSE Linux Enterprise Server (SLES) V11 Red Hat Enterprise Linux (RHEL) V5.0.2 or later update AIX AIX V5.3 plus TL04 and appropriate firmware AIX V6.1 AIX V7.1 © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (3/7) 前提ソフトウェア WMQFTEサーバー・エディションの前提OS (3/3) ※ 2011年6月時点でのサポート状況 OS OS前提レベル HP-UX HP-UX 11i V2 (11.23) HP-UX V11.11 (PA-RISC) Sun Solaris Sun Solaris V10 on SPARC Sun Solaris V10 on x86-64 Windows (32-bit) Microsoft Windows XP Professional (Service Pack 2 or later) Microsoft Windows Server 2003, Service Pack 2 or later (Standard or Enterprise Edition) Microsoft Windows Server 2003 R2, Service Pack 1 or later (Standard or Enterprise Edition) Microsoft Windows Server 2008 (Standard or Enterprise Edition) Windows (64-bit) Microsoft Windows Server 2003, Service Pack 2 or later (Standard or Enterprise Edition) Microsoft Windows Server 2003 R2, Service Pack 1 or later (Standard or Enterprise Edition) Microsoft Windows Server 2008 (Standard or Enterprise Edition) Microsoft Windows Server 2008 R2 (Standard or Enterprise Edition) I5/OS,IBM i ※1 V5R4※2 V6R1※2 HP-UX 11i V3 (11.31) V7R1※2 ※1 i5/OS, IBM iの場合は、右記のソフトウェア要件も満たすこと ソフトウェア 前提レベル IBM Java V5.0 SR8 or later V6.0 SR7 or later ※2 オプションや前提PTFの詳細は、次のリンクを参照ください。 http://www-01.ibm.com/software/integration/wmq/filetransfer/requirements/index.html 36 © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (4/7) 前提ソフトウェア WMQFTE クライアント・エディションの前提OS WMQFTE サーバー・エディションの前提に加え、次のOSをサポート。 OS OS前提レベル Linux for System x (32-bit) Red Hat Enterprise Linux (RHEL) V4.0, Update 8 or later Linux for System x (64-bit) Red Hat Enterprise Linux (RHEL) V4.0, Update 3 or later AIX AIX 5.2 with Maintenance level 3 Sun Solaris Sun Solaris V8 (with SunSolve-recommended Patch Cluster level) on SPARC Sun Solaris V9 (with SunSolve-recommended Patch Cluster level) on SPARC Windows (32-bit) Microsoft Windows 2000 Server Microsoft Windows 2000 Professional Microsoft Windows Vista (Business, Edition) Windows (64-bit) Microsoft Windows Vista (Business, Edition) Microsoft Windows 7 (Professional or Ultimate Edition) WMQFTE クライアント・エディションでは、FTEエージェントとエージェント・キュー・マネージャー間の接続はクライアント 接続のみ許可します。そのため、FTEエージェントとエージェント・キュー・マネージャーの接続にバインディング接続のみ 許可されるz/OSではWMQFTEクライアント・エディションの提供はありません。 any supported platform z/OS FTE エージェント MQクライアント接続 37 ※ 2011年6月時点でのサポート状況 エージェント・ キュー・ マネージャー z/OS エージェント・ キュー・ マネージャー バインディング接続 FTE エージェント © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (5/7) 前提ソフトウェア MQ Explorer プラグインの前提OS (1/2) MQ Explorerは、Windows および Linux(x86プラットフォーム)で使用可能 MQ Explorerのプラグインの前提は、MQの前提環境にしたがう – 詳細は次のリンクを参照ください http://www-01.ibm.com/software/integration/wmq/requirements/index.html ※ 2011年6月時点でのサポート状況 38 OS OS前提レベル Linux for System x (32-bit) Red Hat Enterprise Linux (RHEL) V4 or later update Red Hat Enterprise Linux (RHEL) V5 or later update Red Hat Enterprise Linux (RHEL) V6 or later update SUSE Linux Enterprise Server (SLES) V9 with SP1 or later update SUSE Linux Enterprise Server (SLES) V10 with SP1 or later update SUSE Linux Enterprise Server (SLES) V11 or later update NLPOS9 FP1 IRES V2 Red Flag Data Centre V5 Linux for System x (64-bit) Red Hat Enterprise Linux (RHEL) V4 or later update Red Hat Enterprise Linux (RHEL) V5 or later update Red Hat Enterprise Linux (RHEL) V6 or later update SUSE Linux Enterprise Server (SLES) V9 with SP1 or later update SUSE Linux Enterprise Server (SLES) V10 with SP1 or later update SUSE Linux Enterprise Server (SLES) V11 or later update © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (6/7) 前提ソフトウェア MQ Explorer プラグインの前提OS (2/2) ※ 2011年6月時点でのサポート状況 39 OS OS前提レベル Windows Microsoft Windows XP Professional (SP2 or later) Microsoft Windows XP Professional x64 Edition Microsoft Windows 7 (Professional, Business, Enterprise or Ultimate, 32-bit and 64bit Editions) Microsoft Windows Server 2003 (SP1 or later) (Standard Edition or Enterprise Edition) Microsoft Windows Server 2003 (SP1 or later) (Standard x64 Edition or Enterprise x64 Edition) Microsoft Windows Server 2003 R2 (SP1 or later) (Standard Edition or Enterprise Edition) Microsoft Windows Server 2003 R2 (SP1 or later) (Standard x64 Edition or Enterprise x64 Edition) Microsoft Windows Server 2008 (Standard or Enterprise 32-bit and 64-bit Edition) [see section note 1] Microsoft Windows Server 2008 R2 (Standard or Enterprise 64-bit Edition) [see section note 2] Microsoft Windows Vista (Business, Enterprise or Ultimate Edition, 32-bit and 64-bit Editions) Microsoft Windows Embedded Point of Service 1.0 © 2011 IBM Corporation IBM Software Group | 前提ハードウェア、ソフトウェアの確認 (7/7) 前提ソフトウェア WebSphere MQ OS 調整キュー・マネージャー コマンド・キュー・マネージャー/ エージェント・キュー・マネージャー 分散系 -MQ V7.0.0.1 以上 -MQ v7.0.0.1 以上 -MQ v6.0.2.4 以上 For IBM i installations: - WebSphere MQ V7.0 fix pack 7.0.1.0 以上 For IBM i installations: - WebSphere MQ V6.0 fix pack 6.0.2.7 (5724H72) - WebSphere MQ Java Messaging and Web Services (5724L26, which accompanies 5724H72) -MQ v7.0.1.0 + PM03853 + PM00654 -MQ v7.0.1.0+ PM03853 + PM00654 -MQ v6.0 + PM17286 ※ PM17286で、MQ Java v6.0.2.10を提供 z/OS 以下の機能を実行するための前提は次のリンクを参照ください WebSphere MQ File Transfer Edition System Requirements – http://www-01.ibm.com/software/integration/wmq/filetransfer/requirements/index.html – Web ゲートウェイ – Java Enterprise Edition データベース・ロガー – スタンドアロン・データベース・ロガー – プロトコル・ブリッジ・エージェントを実行するための前提 – Connect:Direct ブリッジ・エージェント 40 © 2011 IBM Corporation IBM Software Group | 2章 WMQFTE 構成 41 © 2011 IBM Corporation IBM Software Group | 目次 コンポーネント WebSphere MQ File Transfer(WMQFTE)論理構成 FTEドメインを構成するコンポーネント 調整キュー・マネージャー コマンド・キュー・マネージャー FTEエージェントとエージェント・キュー・マネージャー 構成ファイル install.properties wmqfte.properties coordination.properties command.properties agent.properties SSLプロパティー 構成ファイル まとめ 構成例 基本構成1: 集中型 基本構成2: 分散型 リモート・ツールを使用してファイル転送を行う構成 考慮点 分散型構成時の考慮点 z/OSを含めた構成時の考慮点 複数ドメイン構成環境の注意点 SSL を用いたセキュアな通信 42 © 2011 IBM Corporation IBM Software Group | WMQFTEの論理構成 WMQFTEで提供するコンポーネント FTEドメイン ファイル転送を実行するコンポーネント FTE エージェント Agent1 FTE エージェント Agent2 FTE エージェント・ キュー・マネージャー (MQ v6 / MQ v7) ファイル転送を要求するコンポーネント コマンド コマンド MQエクスプローラー FTE エージェント・ キュー・マネージャー (MQ v6 / MQ v7) FTE エージェント Agent3 FTE エージェント Agent4 FTEドメインを管理するコンポーネント 保管する情報 ・転送ログ ・転送ステータス ・FTEエージェント情報 ・転送テンプレート ・スケジュール 調整キュー・マネージャー (MQ v7) コマンド・キュー コマンド・キュー ・マネージャー ・マネージャー (MQ v6 / MQ v7) (MQ v6 / MQ v7) 外部アプリケーション 監視 MQエクスプローラー 監視 監査 43 監査ログ © 2011 IBM Corporation IBM Software Group | FTEドメインを構成するコンポーネント 調整キュー・マネージャー ファイル転送のバックボーン(FTEドメイン)を管理する役割を持つキュー・マネージャー FTEエージェント ローカルマシンのファイル送受信を行う、常駐のJavaアプリケーション FTEエージェント・キュー・マネージャー FTEエージェントがファイル転送を行うために接続(ローカル/クライント)するキュー・マネージャー コマンド・キュー・マネージャー 主にファイル転送用のFTEコマンド・メッセージを適切なエージェントに送信するキュー・マネージャー 運用管理コマンド FTEコンポーネントの構成、ファイル転送の開始/スケジュール/取り消しなどの運用を行うコマンド群 MQエクスプローラー ファイル転送管理用GUIをプラグインで提供 FTEドメイン 調整キュー・マネージャーが管理するFTEエージェントの集まり 44 © 2011 IBM Corporation IBM Software Group | 調整キュー・マネージャー FTEドメイン内の情報管理、およびログを保管/配信する FTEドメイン内に必ず1つ必要 MQ v7 キュー・マネージャーであることが前提 調整キュー・マネージャーが保管する主な情報 ファイル転送ログ 転送ステータス FTEエージェント情報 転送テンプレート スケジュール情報 各情報は、MQメッセージとして調整キュー・マネージャーへパブリッシュされる Pub/Subの機能を使用して、アプリケーションで受信も可能 情報を受信するためには、別途サブスクライブ登録が必要(後述) デフォルトでは、調整キュー・マネージャー名とFTEドメイン名は同一 FTEドメイン: QM_FTE FTEエージェント FTEエージェント新規作成時に FTEエージェント情報をPub FTEエージェント情報 転送ログ/転送状況 MQエクスプローラー テンプレート情報 45 調整キュー・マネージャー QM_FTE 転送ログ/転送状況 エージェント・ キュー・ マネージャー FTEエージェント ファイル転送 エージェント・ キュー・ マネージャー FTEエージェント パブリケーション © 2011 IBM Corporation IBM Software Group | コマンド・キュー・マネージャー ファイル転送要求はMQメッセージとして適切なFTEエージェントにルーティングされる 送信元のSYSTEM.FTE.COMMAND.FTEエージェント名 キューに配信 コマンド・キュー・マネージャー経由で、FTEドメイン内のすべてのFTEエージェントに対して リモートからファイル転送要求を発行可能 ファイル転送要求を一箇所で発行する構成が可能 FTEドメイン AG3 から AG1 へ ファイル転送要求 FTEエージェント AG1 FTEエージェント AG2 AG1用のキュー AG2用のキュー FTEエージェント AG3 コマンド実行 AG3用のキュー ファイル転送要求メッセージ MQエクスプローラー AG1 から AG2 へ ファイル転送要求 ファイル転送要求メッセージ コマンド・キュー・ マネージャー 調整キュー・マネージャー 構成管理に関するFTEコマンドは、コマンド・キュー・マネージャーを介さない コマンド・キュー・マネージャーを経由するコマンドに関してはP79を参照 46 © 2011 IBM Corporation IBM Software Group | FTEエージェントとエージェント・キュー・マネージャー エージェント・キュー・マネージャーはFTEエージェントが使用するキューを管理 1つのFTEエージェントにつき、5種類のシステム・キューを定義する 複数のFTEエージェントで1つのキュー・マネージャーを共有することも可能 FTEエージェントはローカルのファイル送受信を行う常駐 Java プロセス FTEエージェントはコマンドで開始/停止可能 エージェント・キュー・マネージャーに常時接続 FTEコマンドを SYSTEM.FTE.COMMAND.FTEエージェント名 キューから受信 ファイルをMQメッセージに分割し、SYSTEMキューを介してFTEエージェント間で転送を行う ファイルの読込み、転送、およびファイル作成をFTEエージェントが行う FTEエージェントが直接アクセスできるファイルのみ転送対象 転送状況や転送ログを調整キュー・マネージャーにパブリッシュする ファイル転送と、パブリケーション送信は非同期に実施 エージェント・キュー・マネージャーが保管するキュー コマンド実行 コマンド・ キュー・ マネージャー 調整キュー・ マネージャー 転送ログ/転送状況 ファイル転送要求コマンド エージェント・ キュー・ マネージャー File 47 FTE エージェント AG3 FTE エージェント AG1 SYSTEM.FTE.EVENT.AG2 ファイル転送 File SYSTEM.FTE.DATA.AG2 エージェント・ キュー・ マネージャー FTE エージェント AG2 SYSTEM.FTE.COMMAND.AG2 SYSTEM.FTE.REPLY.AG2 SYSTEM.FTE.STATE.AG2 File © 2011 IBM Corporation IBM Software Group | ブランク・ページ 48 © 2011 IBM Corporation IBM Software Group | 構成ファイル FTEコンポーネントの環境設定を行うためのファイル FTE導入マシンごとに、5種類 install.properties 構成ファイルの保管場所(データ・ディレクトリ) – z/OSでは、FTE_CONFIG 環境変数に構成ファイルの保管場所(ディレクトリ)を定義するため、 install.properties ファイルは存在しない。 wmqfte.properties ローカルマシンが属するデフォルト・ドメインを設定 coordination.properties 調整キュー・マネージャーの設定 command.properties コマンド・キュー・マネージャーの設定 agent.properties エージェント・キュー・マネージャーの設定 原則、英語のみで記述すること 英語以外の記述を含む場合は(ディレクトリ名など)、Unicode エスケープ シーケンスで記述 例) transferRoot=C:¥¥Data¥¥¥u30C6¥u30B9¥u30C8 (C:¥Data¥テスト) 49 © 2011 IBM Corporation IBM Software Group | install.properties install.properties 構成ファイルを保管するデータ・ディレクトリを指定 デフォルトでは、導入時に指定したデータ・ディレクトリが設定される z/OSの場合、 install.propertiesは作成されず、FTE_CONFIG 環境変数にデータ・ディレクトリを定義する install.properties の記載例 (UNIX) # #Fri Dec 12 08:15:29 JST 2008 dataDirectory=/var/IBM/WMQFTE FTE導入マシン単位に1つ インストール・ディレクトリの直下に作成される インストール・ディレクトリは導入時に設定可能 デフォルトの配置場所 UNIX /opt/IBM/WMQFTE/install.properties Windows C:¥Program Files¥IBM¥WMQFTE¥install.properties z/OSの場合 環境変数は、環境変数設定用スクリプトの使用、コマンド実行ユーザの.profile、 または、コマンド実行ユーザのホーム ディレクトリに.wmqfterc スクリプトを作成し定義する。 .wmqfterc スクリプトの場合、WMQFTEの各コマンド実行時に呼び出される。そのため、コマンド実行前に定義しておく必 要がある_BPXK_AUTOCVTパラメータについては、.wmqftercスクリプトに定義できない。 .profileに定義するか、個別に環境変数をセットする必要がある。 WMQFTEコマンド・スクリプトは ASCII エンコードでタグ化されており、 ローカル・コード・ページに変換してから実行しなけ ればならないため、 環境変数 _BPXK_AUTOCVT を ON にする必要がある。 50 © 2011 IBM Corporation IBM Software Group | <参考>z/OS USSでの環境変数設定 環境変数設定用スクリプトのサンプル #!/bin/sh FTE_JAVA_HOME=/usr/lpp/java/J5.0 FTE_CONFIG=/var/ibm/mqfte/config FTE_WTO=YES STEPLIB=MQ70G.SCSQAUTH:MQ70G.SCSQANLE:MQ70G.SCSQLOAD MQ_HOME=/usr/lpp/mq/V7R0/java/lib LIBPATH=$MQ_HOME:$LIBPATH _BPXK_AUTOCVT=ON PATH=/usr/lpp/mqfte/V7R0M1/bin:$PATH PATH=/home/mqfte/work/fteant:$PATH export FTE_JAVA_HOME FTE_CONFIG STEPLIB LIBPATH _BPXK_AUTOCVT CLASSPATH PATH ※FTE_WTO=YES(またはTRUEまたはON)を指定すると、エージェント起動時のSYSLOGに以下のような出力 が得られます。 BFGCL0030I: The request to start agent 'AG_ZOS' on this machine has been submitted. BFGCL0031I: Agent log files located at: /var/ibm/wmqfte/config/FTE_CO/ag ents/AG_ZOS BFGLM0016I: The MVS Product Registration Service reports that the agent is permitted to start. BFGAG0114I: No suitable root directory can be found for transfers that specify a relative path. This agent will not accept transfers that specify a relative paths. BFGAG0125W: The maximum size to which the java heap can grow is '64'MB, which is the default value. This value may be too low dependent on the agent's work load. BFGAG0058I: The agent has successfully initialized. BFGAG0059I: The agent has been successfully started. 51 © 2011 IBM Corporation IBM Software Group | wmqfte.properties wmqfte.properties ローカルマシンが属するデフォルト・ドメインを設定 wmqfte.properties の記載例 # #Fri Dec 01 08:15:29 JST 2008 defaultProperties=FTE1 FTE導入マシン単位に1つ データディレクトリの直下に作成される デフォルトの配置場所 z/OS UNIX Windows <data directory >/wmqfte.properties <data directory >/ wmqfte.properties <data directory>¥ wmqfte.properties wmqfte.properties コマンド実行時にドメインを指定しない場合は、 デフォルト・ドメインの設定が使用される defaultProperties=FTE1 -p オプションでドメインを明示的に指定可能 デフォルト・ドメインは FTE1 FTEドメイン:FTE1 FTEドメイン:FTE2 fteCreateTransfer –sa 送信エージェント –da 受信エージェント –df /data/to.txt /master/from.txt コマンド実行 ドメインを指定してないので、ドメインFTE1の構成が読み込まれる 52 © 2011 IBM Corporation IBM Software Group | coordination.properties coordination.properties 調整キュー・マネージャーへの接続情報を設定 バインディング接続の場合は、キュー・マネージャー名のみの設定 クライアント接続にするには、coordinationQMgrHost などの接続方法を設定 ドメイン構成単位に1つ 調整キュー・マネージャー構成のセットアップ時に作成される データ・ディレクトリ下のドメイン・ディレクトリ直下 デフォルトの配置場所 z/OS UNIX Windows <data directory>/<ドメイン名> / coordination.properties <data directory>/<ドメイン名> / coordination.properties <data directory>¥<ドメイン名> ¥ coordination.properties 接続情報の変更は、fteSetupCoordination コマンド、もしくはファイル編集で行う FTEドメイン: FTE1 coordination. properties 53 coordination.properties の記載例 (バインディング接続) # Fri Dec 12 08:43:51 JST 2008 coordinationQMgr=FTE1 © 2011 IBM Corporation IBM Software Group | coordination.properties coordination.propertiesに設定可能な属性 属性 coordinationQMgr 値 備考 − coordinationQMgrPort 接続キュー・マネージャー名 キュー・マネージャーが構成されているホスト名or IPアドレ ス キュー・マネージャーがlistenしているポート coordinationQMgrChannel SVRCONNチャネル名 デフォルト SYSTEM.DEF.SVRCONN coordinationQMgrHost 設定があるとクライアント接続 デフォルト 1414 coordination.propertiesに設定可能な拡張属性 属性 値 デフォルト値 coordinationCcsid コマンドが、調整キュー・マネージャーに接続するときに使用 するコード・ページを指定 1208 coordinationCcsidName coordinationCcsidのJava表記を指定 UTF8 WMQへの クライアント接続を介してフローされるユーザー IDを指定。 NoneまたはJavaを指定。 None コード・ページ関連 セキュリティー関連 userIdForClientConnect 複数インスタンス・キュー・マネージャー関連 coordinationQMgrStandby 54 複数インスタンスの調整キュー・マネージャーのスタンバイ・ インスタンスに、クライアント接続するために使用する ホスト 名およびポート番号を指定 デフォルトなし © 2011 IBM Corporation IBM Software Group | coordination.properties coordination.propertiesに設定可能な拡張属性 属性 値 デフォルト値 一時キュー名を生成するために使用するWMQ接頭辞を指定 WMQFTE. キュー関連 dynamicQueuePrefix command.properties ファイルで指定も可 modelQueueName 一時キューを生成するために使用するWMQ モデル・キューを 指定 SYSTEM.DEFAULT.MODEL.QUE UE command.properties ファイルで指定も可 接続関連 com.ibm.wmqfte.java.library .path 55 バインディング・モードでキュー・マネージャーに接続する際 に使用する、WMQバインディング・ライブラリーのロケーション を指定 /opt/mqm/java/lib © 2011 IBM Corporation IBM Software Group | command.properties command.properties コマンド・キュー・マネージャーへの接続情報を設定 バインディング接続の場合は、キュー・マネージャー名のみの設定 クライアント接続にするには、connectionQMgrHost などの接続方法を設定 ドメイン構成単位に1つ コマンド・キュー・マネージャー構成のセットアップ時に作成される データ・ディレクトリ下のドメイン・ディレクトリ直下 デフォルトの配置場所 z/OS UNIX Windows <data directory>/<ドメイン名> / command.properties <data directory>/<ドメイン名> / command.properties <data directory>¥<ドメイン名> ¥command.properties 接続情報の変更は、fteSetupCommands コマンド、もしくはファイル編集で行う FTEドメイン: FTE1 command. properties 56 command.properties の記載例(バインディング接続) # Fri Dec 12 08:43:51 JST 2008 connectionQMgr=FTE1 © 2011 IBM Corporation IBM Software Group | command.properties command.propertiesに設定可能な属性 属性 connectionQMgr 値 備考 − connectionQMgrPort 接続キュー・マネージャー名 キュー・マネージャーが構成されているホスト名or IPアドレ ス キュー・マネージャーがlistenしているポート connectionQMgrChannel SVRCONNチャネル名 デフォルト SYSTEM.DEF.SVRCONN connectionQMgrHost 設定があるとクライアント接続 デフォルト 1414 command.propertiesに設定可能な拡張属性 属性 値 デフォルト値 connectionCcsid コマンドキュー・マネージャーに接続するときに使用するコー ド・ページを指定 1208 connectionCcsidName conectionCcsid の Java 表記を指定 UTF8 WMQへの クライアント接続を介してフローされるユーザー IDを指定。 NoneまたはJavaを指定。 None コード・ページ関連 セキュリティー関連 userIdForClientConnect 複数インスタンス・キュー・マネージャー関連 connectionQMgrStandby 57 複数インスタンスのコマンド・キュー・マネージャーのスタンバ イ・インスタンスにクライアント接続するために使用する、ホス ト名およびポート番号を指定 デフォルトなし © 2011 IBM Corporation IBM Software Group | command.properties command.propertiesに設定可能な拡張属性 属性 値 デフォルト値 一時キュー名を生成するために使用するWMQ接頭辞を指定 WMQFTE. キュー関連 dynamicQueuePrefix coordination.properties ファイルで指定も可 modelQueueName 一時キューを生成するために使用するWMQ モデル・キューを 指定 SYSTEM.DEFAULT.MODEL.QUE UE coordination.properties ファイルで指定も可 接続関連 com.ibm.wmqfte.java.library .path 58 バインディング・モードでキュー・マネージャーに接続する際 に使用する、WMQバインディング・ライブラリーのロケーション を指定 /opt/mqm/java/lib © 2011 IBM Corporation IBM Software Group | agent.properties agent.properties エージェント・キュー・マネージャーへの接続情報を設定 バインディング接続の場合は、キュー・マネージャー名のみの設定 クライアント接続にするには、agentQMgrHost などの接続方法を設定 オプションで、FTEエージェントの動作に関連する設定も可能(後述) FTEエージェント構成時に1つ作成される FTEエージェント構成時に作成されるエージェント・ディレクトリ直下に作成される デフォルトの配置箇所 z/OS UNIX Windows <data directory>/<ドメイン名> / agents/<FTEエージェント名>/agent.properties <data directory>/<ドメイン名>/agents/<FTEエージェント名>/ agent.properties <data directory>¥config¥<ドメイン名>¥agents¥<FTEエージェント名>¥ agent.properties 変更を反映させるにはFTEエージェントの再起動が必要 agent.properties の記載例(バインディング接続) # #Fir Dec 12 08:48:25 JST 2008 agentQMgr=FTE1 agentDesc= agentName=AG1 59 FTEドメイン: FTE1 FTEエージェント構成 agent.properties © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な属性 属性 agentName 値 FTEエージェント名 備考 agentDesc エージェントの説明 デフォルトなし agentQMgr 接続キュー・マネージャー名 デフォルトなし agentQMgrHost 設定があるとクライアント接続 agentQMgrPort キュー・マネージャーが構成されているホスト名or IPアドレ ス キュー・マネージャーがlistenしているポート agentQMgrChannel SVRCONNチャネル名 デフォルト SYSTEM.DEF.SVRCONN デフォルトなし デフォルト 1414 agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 agentFrameSize 1転送フレームに含めるウィンドウの数 5 agentWindowSize 1ウィンドウに含める分割ファイルの数 10 agentChunkSize 1分割ファイルのサイズ 256KB agentCheckPointInterval チェック・ポイントの間隔 1 agentCcsid エージェント・キュー・マネージャー接続時に使用するコード・ ページ 1208 agentCcsidName conectionCcsid の Java 表記 UTF8 ファイル分割サイズ関連 コード・ページ関連 60 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 maxCommandHandlerThre ads 初期構文解析および転送コマンド・メッセージの処理に使用可能なス レッド数を指定 5 maxCommandOutput SYSTEM.FTEトピックの転送ログに書き込まれるコマンド出力長の最 大バイト数を指定 10KB maxCommandRetries エージェントが許可するコマンド再試行回数を指定 9 maxCommandWait エージェントが許可する各再試行間の最大待ち時間を指定(秒) 60 immediateShutdownTime out エージェントの即時シャットダウンの場合、シャットダウンを強制する 前にエージェントがその転送の完了を待つ時間を指定(秒) 10 デフォルト値未満の値への変更は 不可 QMGRへのバインディング接続時に使用する、WMQのJavaライブラ リーへのパスを指定 /opt/mqm/java/lib FTEコマンドが使用するライブラリの指定 None コマンド関連 接続プロパティー com.ibm.wmqfte.java.l ibrary.path Javaライブラリ関連 javaLibraryPath マルチ・インスタンス・キュー・マネージャー関連: agentQMgrStandby 61 agentQMgrによって定義されている、複数インスタンスのエージェン ト・キュー・マネージャーの スタンバイ・インスタンスに、クライアント 接続するために使用する ホスト名およびポート番号 (WebSphere MQ の CONNAME 形式で指定)。 デフォルトなし © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 cdNode Connect:Direct・ブリッジを使用する場合に必要。 ブリッジ・エージェントから宛先の ノードにメッセージを転送するため に使用するConnect:Directノードの名前 デフォルトなし cdNodeHost Connect:Direct ブリッジ・ノードのホスト名または IP アドレス ローカルシステムのホスト名または IPアドレス cdNodePort クライアント・アプリケーションがノードとの通信に使用する Connect:Directブリッジ・ノードのポート番号 1363 cdTmpDir ファイルが宛先のConnect:Directノードに転送される前に、一時 的に保管される、Connect:Directブリッジ・エージェントが実行さ れているシステム上のディレクトリーの絶対パス <java.io.tmpdir>/cdbridg e-agentName Windows の場合: <java.io.tmpdir>¥cdbridg e-agentName cdTrace Connect:Direct ブリッジ・エージェントと Connect:Direct ノード間で送信されるデータをエージェントがトレースするかどうかを 指定 false cdMaxConnectionRetrie s 正常な接続がまだ確立されていない場合のファイル転送で、 Connect:Direct 接続を試行できる最大回数 -1 (試行回数は無制限) cdMaxPartialWorkConne ctionRetries 前回の接続試行が正常に終了し、転送作業が実行された場合に、 Connect:Direct 接続を試行できる最大回数 -1 (試行回数は無制限) cdMaxWaitForProcessEn dStats プロセス終了後、Connect:Directノードの統計情報内で Connect:Directプロセス完了情報が使用できるようになるまでの 最大待機時間 (ミリ秒) 60000 Connect:Directブリッジ関連 62 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 cdAppName Connect:Directブリッジ・エージェントがConnect:Directノー ドに接続するときに使用するアプリケーション名。 WMQFTEの製品バージョン(例: 7.0.4) cdNodeLocalPortRange Connect:Direct ブリッジ・エージェントとConnect:Directノー ドとの間のソケット接続で使用するローカル・ポートの範囲。 None cdNodeProtocol Connect:Direct ブリッジ・エージェントがConnect:Direct ノードに接続するときに使用するプロトコル。 TCPIP cdNodeKeystore Connect:Direct ブリッジ・エージェントと、Connect:Direct ノードとの間のセキュア通信で使用する鍵ストアのパスを指定。 cdNodeProtocolにTCPIPをし指定した場合、無効。 None cdNodeKeystorePasswor d cdNodeKeystore プロパティーで指定する鍵ストアのパスワード。 cdNodeProtocolにTCPIPをし指定した場合、無効。 None cdNodeKeystoreType cdNodeKeystoreで指定する鍵ストアのファイル・フォーマット。 cdNodeProtocolにTCPIPをし指定した場合、無効。 jks cdNodeTruststore Connect:Directブリッジ・エージェントと、Connect:Directノー ドとの間のセキュア通信で使用するトラストストアのパス。 cdNodeProtocolにTCPIPをし指定した場合、無効。 None cdNodeTruststorePassw ord cdNodeTruststoreで指定するトラストストアのパスワード。 cdNodeProtocolにTCPIPをし指定した場合、無効。 None cdNodeTruststoreType cdNodeTruststoreで指定するトラストストアのファイル・フォーマッ ト。 cdNodeProtocolにTCPIPをし指定した場合、無効。 jks logCDProcess output0.logファイルでエージェントのイベント・ログに記録する Connect:Directプロセス・ロギングのレベル None Connect:Directブリッジ関連 63 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 enableQueueInputOutpu t ファイル⇔メッセージ間転送(エージェントが転送の一環としてソース・ キューからデータを読み取ったり、宛先キューにデータを書き込んだり する)の実行可否を指定 false enableSystemQueueInpu tOutput エージェントのWMQのシステム・キューへの読み取り/書き込み許可 注:このプロパティーを有効にする場合は、ユーザー・サンドボックス 機能を使用して、エージェントがアクセスできるキューを制限する必要 がある false maxDelimiterMatchLeng th 1つのテキスト・ファイルを複数のメッセージに分割するときに使用す るJava正規表現のマッチング項目と見なせる文字の最大数 5 maxInputOutputMessage Length エージェントによってソース・キューから読み取られるメッセージ、また は宛先キューに書き込まれるメッセージの最大長 (バイト単位) 1048576 monitorGroupRetryLimi t メッセージ・グループがまだキューに存在している場合に、モニターが メッセージからファイルへの転送を再度起動する最大回数 10 ファイル転送状況に変更があった場合に、エージェントがその状況を リパブリッシュする最大速度 (秒) 30 ファイル⇔メッセージ間転送関連 汎用エージェント・プロパティー agentStatusPublishRateLimit 注:小さすぎる値を設定すると、WMQネットワークのパフォーマンスにマイナスの影響を 与える可能性があります。 64 agentStatusPublishRateMin エージェントが自身の状況をパブリッシュする最小速度 (秒単位)。 agentStatusPublishRateLimit以上の値を指定 300 agentStatusJitterTolerance エージェントの状況メッセージのパブリッシュが遅れてもよい最大時間 (ミリ秒) 3000 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 enableMandatoryLockin g Windowsシステムでの、ファイルロックの施行(共有ロック(読み取り には)および排他ロック(書き込み))を指定 false ioQueueDepth ファイルI/OスレッドにキューイングされるファイルI/Oの上限値 10 ioIdleThreadTimeout ファイルI/Oの許容アイドル時間 10000 ioThreadPoolSize ファイルI/Oスレッドの上限値(プール値) 10 doNotUseTempOutputFil e ファイル転送時に一次ファイル書き出し停止 ※宛先エージェントで定義する値 z/OSシステムでは、順次 データ・セットではなく PDS データ・セット・メン バーに適用される false textReplacementCharac terSequence 文字コード変換失敗時の代替文字 None authorityChecking エージェントのアクションに対するユーザー権限検査やエージェントの 権限キューに対するアクセス制御などの、セキュリティー機能の有効 化・無効化を指定 false logAuthorityChecks output0.log ファイルでエージェントのイベント・ログに記録する権 限検査ロギングのレベルを指定 None userIdForClientConnec t WMQへのクライアント接続を介して伝播するユーザーIDを指定 None advancedSecurityPath WMQ Advanced Message Securityを使用する場合、Javaイ ンターセプターを含む1つ以上のJARファイルの場所を指定 None I/O関連 セキュリティー関連 65 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 commandPath Antタスクから呼び出し可能なコマンドへのパスを指定 commandPath指定時は、sandboxRootプロパティーのデフォルト設定に より、commandPathディレクトリーへの転送のアクセスを自動拒否 None transferRool FTEエージェントのルート・ディレクトリ FTEエージェント起動ユーザーのホー ム・ディレクトリ transferRootHLQ データ・セットの接頭辞 (z/OSのみ) FTEエージェント起動ユーザー sandboxRoot FTEエージェントが転送できるファイルのルート・ディレクトリを指定 None userSandboxes 転送を要求するユーザーのMQMDユーザー名に基づいて、ファイルの転送元 や転送先として使用できるファイル・システムの領域を制限 false transferAckTimeout 送信した転送メッセージに対する宛先エージェントからの応答タイム アウト(ミリ秒) 60000 transferAckTimeoutRet ries 宛先エージェントからの応答待機回数 5 maxTransferNegotiatio nTime 宛先エージェントがネゴシエーションを完了するまでに転送待機時間 (ミリ秒) 30000 senderTransferRetryIn terval 宛先で既に最大転送数が実行されているために、拒否された転送が 再試行されるまで待機する時間 (ミリ秒)。最小値は 1000 30000 ルート・ディレクトリ関連 タイムアウト関連 66 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 protocolServerType ファイルの送信先または送信元となるサーバーで使用されているネッ トワーク・プロトコルのタイプ(FTP/SFTP) デフォルトなし protocolServerHost ファイルの送信先または送信元となるプロトコル・ファイル・サーバー のホスト名 デフォルトなし protocolServerPort ファイルの送信先または送信元となるプロトコル・ファイル・サーバー のポート番号。値を設定しない場合、 FTP または SFTP の標準のデ フォルト・ポート番号が使用されます デフォルトなし protocolServerPlatform ファイルの送信先または送信元となるプロトコル・ファイル・サーバー のプラットフォーム(UNIX/WINDOWS) デフォルトなし protocolServerTimeZone ファイルの送信先または送信元となるプロトコル・ファイル・サーバー のタイム・ゾーン デフォルトなし protocolServerLocale ファイルの送信先または送信元となるプロトコル・ファイル・サーバー で使用される言語 デフォルトなし protocolServerFileEncoding テキスト・モードでファイルを転送する場合にファイル・サーバーで使 用される文字エンコード方式 デフォルトなし protocolServerListFormat FTP サーバーにのみ適用されるオプション。プロトコル・ファイル・ サーバーから返される情報をリストするファイルの形式を定義するリ スト形式 UNIX protocolServerLimitedWrite ファイル・サーバーに書き込みを行う際に、一時ファイルを作成し、転 送が完了した後にそのファイルをリネームするかどうかを指定 書き込み専用として構成されたファイル・サーバーの場合、 ファイル は、最終的な名前をそのまま使用して作成される false プロトコル・ブリッジ関連 67 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 protocolBridgeCredentialExitCl asses プロトコル・ブリッジ資格情報ユーザー出口ルーチンを実装するクラス のコンマ区切りリストを指定 デフォルトなし protocolBridgeCredentialConfi guration protocolBridgeCredentialExitClasses によって指定された出口クラス の initialize() メソッドに渡すストリング null recoverableTransferRetryInter val リカバリー可能な転送エラーを検出してから転送の再開を試みるまで の待機時間 (ミリ秒) プロトコル・ブリッジ・エージェント構成でのみ (特に、プロトコル・ファイ ル・サーバーとの通信中に検出されるリカバリー可能エラーに関して) 使用される 60000 調整キュー・マネージャーに送信されるログの MQMD.UserId デフォルトなし monitorReportTriggerF ail モニターで検出される環境と構成に関する障害状態をログ・メッセー ジとして SYSTEM.FTE トピックに報告するかどうかを指定 true monitorReportTriggerN otSatisfied トリガーが条件を満たさなかった場合、詳細情報を組み込んだログ・ メッセージを SYSTEM.FTE トピックに送信するかどうかを指定 false monitorReportTriggerS atisfied トリガーが条件を満たした場合、詳細情報を組み込んだログ・メッセー ジを SYSTEM.FTE トピックに送信するかどうかを指定 false monitorSilenceOnTrigg erFailure リソース・モニター・トリガーが連続してこの回数だけ失敗すると、障害 がレポートされなくなる許容回数 5 monitorStopOnInternal Failure リソース・モニターの内部 FFDC 条件が連続してこの回数だけ発生 すると、モニターの状態が停止に変更される許容回数 10 プロトコル・ブリッジ関連(続き) キュー関連 publicationMDUser リソース・モニター関連 68 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 traceFiles トレース・ファイルの保管世代数 5 traceSize トレース・ファイル・サイズ 20MB trace FTEエージェント開始時にトレースを開始するか None ITLMTraceLevel Tivoli License Manage で扱うトレースレベル MIN (MID、MAX) outputLogFiles 保持する output.log ファイルの合計数 5 outputLogSize 出力が次のファイルで折り返す前の、各 output.log ファイルの 最大サイズ (MB 単位) 1 outputLogEncoding エージェントが output.log ファイルを書き込む際に使用する文 字エンコード エージェントが実行されているプラッ トフォームのデフォルトの文字エン コード maxFilesForTransfer 1ファイル転送に含められるファイルの数 5000 maxSourceTransfers ソース・エージェントが1度に取り扱うことのできる転送メッセージ数 25 maxDestinationTransfe rs 宛先エージェントが1度に取り扱うことのできる転送メッセージ数 25 maxQueuedTransfers (WebSphere MQ File Transfer Edition V7.0.2 以降) エージェントが新規の転送要求をリジェクトするまで、キューに入れる ことができる保留中の転送メッセージ数 1000 トレース関連 転送制限関連 69 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 agentForceConsistentP athDelimiters 転送出口に対して指定するソース・ファイル情報と宛先ファイル情報 のパス区切り文字を強制的にUNIXスタイルのスラッシュ(/)に変更 false destinationTransferSt artExitClasses DestinationTransferStartExit を実装したクラスを指定 カンマ , 区切りで複数クラスを指定可能 デフォルトなし destinationTransferEn dExitClasses DestinationTransferEndExitを実装したクラスを指定 カンマ , 区切りで複数クラスを指定可能 デフォルトなし exitClassPath ユーザーEXITを格納しているディレクトリを指定 FTEエージェントの exits ディレ クトリ exitNativeLibraryPath ユーザーEXITが使用するライブラリを指定 FTEエージェントの exits ディレ クトリ monitorExitClasses monitorExitClassesを実装したクラスを指定 カンマ , 区切りで複数クラスを指定可能 デフォルトなし sourceTransferStartEx itClasses SourceTransferStartExitを実装したクラスを指定 カンマ , 区切りで複数クラスを指定可能 デフォルトなし sourceTransferEndExit Classes SourceTransferEndExitを実装したクラスを指定 カンマ , 区切りで複数クラスを指定可能 デフォルトなし protocolBridgeCredent ialExitClasses protocolBridgeCredentialExitを実装したクラスを指定 デフォルトなし ユーザーExit関連 70 カンマ , 区切りで複数クラスを指定可能 © 2011 IBM Corporation IBM Software Group | agent.properties agent.propertiesに設定可能な拡張属性 属性 値 デフォルト値 WMQ V7.0.1 キュー・マネージャーへのクライアント接続固有 agentDataCompression リモートのWMQ サーバーとネゴシエーションするための、ファイル・ データ転送用の圧縮タイプをカンマ , 区切りで指定 デフォルトなし これらの値は、エージェントのクライアント・チャネルに (指定されて いる順序で) プロパティーとして渡されます。次いで WMQクライアン トは、このクライアント・チャネルとリモート・サーバー・チャネルの間の ネゴシエーションを処理して、その 2 つのチャネルの圧縮プロパ ティー間で一致する項目を検出します。一致項目が見つからない場 合には、MQCOMPRESS_NONEを採用する。 z/OS固有 bpxwdynAllocAdditiona lOptions 71 z/OSのBPXWDYNテキスト・インターフェースを使用したデータ・セット のアロケーションおよびオープン時の、テープ装置の自動マウントを 指定 MOUNT (z/OS V1R8以降) © 2011 IBM Corporation IBM Software Group | SSLプロパティー agent.properties/coordination.properties/command.propertiesに設定可能なSSLプロパティー SSL をWMQおよびWMQFTE とともに使用し、エージェントとキュー・マネージャー間の許可されない接続を防止 エージェントとキュー・マネージャーとの間のメッセージ・トラ フィックを暗号化 SSL関連 72 agent.properties の設 定値 coordination.properties の設 定値 command.propertiesの設定値 項目 agentSslCipherSpec coordinationSslCipherSpec connectionSslCipherSpec 暗号化方式 agentSslCipherSuite coordinationSslCipherSuite connectionSslCipherSuite 暗号化方式スイート agentSslPeerName coordinationSslPeerName connectionSslPeerName ピア名 agentSslTrustStore coordinationSslTrustStore connectionSslTrustStore SSL サーバー認証用 鍵ストア agentSslTrustStorePas sword coordinationSslTrustStorePa ssword connectionSslTrustStorePas sword SSL サーバー認証用 鍵ストア パスワード agentSslKeyStore coordinationSslKeyStore connectionSslKeyStore SSL クライアント認証用 鍵ストア agentSslKeyStorePassw ord coordinationSslKeyStorePass word connectionSslKeyStorePassw ord SSL クライアント認証用 鍵ストア パスワード © 2011 IBM Corporation IBM Software Group | 構成ファイル まとめ 構成ディレクトリ(z/OS) 構成ファイル論理関係図 <data directory> wmqfte.properties defaultProperties=FTE1 wmqfte.properties FTEドメイン:FTE1 command. coordination. properties properties FTEエージェント構成 FTEエージェント構成 agent.properties agent.properties 調整QMGR名/ 調整QMGR名.mqsc FTEドメイン構成 command.properties coordination.properties agents/ agent名/ FTEエージェント構成 agent.properties agent名_create.mqsc FTEドメイン:FTE2 command. coordination. properties properties agent名_delete.mqsc exits/ FTEエージェント構成 logs/ agent.properties ffdc/ agent名/ 調整QMGR名/ FTEエージェント構成 FTEドメイン構成 ※UNIX系およびWindowsのディレクトリ構造も同様 73 © 2011 IBM Corporation IBM Software Group | 構成例 前提 構成に必要な製品を導入済み インストール時の構成ステップをスキップしていること 「構成例1 集中型」で導入する製品 serverA: 192.168.0.1 server1: 192.168.0.2 server2: 192.168.0.3 FTEサーバー・エディション FTE クライアント・エディション FTE クライアント・エディション MQ v7サーバー 分散 server1: 192.168.0.2 z/OSまたは分散 分散 z/OSまたは分散 「構成例2 分散型」で導入する製品 ※ドメイン内に必ず1つは FTEサーバー・エディションの 導入が必要 server2: 192.168.0.3 FTEサーバー・エディション FTEサーバー ・エディション or FTEクライアント・エディション MQ v6 or v7 サーバー MQ v6 or v7 サーバー serverA: 192.168.0.1 ※ドメイン内に必ず1つは FTEサーバー・エディションの 導入が必要 FTEサーバ・エディションの場合: z/OSまたは分散 FTEクライアントエディションの場合:分散 MQ v7 サーバー 導入済み製品 z/OSまたは分散 74 構成可能なプラットフォーム © 2011 IBM Corporation IBM Software Group | 基本構成1 集中型 MQ v7 キュー・マネージャーを1つ作成し、複数の役割を兼任 調整キュー・マネージャー コマンド・キュー・マネージャー エージェント・キュー・マネージャー ファイル転送を行うサーバー上にFTEエージェントを構成 FTEエージェントとキュー・マネージャーの間はクライアント接続 FTEエージェントとキュー・マネージャーが同一筐体の場合はバインディング接続も可 serverA: 192.168.0.1 server1: 192.168.0.2 QMGR(MQ v7): FTE1 MQクライアント接続 File FTEエージェント AG1 FTE1.SVRCONN server2: 192.168.0.3 MQクライアント接続 FTE1.SVRCONN FTEエージェント AG2 File 調整 コマンド実行 コマンド コマンド実行 エージェント 構成情報一覧 サーバー serverA ドメイン名 FTE1 調整QMgr/ コマンドQMgr/ エージェントQMgr FTEエージェント名 75 キュー・マネージャー名 FTE1 ホスト名/IPアドレス 192.168.0.1 ポート 1414 チャネル FTE1.SVRCONN server1 server2 凡例 コマンド・キュー・マネージャー ー FTEエージェント・キュー・マネージャー 調整・キュー・マネージャー AG1 AG2 物理的なサーバー © 2011 IBM Corporation IBM Software Group | 構成の流れ serverA の構成 キュー・マネージャー FTE1 の作成とMQオブジェクトの作成 調整キュー・マネージャーのセットアップ 構成ファイルの設定 FTE用MQオブジェクトの定義 コマンド・キュー・マネージャーのセットアップ 構成ファイルの作成 server1/server2 の構成 調整キュー・マネージャーのセットアップ コマンド・キュー・マネージャーのセットアップ FTEエージェント (AG1/AG2) の作成 FTEエージェントが使用するキューをキュー・マネージャーFTE1上に作成 *ここでは、dataDirectory を /var/IBM/WMQFTE とします 76 © 2011 IBM Corporation IBM Software Group | serverA の構成 キュー・マネージャー FTE1 の作成とMQオブジェクトの作成 分散環境のキュー・マネージャーおよびMQオブジェクト作成のコマンド実行例 $ crtmqm FTE1 QMgr作成 $ strmqm FTE1 QMgr開始 $ echo “def listener(LSR.1414) trptype(tcp) port(1414) control(qmgr)” | runmqsc FTE1 MQリスナー・サービスの登録 $ echo “start listener(LSR.1414)” | runmqsc FTE1 サービスの開始 $ echo “dis lsstatus(LSR.1414)” | runmqsc FTE1 MQリスナーの起動を確認 $ echo “def channel(FTE1.SVRCONN) chltype(SVRCONN)” | runmqsc FTE1 サーバー接続チャネルの作成 serverA: 192.168.0.1 QMGR(MQ v7): FTE1 MQリスナー LSR.1414 77 チャネル FTE1.SVRCONN © 2011 IBM Corporation IBM Software Group | serverA の構成 調整キュー・マネージャーのセットアップ fteSetupCoordination コマンドを実行し、FTE1を調整キュー・マネージャーとして設定 キュー・マネージャー FTE1 が起動していること コマンド実行例 $ fteSetupCoordination –coordinationQMgr FTE1 コマンドを実行すると、調整キュー・マネージャーに必要なオブジェクト定義用のmqscファイルが出力される (次頁参照) coordination.propertiesファイルが作成される FTEドメイン配下のディレクトリ構成が作成される coordination.properties の内容 #Fri Dec 12 08:43:51 JST 2008 coordinationQMgr= FTE1 * クライアント接続の場合は、ホスト名が必須。 その他オプションでポート番号、チャネル名の指定が可能 mqscファイルをもとにMQオブジェクトを作成する 分散環境コマンド実行例 $ runmqsc FTE1 < /var/IBM/WMQFTE/FTE1/FTE1.mqsc serverA: 192.168.0.1 QMGR(MQ v7): FTE1 チャネル FTE1.SVRCONN 調整 SYSTEM.FTE トピック SYSTEM.FTE MQリスナー LSR.1414 coordination. properties 78 © 2011 IBM Corporation IBM Software Group | <参考> z/OS環境におけるキュー・マネージャー の作成とMQオブジェクトの作成 キュー・マネージャーおよびチャネル・イニシエータの作成 構成手順は、WebSphere MQ z/OS システム・セットアップ・ガイドを参照ください。 http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.csqsav.doc/zs10120_.htm 調整QMGRのMQオブジェクトの作成 z/OSではrunmqscコマンドはサポートされていない。 mqscファイルを参照し、QMGR起動時に定義が読み込まれるよう定義体を作成する。または、CSQUTIL-COMMANDを使 用して、必要なオブジェクトを定義する。 z/OSの ドメイン名.mqsc ファイルの中身 (1/2) DEFINE TOPIC('SYSTEM.FTE') TOPICSTR('SYSTEM.FTE') REPLACE ALTER TOPIC('SYSTEM.FTE') NPMSGDLV(ALLAVAIL) PMSGDLV(ALLAVAIL) DEFINE QLOCAL(SYSTEM.FTE) LIKE(SYSTEM.BROKER.DEFAULT.STREAM) REPLACE ALTER QLOCAL(SYSTEM.FTE) DESCR('Stream for WMQFTE Pub/Sub interface') * Altering namelist: SYSTEM.QPUBSUB.QUEUE.NAMELIST * Value prior to alteration: DISPLAY NAMELIST(SYSTEM.QPUBSUB.QUEUE.NAMELIST) ALTER NAMELIST(SYSTEM.QPUBSUB.QUEUE.NAMELIST) + NAMES(SYSTEM.BROKER.DEFAULT.STREAM+ ,SYSTEM.BROKER.ADMIN.STREAM,SYSTEM.FTE) * Altering PSMODE. Value prior to alteration: DISPLAY QMGR PSMODE ALTER QMGR PSMODE(ENABLED) 79 © 2011 IBM Corporation IBM Software Group | <参考> z/OS環境におけるキュー・マネージャー の作成とMQオブジェクトの作成 z/OSの ドメイン名.mqsc ファイルの中身 (2/2) 80 DEFINE QLOCAL(SYSTEM.FTE.DATABASELOGGER.REJECT) + DESCR('Messages rejected by the FTE database logger.') + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(999999999) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE DEFINE QLOCAL(SYSTEM.FTE.DATABASELOGGER.COMMAND) + DESCR('Command messages to control the FTE database logger.') + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(999999999) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(5000) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE © 2011 IBM Corporation IBM Software Group | serverA の構成 コマンド・キュー・マネージャーのセットアップ fteSetupCommands コマンドを実行し、FTE1をコマンド・キュー・マネージャーに設定する キュー・マネージャー FTE1 が起動していること コマンド実行例 $ fteSetupCommands –connectionQMgr FTE1 コマンド・キュー・マネージャー設定ファイルが作成される command.properties の内容 #Fri Dec 12 08:44:51 JST 2008 connectionQMgr= FTE1 * クライアント接続の場合は、ホスト名が必須。 その他オプションでポート番号、チャネル名の指定が可能 sevrerA: 192.168.0.1 QMGR(MQ v7): FTE1 チャネル FTE1.SVRCONN MQリスナー LSR.1414 coordination. properties 81 調整 コマンド SYSTEM.FTE トピック SYSTEM.FTE command. properties © 2011 IBM Corporation IBM Software Group | server1 の構成 調整キュー・マネージャーのセットアップ キュー・マネージャーFTE1にクライアント接続するための情報が必要 キュー・マネージャーFTE1 の MQリスナーが起動していること コマンド実行例 $ fteSetupCoordination –coordinationQMgr FTE1 –coordinationQMgrHost 192.168.0.1 -coordinationQMgrChannel FTE1.SVRCONN –coordinationQMgrPort 1414 コマンド・キュー・マネージャーのセットアップ キュー・マネージャーFTE1にクライアント接続するための情報が必要 キュー・マネージャーFTE1 の MQリスナーが起動していること コマンド実行例 $ fteSetupCommands –connectionQMgr FTE1 –connectionQMgrHost 192.168.0.1 -connectionQMgrChannel FTE1.SVRCONN –connectionQMgrPort 1414 server1: 192.168.0.2 FTEエージェント AG1 coordination. properties command. properties agent.properties 82 © 2011 IBM Corporation IBM Software Group | server1 の構成 FTEエージェントの作成 fteCreateAgent コマンドを実行し、FTEエージェント AG1 を作成する コマンド実行例 $ fteCreateAgent –agentName AG1 –agentQMgr FTE1 –agentQMgrHost 192.168.0.1 -agentQMgrChannel FTE1.SVRCONN –agentQMgrPort 1414 コマンドを実行すると以下が作成される FTEエージェントのディレクトリ構成 agent.propertiesファイル FTEエージェント用MQオブジェクトの作成/削除用mqscファイル – エージェント名_create.mqsc (作成用) ※p85にサンプルを記載 – エージェント名_delete.mqsc (削除用) ※p86にサンプルを記載 server1: 192.168.0.2 AG1_create.mqsc AG1_delete.mqsc FTEエージェント AG1 coordination. properties command. properties agent.properties 83 agent.properties の内容 # #Fri Dec 12 08:48:25 JST 2008 agentName=AG1 agentQMgr=FTE1 agentDesc= agentQMgrHost=192.168.0.1 agentQMgrChannel=FTE1.SVRCONN agentQMgrPort=1414 © 2011 IBM Corporation IBM Software Group | <参考>z/OSのエージェント用mqscファイル 作成用(_create.mqsc) ※fteCreateAgentコマンドの実行時に作成される DEFINE QLOCAL(SYSTEM.FTE.COMMAND.A1) + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(5000) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE DEFINE QLOCAL(SYSTEM.FTE.DATA.A1) + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(5000) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE (1/3) 84 DEFINE QLOCAL(SYSTEM.FTE.EVENT.A1) + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(5000) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE DEFINE QLOCAL(SYSTEM.FTE.REPLY.A1) + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(5000) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE DEFINE QLOCAL(SYSTEM.FTE.STATE.A1) + DEFPRTY(0) + DEFSOPT(SHARED) + GET(ENABLED) + MAXDEPTH(5000) + MAXMSGL(4194304) + MSGDLVSQ(PRIORITY) + PUT(ENABLED) + RETINTVL(999999999) + SHARE + NOTRIGGER + USAGE(NORMAL) + REPLACE (2/3) (3/3) © 2011 IBM Corporation IBM Software Group | <参考>z/OSのエージェント用mqscファイル 削除用(_delete.mqsc) ※fteCreateAgentコマンドの実行時に作成される CLEAR QLOCAL(SYSTEM.FTE.COMMAND.A1) DELETE QLOCAL(SYSTEM.FTE.COMMAND.A1) CLEAR QLOCAL(SYSTEM.FTE.DATA.A1) DELETE QLOCAL(SYSTEM.FTE.DATA.A1) CLEAR QLOCAL(SYSTEM.FTE.REPLY.A1) DELETE QLOCAL(SYSTEM.FTE.REPLY.A1) CLEAR QLOCAL(SYSTEM.FTE.STATE.A1) DELETE QLOCAL(SYSTEM.FTE.STATE.A1) CLEAR QLOCAL(SYSTEM.FTE.EVENT.A1) DELETE QLOCAL(SYSTEM.FTE.EVENT.A1) 85 © 2011 IBM Corporation IBM Software Group | server1 の構成 FTEエージェント用キューをエージェント・キュー・マネージャー(FTE1)上で作成する /var/IBM/WMQFTE/FTE1/agents/AG1/AG1_create.mqsc を serverA に転送 AG1用のキューをキュー・マネージャーFTE1に作成 分散環境コマンド実行例 $ runmqsc FTE1 < AG1_create.mqsc server2に対しても 同様の手続きで FTEエージェントを作成する 作成されるキュー SYSTEM.FTE.COMMAND.AG1 SYSTEM.FTE.DATA.AG1 SYSTEM.FTE.EVENT.AG1 SYSTEM.FTE.REPLY.AG1 SYSTEM.FTE.STATE.AG1 fteListAgents コマンドを実行し、FTEエージェントが作成されたことを確認 コマンド実行例 $ fteListAgents server1: 192.168.0.2 FTEエージェント AG1 coordination. properties command. properties agent.properties 86 serverA: 192.168.0.1 QMGR(MQ v7): FTE1 調整 コマンド coordination. properties エージェント command. properties server2: 192.168.0.3 FTEエージェント AG2 coordination. properties command. properties agent.properties © 2011 IBM Corporation IBM Software Group | ファイル転送テスト FTEエージェントを起動 FTEエージェントが構成されているローカル・マシン上でコマンドを実行 server1上で実行 $ fteStartAgent AG1 server2上で実行 $ fteStartAgent AG2 ログ・ファイルを確認し、FTEエージェントが起動したことを確認 data_directory/ドメイン名/agents/A1/logs/output0.log output0.log の内容 ************ Start Display Current Environment ************ Build level: f700-L081125.1 Properties: agentDesc=, agentName=AG1, agentQMgr=FTE1, agentQMgrChannel=FTE1.SVRCONN agentQMgrHost=192.168.0.1, agentQMgrPort=1414, coordinationQMgr=FTE1, coordinationQMgrChannel=FTE1.SVRCONN coordinationQMgrHost=192.168.0.1, coordinationQMgrPort=1414 transferRoot=/home/fteuser ************* End Display Current Environment ************* [12/12/2008 10:52:28:628 JST] 00000001 AgentRuntime I BFGAG0058I: The agent has been successfully initialized. 87 © 2011 IBM Corporation IBM Software Group | ファイル転送テスト ファイル転送実施 AG1 から AG2 に対して任意のファイルを転送する server1上で実行 $ fteCreateTransfer –sa AG1 –da AG2 –df /server2/work/to.txt /server1/work/from.txt serverA: 192.168.0.1 server1: 192.168.0.2 File FTE エージェント AG1 QMGR(MQ v7): FTE1 AG1用キュー FTE エージェント AG2 File コマンド実行 コマンド実行 fteCreateTransfer 88 server2: 192.168.0.3 AG2用キュー © 2011 IBM Corporation IBM Software Group | 基本構成2 分散型 ファイル転送を行うサーバーに、FTEエージェントとエージェント・キュー・マネージャーを構成 エージェントとエージェント・キュー・マネージャーはバインディング接続 エージェント・キュー・マネージャーはコマンド・キュー・マネージャーを兼任 – ファイル転送FTEコマンドをバインディング接続で実行する キュー・マネージャー間は、キュー・マネージャー同名のトランスミッション・キューとMQチャネルを使用して接続 監視のために調整キュー・マネージャーを別に配置 server2: 192.168.0.3 server1: 192.168.0.2 File/ FTE DataSet エージェント AG1 コマンド実行 QMGR(MQ v6/v7): QM_AG1 エージェント コマンド エージェント QM_AG2 MQチャネル接続 コマンド・キュー・マネージャー FTEエージェント・キュー・マネージャー エージェント AG1.AG2 AG2.AG1 FTE2 凡例 QMGR(MQ v6/v7): QM_AG2 QM_AG1 コマンド エージェント FTE エージェント AG2 File/ DataSet コマンド実行 FTE2 AG E1 1. T serverA: 192.168.0.1 FT F 2. E1 G A QMGR(MQ v7): FTE2 MQクライアント接続 調整 監視 MQエクスプローラー 調整・キュー・マネージャー 物理的なサーバー 89 © 2011 IBM Corporation IBM Software Group | 構成の流れ serverA の構成 キュー・マネージャー FTE2 の作成とMQオブジェクトの作成 調整キュー・マネージャーのセットアップ 構成ファイルの設定 FTE用MQオブジェクトの作成 server1/server2 の構成 キュー・マネージャー QM_AG1/QM_AG2 の作成とMQオブジェクトの作成 調整キュー・マネージャーの構成ファイルの設定 コマンド・キュー・マネージャーの構成ファイルの設定 FTEエージェント(AG1/AG2) の作成 FTEエージェントが使用するキューをエージェント・キュー・マネージャー上に作成 構成情報一覧 サーバー ドメイン名 ホスト名/IPアドレス 調整QMgr コマンドQMgr/ エージェントQMgr *ここでは、dataDirectory を /var/IBM/WMQFTE とします。 FTEエージェント名 90 キュー・マネージャー名 ポート チャネル キュー・マネージャー名 ポート SDRチャネル serverA FTE2 192.168.0.1 FTE2 1414 FTE2.SVRCONN − − − RCVRチャネル トランスミッション・キュー − − − server1 server2 192.168.0.2 192.168.0.3 − − − − QM_AG1 QM_AG2 1414 1414 AG1.AG2 AG2.AG1 AG1.FTE2 AG2.FTE2 AG2.AG1 AG1.AG2 QM_AG2 QM_AG1 FTE2 FTE2 AG1 AG2 © 2011 IBM Corporation IBM Software Group | serverA の構成 キュー・マネージャー FTE2 の作成とMQオブジェクトの作成 分散環境のキュー・マネージャーおよびMQオブジェクト作成のコマンド実行例 $ crtmqm FTE2 QMgr作成 $ strmqm FTE2 QMgr開始 $ echo “def listener(LSR.1414) trptype(tcp) port(1414) control(qmgr)” | runmqsc FTE2 MQリスナー・サービスの登録 $ echo “start listener(LSR.1414)” | runmqsc FTE2 サービスの開始 $ echo “dis lsstatus(LSR.1414)” | runmqsc FTE2 MQリスナーの起動を確認 $ echo “def channel(FTE2.SVRCONN) chltype(SVRCONN)” | runmqsc FTE2 サーバー接続チャネルの作成 通信用MQオブジェクトの作成 エージェント・キュー・マネージャーと接続するための MQオブジェクトを作成するため、FTE2_object.mqsc ファイルを作成 する 作成するMQオブジェクト一覧 mqscファイル: FTE2_object.mqsc MQオブジェクトの種類 オブジェクト名 DEF CHL(AG1.FTE2) CHLTYPE(RCVR) REPLACE DEF CHL(AG2. FTE2) CHLTYPE(RCVR) REPLACE RCVRチャネル AG1. FTE2 AG2. FTE2 作成した MQSC ファイルを使用してMQオブジェクトを作成 分散環境コマンド実行例 QMGR(MQ v7): FTE2 $ runmqsc FTE2 < FTE2_object.mqsc QM_AG1 AG1. FTE2 調整 QM_AG2 AG2. FTE2 LSR.1414 FTE2.SVRCONN 91 © 2011 IBM Corporation IBM Software Group | serverA の構成 調整キュー・マネージャー用のMQオブジェクトを作成 後続の server1 での作業で転送する、調整キュー・マネージャー用MQオブジェクトを作成するための FTE2.mqsc ファイ ルを使用 分散環境コマンド実行例 $ runmqsc FTE2 < FTE2.mqsc 92 © 2011 IBM Corporation IBM Software Group | server1 の構成 キュー・マネージャー QM_AG1 の作成とMQオブジェクトの作成 分散環境コマンド実行例 $ crtmqm QM_AG1 QMgr作成 $ strmqm QM_AG1 QMgr開始 $ echo “def listener(LSR.1414) trptype(tcp) port(1414) control(qmgr)” | runmqsc QM_AG1 MQリスナー・サービスの登録 $ echo “start listener(LSR.1414)” | runmqsc QM_AG1 サービスの開始 $ echo “dis lsstatus(LSR.1414)” | runmqsc QM_AG1 MQリスナーの起動を確認 通信用MQオブジェクトの作成 調整キュー・マネージャーと、エージェント・キュー・マネージャー QM_AG2 と接続するための MQオブジェクトを作成する ため、QM_AG1_object.mqsc ファイルを作成する mqscファイル: QM_AG1_object.mqsc DEF QL(FTE2) USAGE(XMITQ) REPLACE DEF QL(QM_AG2) USAGE(XMITQ) REPLACE DEF CHL(AG1.FTE2) CHLTYPE(SDR) + CONNAME(’192.168.0.1(1414)’) XMITQ(FTE2) REPLACE DEF CHL(AG1.AG2) CHLTYPE(SDR) + CONNAME(’192.168.0.3(1414)’) XMITQ(QM_AG2) REPLACE DEF CHL(AG2.AG1) CHLTYPE(RCVR) REPLACE 作成するMQオブジェクト一覧 MQオブジェクトの種類 オブジェクト名 トランスミッション・キュー FTE2 QM_AG2 SDRチャネル AG1.FTE2 AG1.AG2 RCVRチャネル AG2.AG1 作成した MQSC ファイルを使用してMQオブジェクトを作成 分散環境コマンド実行例 QMGR(MQ v6/MQ v7): QM_AG1 $ runmqsc QM_AG1 < QM_AG1_object.mqsc QM_AG2 AG1.AG2 QM_AG2 MQリスナー LSR.1414 AG2.AG1 AG1.FTE2 FTE2 FTE2 93 © 2011 IBM Corporation IBM Software Group | server1 の構成 調整キュー・マネージャーのセットアップ fteSetupCoordination コマンドを実行し、FTE2を調整キュー・マネージャーとして設定 キュー・マネージャー FTE2が起動していること コマンド実行例 $ fteSetupCoordination –coordinationQMgr FTE2 –coordinationQMgrHost 192.168.0.1 -coordinationQMgrChannel FTE2.SVRCONN –coordinationQMgrPort 1414 コマンドを実行すると、調整キュー・マネージャーに必要なオブジェクト定義用のmqscファイルが出力される(P55参照) coordination.propertiesファイルが作成される FTEドメイン配下のディレクトリ構成が作成される coordination.properties の内容 #Fri Dec 12 08:43:51 JST 2008 coordinationQMgr= FTE2 mqscファイルをserverAに転送する 調整キュー・マネージャーとのチャネルを開始し、ステータスを確認する(オプション) ステータスがRUNNINGであればOK 調整キュー・マネージャーとのチャネル接続はログ送信のためには必須だが、ファイル転送には必須ではない 分散環境コマンド実行例 $ echo “start chl(AG1.FTE2)” | runmqsc QM_AG1 $ echo “dis chs(*)” | runmqsc QM_AG1 94 © 2011 IBM Corporation IBM Software Group | server1 の構成 コマンド・キュー・マネージャーのセットアップ fteSetupCommands コマンドを実行し、QM_AG1 をコマンド・キュー・マネージャーに設定 コマンド実行例 $ fteSetupCommands –connectionQMgr QM_AG1 server1: 192.168.0.2 コマンド・キュー・マネージャー設定ファイルが作成される QMGR(MQ v6/MQ v7) QM_AG1 command.properties の内容 #Fri Dec 12 08:44:51 JST 2008 connectionQMgr= QM_AG1 95 コマンド coordination. properties command. properties © 2011 IBM Corporation IBM Software Group | server1 の構成 FTEエージェントの作成 fteCreateAgent コマンドを実行し、FTEエージェント AG1 を作成する コマンド実行例 $ fteCreateAgent –agentName AG1 –agentQMgr QM_AG1 コマンドを実行すると以下が作成される FTEエージェントのディレクトリ構成 agent.propertiesファイル FTEエージェント用MQオブジェクトの作成/削除用mqscファイル – エージェント名_create.mqsc (作成用) – エージェント名_delete.mqsc (削除用) server1: 192.168.0.2 agent.properties の内容 # #Fri Dec 12 08:48:25 JST 2008 agentQMgr=QM_AG1 agentDesc= QMGR(MQ v6/MQ v7) QM_AG1 AG1_create.mqsc FTEエージェント AG1 AG1_delete.mqsc coordination. properties エージェント コマンド command. properties agent.properties 96 © 2011 IBM Corporation IBM Software Group | server1 の構成 FTEエージェント用キューをエージェント・キュー・マネージャー(QM_AG1)上で作成する /var/IBM/WMQFTE/FTE2/agents/AG1/AG1_create.mqsc を用いる 分散環境コマンド実行例 $ runmqsc QM_AG1 < AG1_create.mqsc 作成されるキュー SYSTEM.FTE.COMMAND.AG1 SYSTEM.FTE.EVENT.AG1 SYSTEM.FTE.DATA.AG1 SYSTEM.FTE.REPLY.AG1 SYSTEM.FTE.STATE.AG1 fteListAgents コマンドを実行し、FTEエージェントが作成されたことを確認 コマンド実行例 server1の構成 $ fteListAgents QMGR(MQ v6/MQ v7) QM_AG1 FTEエージェント AG1 エージェント AG1用 コマンド AG1.FTE2 FTE2 coordination. properties command. properties agent.properties 97 QM_AG2 AG1.AG2 AG2.AG1 FTE用 通信用 © 2011 IBM Corporation IBM Software Group | server2 の構成 キュー・マネージャー QM_AG2 の作成とMQオブジェクトの作成 分散環境コマンド実行例 $ crtmqm QM_AG2 $ strmqm QM_AG2 $ echo “def listener(LSR.1414) trptype(tcp) port(1414) control(qmgr)” | runmqsc QM_AG2 $ echo “start listener(LSR.1414)” | runmqsc QM_AG2 $ echo “dis lsstatus(LSR.1414)” | runmqsc QM_AG2 QMgr作成 QMgr開始 MQリスナー・サービスの登録 サービスの開始 MQリスナーの起動を確認 通信用MQオブジェクトの作成 調整キュー・マネージャーと、エージェント・キュー・マネージャー QM_AG1 と接続するための MQオブジェクトを作成する ため、QM_AG2_object.mqsc ファイルを作成する mqscファイル: QM_AG2_object.mqsc DEF QL(FTE2) USAGE(XMITQ) REPLACE DEF QL(QM_AG1) USAGE(XMITQ) REPLACE DEF CHL(AG2.FTE2) CHLTYPE(SDR) + CONNAME(’192.168.0.1(1414)’) XMITQ(FTE2) REPLACE DEF CHL(AG2.AG1) CHLTYPE(SDR) + CONNAME(’192.168.0.3(1414)’) XMITQ(QM_AG1) REPLACE DEF CHL(AG1.AG2) CHLTYPE(RCVR) REPLACE 作成するMQオブジェクト一覧 MQオブジェクトの種類 オブジェクト名 トランスミッション・キュー FTE2 QM_AG1 SDRチャネル AG2.FTE2 AG2.AG1 RCVRチャネル AG1.AG2 作成した MQSC ファイルを使用してMQオブジェクトを作成 QMGR(MQ v6/MQ v7): QM_AG2 QM_AG1 分散環境コマンド実行例 AG2.AG1 $ runmqsc QM_AG2 < QM_AG2_object.mqsc AG1.AG2 QM_AG1 FTE2 MQリスナー LSR.1414 AG2.FTE2 FTE2 98 © 2011 IBM Corporation IBM Software Group | server2 の構成 残りの構成はserver1と同様の手順でセットアップする 94ページ∼97ページ参照 server2の構成 QMGR(MQ v6/MQ v7) QM_AG2 AG2用 エージェント コマンド AG2.FTE2 FTEエージェント AG2 FTE2 AG1.AG2 AG2.AG1 QM_AG1 coordination. properties command. properties agent.properties 99 FTE用 通信用 © 2011 IBM Corporation IBM Software Group | ファイル転送テスト FTEエージェントを起動 FTEエージェントが構成されているローカル・マシン上でコマンドを実行 server1上で実行 $ fteStartAgent AG1 server2上で実行 $ fteStartAgent AG2 ログ・ファイルを確認し、FTEエージェントが起動したことを確認 data_directory/ドメイン名/agents/A1/logs/output0.log output0.log の内容 ************ Start Display Current Environment ************ Build level: f700-L081125.1 Properties: agentDesc=, agentName=AG1, agentQMgr=QM_AG1, coordnationQMgr=FTE2, coordinationQMgrChannel=FTE2.SVRCONN coordinationQMgrHost=192.168.0.1, coordinationQMgrPort=1414, transferRoot=/home/fteuser ************* End Display Current Environment ************* [12/12/2008 10:52:28:628 JST] 00000001 AgentRuntime I BFGAG0058I: The agent has been successfully initialized. エージェント・キュー・マネージャー間のチャネルを開始し、ステータスを確認 チャネル AG1.AG2 / AG2.AG1 が RUNNINGであればOK server1上で実行 $ echo “start chl(AG1.AG2)” | runmqsc QM_AG1 $ echo “dis chs(*)” | runmqsc QM_AG1 100 server2上で実行 $ echo “start chl(AG2.AG1)” | runmqsc QM_AG2 $ echo “dis chs(*)” | runmqsc QM_AG2 © 2011 IBM Corporation IBM Software Group | ファイル転送テスト ファイル転送実施 AG1 から AG2 に対して任意のファイルを転送する server1上で実行 $ fteCreateTransfer –sa AG1 –da AG2 –df /server2/work/to.txt /server1/work/from.txt server1: 192.168.0.2 File FTEエージェント AG1 server2: 192.168.0.3 QMGR(MQ v6/v7): QM_AG1 AG2.AG1 AG1.AG2 AG1用キュー コマンド実行 fteCreateTransfer A G1 QMGR(MQ v6/v7): QM_AG2 .FT E2 QMGR(MQ v7): FTE2 FTEエージェント AG2 File AG2用キュー 2 AG E2 .FT FTE2とのチャネル接続は、ログ送信のためには必須だが ファイル転送には必須ではない serverA: 192.168.0.1 101 © 2011 IBM Corporation IBM Software Group | リモート・ツールを使用してファイル転送を行う構成 MQ や FTEサーバー/クライアントを導入することなく、リモートツールを使用して、リモートからファイル転送を 実行 ファイル転送要求実行の一元化が可能 FTE リモートツールのみ導入すればよい ライセンスは不要 GUIを使用する場合は、MQエクスプローラーの導入が必須 (Windows&Linux x86 のみ) 設定 調整キュー・マネージャー情報のセットアップ コマンド・キュー・マネージャー情報のセットアップ エージェント情報のセットアップ(オプション) 作成しない場合は、ファイル転送時に-sm や -dm を指定する必要がある fteCreateTransfer –sa AG1 –da AG2 –df C:¥ag2work¥to.txt D:¥ag1work¥from.txt FTEリモート・ツール 導入製品 QMGR FTE1 コマンド実行 MQエクスプローラー 構成済み FTE エージェント AG1 AG2用キュー command. properties agent.properties File AG1用キュー MQエクスプローラー coordination. properties from.txt エージェント FTE エージェント AG2 to.txt File コマンド 調整 102 © 2011 IBM Corporation IBM Software Group | 分散型構成時の考慮点 実行するFTEコマンドによっては、コマンド・キュー・マネージャーに接続しない 照会系FTEコマンドの接続先 調整キュー・マネージャー FTEエージェントの運用/管理系FTEコマンドの接続先 エージェント・キュー・マネージャー FTEドメインのセットアップ系FTEコマンドの接続先 なし リモート・ツールのみを導入し、コマンド実行を1箇所にまとめる場合、接続パスが1つになるような構成を検討する 前途の通り、FTEコマンドによって接続先が分かれるため、接続発生箇所を考慮して構成 接続パスが複数になるケース MQクライアント接続 リモート・ツール導入マシン コマンド実行 fteListAgents fteCreateTransfer server1: 192.168.0.2 FTE エージェント AG1 103 QMGR(MQ v6/v7): QM_AG1 エージェント コマンド serverA: 192.168.0.1 QMGR(MQ v7): FTE2 調整 © 2011 IBM Corporation IBM Software Group | z/OSを含めた構成時の考慮点 FTEエージェントとエージェント・キュー・マネージャー間はバインディング接続のみサポート FTEエージェントごとにキュー・マネージャーが必要 例 既存の集中型FTEドメインに、z/OS上で稼動するFTEエージェントを追加 集中型FTEドメイン MQ v7 エージェント FTE エージェント z/OS DQMチャネル MQ v6 or v7 コマンド エージェント 調整 コマンド FTE エージェント FTE エージェント FTE エージェント 必ずFTEエージェントとキュー・マ ネージャーはペアで用意 (コマンド・キュー・マネージャーの 場所は任意) MQクライアント接続 104 © 2011 IBM Corporation IBM Software Group | コマンド一覧(1/2) FTEコマンドと、接続先キュー・マネージャー コマンド 接続先 fteCreateTemplate 調整キュー・マネージャー fteDeleteTemplate fteListAgents fteListMonotors fteListtemplates fteListScheduledTransfers fteShowAgentDetails fteCreateTransfer コマンド・キュー・マネージャー fteCreateMonitor fteCancelTransfer fteDeleteMonitor fteDeleteScheduledTransfer ftePingAgent fteSetAgentTraceLevel fteStopAgent fteStopDatabaseLogger 105 © 2011 IBM Corporation IBM Software Group | コマンド一覧(2/2) FTEコマンドと、接続先キュー・マネージャー コマンド 接続先 fteCleanAgent FTEエージェント・キュー・マネージャー fteCreateAgent fteCreateBridgeAgent fteCreateCDAgent fteCreateWebAgent fteStartAgent fteDeleteAgent fteChangeDefaultConfigurationOptions n/a fteSetupCommands fteSetupCoordination fteStartDatabaseLogger fteModifyDatabaseLogger (Windowsのみ) fteModifyAgent (Windowsのみ) fteAnt fteDisplayVersion 106 © 2011 IBM Corporation IBM Software Group | 複数ドメイン構成環境の注意点 テスト用、開発用など、1つのマシンに複数ドメインが構成されている環境での注意 FTEコマンド実行時に、明示的に -p オプションでのドメイン指定を推奨 実行例: FTEドメイン ITA の FTEエージェント AG1 を起動 成功例 $ fteStartAgent –p ITA AG1 wmqfte.properties defaultProperties=DEV 失敗例 $ fteStartAgent AG1 デフォルトFTEドメイン DEV の AG1 が起動する FTEドメイン:DEV command. coordination. properties properties ファースト・リリースでは、ドメインを跨ったファイル転送はサポートなし FTEエージェント: AG1 agent.properties FTEドメイン DEV1 FTEドメイン DEV2 FTEエージェント AG1 FTEエージェント AG2 FTEドメイン:ITA command. coordination. properties properties FTEエージェント: AG1 agent.properties 107 © 2011 IBM Corporation IBM Software Group | SSL を用いたセキュアな通信 FTEコンポーネント間の接続にSSLを使用した通信が可能 バインディング接続はSSL対象外 FTE SSLサーバー/FTE SSLクライアントの両側で設定が必要 FTE SSLサーバー QMGR 調整キュー・マネージャー 調整 QMgr コマンド・キュー・マネージャー エージェント・キュー・マネージャー FTE SSLクライアント FTEエージェント コマンド MQエクスプローラー QMGR QMGR コマンド QMgr エージェント QMgr FTE SSLサーバー側 FTE SSLクライアント側 接続先コンポーネントごとに設定が可能 MQエクスプローラー QMGR QMGR 調整 QMgr エージェント QMgr コマンド実行 FTE エージェント SSLあり: RC4_MD5_EXPORT SSLなし コマンド実行 108 © 2011 IBM Corporation IBM Software Group | 設定 FTE SSLクライアント側 接続先SSLサーバーによって設定箇所が異なる QMGR 調整キュー・マネージャーとの接続 coordination.properties ファイルに設定 調整 QMgr コマンド・キュー・マネージャーとの接続 command.properties ファイルに設定 エージェント・キュー・マネージャーとの接続 agent.properties ファイルに設定 QMGR QMGR コマンド QMgr エージェント QMgr FTE SSLサーバー側 FTE SSLクライアント側 MQエクスプローラー agent.properties 設定例(※1) # #Fri Dec 12 08:48:25 JST 2008 agentSslCipherSpec=RC4_MD5_EXPORT agentSslTrustStore=server.auth.keystore agentSslTrustStorePassword=password コマンド実行 FTE エージェント 暗号化方式の指定(※2) SSLサーバー認証用キー・ストアの設定(※3) キー・ストアのパスワード ※1 設定パラメーターは、P61∼P73ページを参照 ※2 使用可能な暗号化方式は、MQでサポートするCipherSpec/CipherSuite 参考: マニュアル「セキュリティー」 CipherSpec の指定 http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/topic/com.ibm.mq.csqzas.doc/sy12870_.htm ※3 キーストアの設定方法は以下のURLを参照 http://java.sun.com/javase/6/docs/technotes/tools/windows/keytool.html 109 © 2011 IBM Corporation IBM Software Group | 設定 FTE SSLサーバー側 サーバー接続チャネル(SVRCONN)の設定 SSLCIPH (必須) 暗号化方式の設定。SSLクライアント側と同じ暗号化方式を指定する キュー・マネージャーの設定 SSLKEYR 鍵データベースの設定 キュー・マネージャー側設定例 $ echo “alter chl(FTE1.SVRCONN) chltype(svrconn) sslciph(RC4_MD5_EXPORT) SSLCAUTH(OPTIONAL) “ | runmqsc FTE1 $ echo “alter qmgr SSLKEYR(‘/home/ssl/keydb’)” | runmqsc FTE1 $ echo “refresh security type(SSL)” | runmqsc FTE1 //暗号化方式とSSLサーバー認証のみの設定 //鍵データベースの場所を指定 //鍵データベースの情報をリフレッシュ キュー・マネージャー間もSSLを使用した通信が可能 SDRチャネル、RCVRチャネル両方のSSLCIPHに設定 相互認証する場合は、RCVRチャネルにSSLCAUTH(REQUIRED)を設定 $ echo “alter chl(AG1.FTE) chltype(SDR) sslciph(RC4_MD5_EXPORT)“ | runmqsc QM_AG1 //SDRチャネルの設定 $ echo “alter chl(FTE.AG1) chltype(RCVR) sslciph(RC4_MD5_EXPORT)“ | runmqsc FTE1 //RCVRチャネルの設定 QMGR コマンド QMgr 110 QMGR SDR RCVR エージェント QMgr その他の組み合わせ ・ エージェントQMgr ⇔ エージェントQMgr ・ エージェントQMgr ⇒ 調整QMgr ※MQ SSLの設定方法は以下のURLを参照 http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp? topic=/com.ibm.mq.csqzas.doc/sy11560_.htm © 2011 IBM Corporation IBM Software Group | ブランク・ページ 111 © 2011 IBM Corporation IBM Software Group | 3章 WMQFTE機能 ※当章は、WMQFTE v7.0.3までの機能についてまとめたものです。 112 © 2011 IBM Corporation IBM Software Group | 目次 WMQFTEファイル/データセット転送基本機能 ファイル転送の仕組み ファイル転送要求、発行(コマンド)、z/OSデータ・セットの指定 z/OSシステム間のデータ・セット転送 z/OSと分散システム間のファイル/データ・セット転送 転送元ファイル名の指定:z/OSデータ・セットの指定 ファイル転送実行結果の確認 複数ファイルの一括転送 ワイルド・カードによる一括転送 グループ化による一括転送 テンプレート ファイル転送時のオプション ファイル転送後に転送元ファイルを削除 転送先ファイルの上書き データ形式の変換 ファイル転送の優先度付け ファイルの分割転送 ファイル転送のキャンセル ファイル転送の自動化 スケジュール機能 トリガー機能 113 ユーザーEXITの組込み チェックサム プロトコル・ブリッジ データベース・ロガー Web Gateway © 2011 IBM Corporation IBM Software Group | WMQFTEでのファイル/データ・セット転送の仕組み ファイルはMQメッセージに変換され宛先に転送される 送信側、受信側のFTEエージェントはファイル/データ・セットとMQメッセージの変換、ファイル/データ・セットの読み書きを行う FTEエージェント同士は転送バイト数を確認しながら、MQメッセージをやりとりする MQメッセージはMQネットワークを介して、宛先FTEエージェントに送信される FTEエージェントは、ファイル転送要求を受け取り転送を開始 ファイル転送要求はMQメッセージを利用 FTEエージェント・キュー・マネージャーを介して、FTEエージェントは転送要求を受け取る リモートからFTEエージェントに転送要求を送ることが可能 ファイル転送はMQ メッセージで依頼 転送要求 送信 ※ 図は送信側と受信側が異なるエージェント・キュー マネージャーに接続している場合の例です。 コンポーネントの詳細、構成方法は「2章 構成」を 参照してください。 エージェント・キュー・ マネージャー エージェント・キュー・ マネージャー FTE エージェント File/ データ・セット読んで DataSet/ MQキュー 114 MQメッセージに変換 MQチャネル データ・セットはMQメッ セージとして転送 FTE エージェント File/ DataSet/ MQメッセージを読んで データ・セットに書き出す MQキュー © 2011 IBM Corporation IBM Software Group | ファイル転送要求 ファイル転送要求のフォーマットはXMLスキーマで定義 エージェント、ファイル、転送オプション等を指定 1つの転送要求には、送信元および宛先エージェントを1つ指定することが可能 複数のエージェントに転送する場合は、宛先ごとにファイル転送要求を発行する必要がある スキーマファイル: FileTransfer.xsd Remote Tools and Documentation CD の MessageSchemas ディレクトリで提供 ファイル転送要求を発行するためのインターフェース fteCreateTransferコマンド FTEエージェントは ファイル転送要求メッセージを 受け取り、転送を開始 配置ディレクトリー – <install_dir>¥bin (Windows) – /opt/IBM/WMQFTE/bin (UNIX系) 転送要求の発行 MQエクスプローラー ユーザー作成アプリケーション コマンド XMLスキーマに従い転送要求を作成 転送要求をエージェント・キュー・マネージャーにPUT MQエクスプ ローラー アプリケー ション 115 エージェント・キュー・ マネージャー FTE エージェント File/ DataSet/ MQキュー © 2011 IBM Corporation IBM Software Group | ファイル転送要求の発行(コマンド) ファイル転送要求の発行コマンド fteCreateTransfer [Parameters..] source_file_specification 転送元および転送先FTEエージェントを指定(必須) パラメータ 説明 -sa (source_agent_name) 転送元FTEエージェント名を指定 -da (destination_agnet_name) 転送先FTEエージェント名を指定 転送元ファイル、転送先ディレクトリ/ファイル(必須)、転送オプション(宛先ファイルの上書き、 優先度等)の指定方法は次の2通り パラメータで1つずつ指定 転送定義ファイルにまとめて記述 転送定義ファイルを使用した場合、一部パラメータは指定できない –-df, -dd, -ds, -dp, -sd, -r, -de, -t, -cs パラメータ –source_file_specification ※ fteCreateTransferコマンドの詳細については、 「付録 コマンドリファレンス」トを参照してください。 –コマンド実行時にエラー 116 © 2011 IBM Corporation IBM Software Group | ファイル転送要求の発行(コマンド) パラメーターで指定する場合 必須パラメータ パラメータ 説明 -dd (destination_directory) (-dd, -df のどちらかの指定が必須)送信先ディレクトリを指定 -df (destination_file) (-dd, -df のどちらかの指定が必須)送信先のファイル名を指定 指定しなかった場合は送信元ファイル名と同じファイル名が設定される source_file_specification 転送元ファイル名 実行例 FTEエージェントAG1からAG2へ、ファイルC:¥From¥File.txt をC:¥To¥File.txtへ転送 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020208e7923492001ff02 FTEエージェントAG1からAG2へ、C:¥From¥File.txtをC:¥To¥File-backaup.txtへ転送 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To ‒df File-backup.txt C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020208e79234920020002 処理内容は同じ C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -df C:¥To¥File-backup.txt C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d202020202020202001772f492002d102 117 © 2011 IBM Corporation IBM Software Group | ファイル転送要求の発行(コマンド):z/OSデータ・セットの指定 パラメーターで指定する場合 必須パラメータ パラメータ 説明 -ds (destination_sequential_data_set) (-ds, -dpのどちらかを指定)送信先データセット名 次の方法で指定 ・順次データ・セット名 ・区分データ・セット名+メンバー名 セミコロンで区切ってデータ・セットの属性指定可能 -dp (destination_partitioned_data_set) (-ds, -dpのどちらかを指定)送信先データセット名 送信先の区分データ・セット名を指定(メンバー名は指定しない) ・メンバー名は自動生成される セミコロンで区切ってデータ・セットの属性指定可能 source_file_specification 転送元ファイル名 注意点 z/0Sデータ・セットを示す区切り文字として”//”(スラッシュ2つ)を使用する データ・セット名を’ ‘(単一引用符)で囲むと、完全修飾のデータセット名として扱われる データ・セット名を’ ‘で囲まない場合は、FTEエージェントの起動ユーザーまたは、agent.propertiesファイルのtransferRootHLQに指 定のデータ・セット接頭辞が付与される データ・セットの属性は、BPXWDYNに適した形で指定する BPXWDYNマニュアル:ftp://ftp.software.ibm.com/s390/zos/tools/bpxwdyn/bpxwdyn.html 118 © 2011 IBM Corporation IBM Software Group | ファイル転送要求の発行(コマンド):z/OSデータ・セットの指定 実行例 – FTEエージェント FTEAG02(Windows)からAG6F1(z/OS)へ、ファイルを新規の順次データ・セットへ転送 C:¥WMQFTE¥bin>fteCreateTransfer -p FTEQM02 -sa FTEAG02 -da AG6F1 -dm M60F -ds //'MQMSHR.FTE.TEST' C:/0_source/sbcs10b.ascii.bin.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120465445514d3032202020202 – FTEエージェント FTEAG02(Windows)からAG6F1(z/OS)へ、ファイルを既存の区分データ・セットの新メンバー に転送 (データセット属性でDISP(SHR)を指定) C:¥WMQFTE¥bin>fteCreateTransfer -p FTEQM02 -sa FTEAG02 -da AG6F1 -dm M60F -ds //'MQMSHR.FTE.TEST3(TEXT2)';DISP(SHR) -t text C:/0_source/sbcs10b.ascii.bin.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120465445514d3032202020202 – FTEエージェント AG6F1(z/OS)からFTEAG02(Windows)へ、区分データ・セット(全メンバー)をファイルへ転送 C:¥WMQFTE¥bin>fteCreateTransfer -p FTEQM02 -sa AG6F1 -sm M60F -da FTEAG02 -dd c:/dest/pds/jcl2 -t text //'MQMSHR.V700.JCLLIB' 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120465445514d3032202020202 03918d3492000a602 119 © 2011 IBM Corporation IBM Software Group | z/OSシステム間のデータ・セット転送 転送対象のデータ・セットはカタログされている必要がある ディスクの場合も磁気テープの場合も、カタログされたデータ・セットのみサポート 既存データ・セットはカタログされている必要がある 新規に作成されるデータ・セットはカタログされる データ・セットをコピーまたは移動するときに、宛先が存在しない場合 デフォルトで、宛先データ・セットはソースと同じ特性で作成されます。 宛先データ・セットの属性を指定し、デフォルトの特性をオーバーライドす ることができます。 これを行う場合、確実に転送を行えるように互換性チェックが実行されます。 データ・セットをコピーまたは移動するときに、宛先が既に存在する場合 120 宛先データ・セットの属性を指定し、デフォルトの特性をオーバーライドする場合、互換性チェックを実行して、必要な方法で宛先データ・セットに アクセス 以下の属性はオーバーライドできない – 基本データ・セット編成およびタイプ – 論理レコード長 (LRECL) – ブロック・サイズ (BLKSIZE) © 2011 IBM Corporation IBM Software Group | z/OSと分散システム間のファイル/データ・セット転送 z/OSと分散ファイル・システム間の転送 以下のデータ・セット・タイプとファイルとの転送が可能 ファイルからデータ・セットへの転送 – 物理順次データセット / 区分データセット データ・セットからファイルへの転送 – 非VSAMデータ・セット / 区分データ・セット / 物理順次データ・セット z/OS で、ソース・データ・セットと宛先データ・セットの世代別データ・グループ (GDG)※ をサポート 絶対および相対 GDG 名をサポート 新しい世代に書き込む場合には、基本 GDG が存在している必要あり ファイルまたはデータ・セットを磁気テープへ転送可能 磁気テープ内の既存データ・セットが置き換えられる 新しいデータ・セットの属性は、転送定義で渡された属性を基にして設定 属性の指定がない場合、ソース・データ・セットと同じ属性またはデフォルト値 (ソースがファイルである場合) に設定される ※ GDGは、関連するデータの連続する更新または世代をカタログして管理します。GDG 内の各データ・セットは、世代別データ・ セット(GDS) と呼びます。GDG 内で、GDSは類似または非類似DCB 属性およびデータ・セット編成を持つことができます。グループ内 のすべての世代の属性および編成が同一である場合、世代は単一のデータ・セットとして一緒に検索することができます。 GDGには、グループ内のすべてのデータ・セットを共通の名前によって参照できたり、オペレーティング・システムが世代を年代順に保 持するといったメリットがあります。 121 © 2011 IBM Corporation IBM Software Group | z/OSと分散システム間のファイル/データ・セット転送 ファイルからデータ・セットへの転送 バイナリー転送 物理順次(PS)データ・セットへの転送 – 分散システム上のソース・ファイルが順次読み取られ、各レコードまたはブロックが埋められる – 可変長フォーマットのデータ・セットの場合は、容量が満杯になるまで各レコードが埋められる 区分データ・セット(PDS)への転送 – 各ソース・ファイルは同じまたは同等の名前で PDS メンバーにコピーされる(ファイル名がメンバー名の許容最大長より長い場合は、 ファイル名は有効なメンバー名に変換される) – ソース・ファイルがディレクトリーの場合、ディレクトリー内の各ファイルが PDS のメンバーとなる – PDS メンバーが存在する場合、転送について既存の宛先ファイルの上書きが指定されていれば、メンバーは上書きされる – 分散システム上のソース・ファイルが順次読み取られ、メンバーの各レコードまたはブロックが埋められる – 可変長フォーマットの PDS メンバーの場合は、容量が満杯になるまで各レコードが埋められます。 テキスト転送 PSデータセット および PDSへの転送 – テキストの各行がレコード になる(不定形式レコード (RECFM=U) の場合はブロック) – データ・セット・レコードに行末文字は存在しない (非 ASA データ・セットの場合のみ)。 – 宛先データ・セットで ASA フォーマット制御文字が使用される場合は、行末文字は同等の ASA フォーマット制御コードに変換される – 行がレコードより長い場合、レコードの境界で行が分割され、次のレコードに続く 122 © 2011 IBM Corporation IBM Software Group | z/OSと分散システム間のファイル/データ・セット転送 データ・セットからファイルへの転送 バイナリー転送 レコード、ブロック・フォーマット情報、ASA フォーマット制御文字は転送されない テキスト転送 各データ・セット・レコードは、 宛先エージェントのコード・ページに変換されたテキストを持つ行になる – Windowsが宛先:復帰改行 (CRLF) が追加 – UNIX が宛先 :復帰 (CR) が追加 非VSAM および PSデータ・セット ソース・データ・セットのレコードは宛先ファイルに転送され、連結してまとめられます。 宛先ファイルが存在する場合には、ファイル転送で指定した宛先ファイル動作オプションに応じてファイルが上書きされる PDSデータ・セット 指定されたメンバーを宛先ファイルに抽出(メンバーが指定されていない場合はすべてのメンバー) 宛先としてディレクトリーを指定する場合、メンバーは別個のファイルに抽出される 。そのように指定しない場合、指定されたメンバーはそれぞ れ宛先ファイルに書き込まれ、事実上 1 つのメンバーのみが転送されます。 メンバーの宛先ファイルが存在する場合には、ファイル転送で指定した宛先ファイル動作オプションに応じてファイルが上書きされる 123 © 2011 IBM Corporation IBM Software Group | 転送元ファイル名の指定:z/OS データ・セットの指定 z/OSデータ・セットの指定 z/OSデータ・セットを示す区切り文字’//’(スラッシュ2つ)で始め、順次データ・セット名または区分デー タセット名を指定する 区分データ・セット名を指定し、メンバー名を指定しない場合は、区分データ・セットの全メンバーを送信する –特定のメンバーのみ送信する場合には、//区分データセット名(メンバー名)と指定する データ・セット名を’ ‘(単一引用符)で囲むと、完全修飾のデータ・セット名として扱われる データ・セット名を’ ‘で囲まない場合は、FTEエージェントの起動ユーザーまたはagent.propertiesファイルの transferRootHLQが付与されたデータ・セット名を送信元とする 例) 転送元: //MQFTE.V700.TEXT(TEXT01) ← ‘ ‘なし ⇒ 転送されるデータ・セット:UserID.MQFTE.V700.TEXT(TEXT01) 転送元: //’MQFTE.V700.TEXT(TEXT01)’ ← ‘ ‘あり ⇒ 転送されるデータ・セット:MQFTE.V700.TEXT(TEXT01) 124 © 2011 IBM Corporation IBM Software Group | ファイル転送実行結果の確認 ファイル転送発行とファイル転送は非同期に実行される Î 実行結果の確認は転送ログで行う ファイル転送要求の 発行は成功 FTE エージェント コマンド 確認 実際のファイル転送は 失敗している可能性がある エージェント・キュー・ マネージャー File MQエクスプ ローラー 転送結果 送信元ファイルがない 転送ログで確認 調整キュー・マネージャー 転送ログの例(MQエクスプローラー) 転送元ファイルが存在 しなかったため、失敗 成功 125 © 2011 IBM Corporation IBM Software Group | 複数ファイルの一括転送(ワイルド・カード) ワイルド・カードの例 ファイル 指定したファイル名 マッチしたファイル名 /work/abc.txt /work/abd.txt /work/abe.txt /work/af.txt /work/gh.txt /work/gt.txt /work/subdir/go.txt /work/ab?.txt abc.txt abd.txt abe.txt /work/a*.txt abc.txt abd.txt abe.txt af.txt /work/* abc.txt abd.txt abe.txt af.txt gh.txt gt.txt /work/* (-r 付) abc.txt abd.txt abe.txt af.txt gh.txt gt.txt subdir/gt.txt 実行例 FTEエージェントAG1からAG2へ、ディレクトリC:¥From¥DataDir2¥test*にマッチするファイルをC:¥Toへ転送する ディレクトリ構造 C:¥FROM¥DATADIR2 │ testfile1.txt、 testfile2.txt、testfile3.txt、source.txt、data.txt └─SubDir testfile4.txt fteCreateTransfer、MQエクスプローラーで転送元ファイルにC:¥From¥DataDir2¥test*を指定し実行 実行結果 C:¥From¥DataDir2¥test*にマッチするファイルが転送されている 126 © 2011 IBM Corporation IBM Software Group | ワイルド・カード指定時の注意点 空のディレクトリは転送されない ファイル名にワイルドカード文字が含まれている場合 そのファイル名を指定すると、ワイルドカードにマッチするファイルが他にあっても、ワイルドカード文字を含むファイルのみが 転送される ファイル /work/abc.txt /work/abd.txt /work/*.txt 指定したファイル名 マッチしたファイル名 /work/*.txt /work/*.txt 隠しファイルはワイルド・カードにマッチしない 隠しファイル UNIX:ファイル名が ‘.’ (ドット)から始まるファイル Windows:ファイルのプロパティで「隠しファイル」にチェックが入っているファイル 隠しファイルを転送する場合 直接ファイル名を指定 ディレクトリごと転送 ファイル名の先頭に‘.’(ドット)付け、ワイルドカード指定(UNIXのみ) 127 © 2011 IBM Corporation IBM Software Group | 【補足】z/OS環境でのワイルドカード文字の使用 通常、標準 ISPF ワイルドカード規則に従うが、順次および区分データ・セットの両方に関する特定の規則が ある。 順次データ・セット アスタリスク (*) およびパーセント記号 (%) が含まれるデータ・セット名修飾子を使用できる – * :少なくとも 1 つの修飾子を表すには、単一のアスタリスク (*) を使用 修飾子内の単一のアスタリスクはゼロ以上の文字を表す – ** :ゼロ以上の修飾子を表すには 2 つのアスタリスク文字 (**) を使用 1 つの修飾子内で 2 つのアスタリスクを使用することはできない – % :1 つの英数字または各国語文字を表すには、単一のパーセント記号 (%) を使用 – %% :ゼロ以上の文字を表すには、1 個から 8 個までのパーセント記号を使用 区分データ・セット メンバー名にのみワイルドカード文字を指定可 アスタリスク (*)、下線 (_)、および疑問符 (?) が含まれるデータ・セット名修飾子を使用できる – * :ゼロ以上の文字を表すにはアスタリスク (*) 文字を使用 – _ :1 文字のみを表すには下線文字 (_) を使用 – ? :1 文字のみを表すには疑問符 (?) 文字を使用 疑問符 (?) は下線文字の代わりになり、ISPF の追加規則として提供される 128 © 2011 IBM Corporation IBM Software Group | 複数ファイルの一括転送(グループ化) グループ化設定による複数ファイルの指定 「ファイル転送管理の新規作成」ウィンドウより 「基本タブ」を選択し、出力元、宛先を入力 出力元、宛先を入力後 「グループに追加」をクリック 入力したファイルが順次グルー プに追加される 129 グループに含まれるファイルが まとめて転送要求に入る © 2011 IBM Corporation IBM Software Group | テンプレート ファイル転送要求をテンプレートとして保存することが可能(MQエクスプローラーのみ) テンプレートは、調整キュー・マネージャーにパブリケーションとして保管される FTEドメイン内で共有可能 ナビゲーターから「転送テンプレート」を選択し、右クリック ポップアップ・メニューから、「テンプレートの新規作成」を選択 「ファイル転送管理の新規作成」ウィンドウより 「基本タブ」を選択し、転送内容を入力 130 必要に応じてスケジュール(後述)、 メタデータ(後述)を入力 「転送の要約」ウィンドウよりテンプレートの名前を 入力し終了する © 2011 IBM Corporation IBM Software Group | テンプレート 作成したテンプレートの確認 「コンテンツ」の「転送テンプレート」から確認 テンプレートから転送の開始 「コンテンツ」の「転送テンプレート」からテンプレートを選択し右クリック Î 実行依頼を選択 131 © 2011 IBM Corporation IBM Software Group | ファイル転送時のオプション ファイル転送要求に次の詳細動作を指定することが可能 ファイル転送後に転送元ファイルを削除 転送先ファイルの上書き データ形式の変換 ファイル転送の優先度付け 132 © 2011 IBM Corporation IBM Software Group | 転送オプション(転送元ファイルの削除) ファイル転送後に転送元ファイルを削除 fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 パラメータ 説明 -sd <disposition> leave/deleteを指定 ・leave:ファイル転送後、転送元ファイルを削除しない(デフォルト) ・delete:ファイル転送後、転送元ファイルを削除 MQエクスプローラー 「ファイル転送管理の新規作成」ウィンドウより「基本タブ」を選択し「完了後にソールファイルを削除する」にチェック 133 © 2011 IBM Corporation IBM Software Group | 転送オプション(転送先ファイルの上書き) 転送先ファイルの上書き fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 パラメータ 説明 -de <actions> error/overwriteを指定 ・error:宛先ファイルがすでに存在する場合、転送ログにエラーを報告し、ファイル転送を行わない (デフォルト) ・overwrite:既存ファイルを上書き MQエクスプローラー 「ファイル転送管理の新規作成」ウィンドウより「基本タブ」を選択し、 「宛先ファイル・システム上の同じ名前のファイルを上書きする」にチェック 134 © 2011 IBM Corporation IBM Software Group | 転送オプション(データ形式の変換) テキスト転送/バイナリ転送を選択可能 テキスト転送 改行コード、文字コードをエージェント稼働環境に合わせて自動的に変換 バイナリ転送 変換は行わずに、そのままファイルを転送 テキスト転送時、変換可能なデータ形式 エージェント稼働環境に合わせて改行コード(CR/LF)を変換 例) Windows (CR/LF形式) <==> UNIX (LF形式) エージェント稼働環境のロケールに合わせ文字コードを自動的に変換 例) 1バイトコード –UNIX(ASCII) <==> z/OS (EBDIC) 例) 2バイトコード –Windows (SJIS) <==> Linux (EUC) 135 © 2011 IBM Corporation IBM Software Group | 転送オプション(データ形式の変換) データ形式の変換設定 fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 パラメータ 説明 -t binary/textを指定 ・binary:全く変換を行わずにファイルを転送(デフォルト) ・text: 文字コード、CR/LFの変換を行う 厳密にどのように変換されるかは、ソースおよび宛先のエージェントが稼動している プラットフォームに依存 MQエクスプローラー 「ファイル転送管理の新規作成」ウィンドウより、「基本タブ」を選択し、モード「テキスト転送」「バイナリ転送」のどちらかを選択 136 © 2011 IBM Corporation IBM Software Group | 転送オプション(ファイル転送の優先度付け) ファイル転送の優先度付け 転送メッセージにMQのプライオリティを設定することができる ファイルレベルではなく、MQのメッセージレベルでの優先度付け 優先度は0(最低)∼9(最高) ・・・ FTE エージェント 9 9 プライオリティの高いメッセージが 優先的に送信される 3 ファイル転送の 優先度 9 3 3 9 9 ・・・ 同時に転送を開始 優先度 3 137 © 2011 IBM Corporation IBM Software Group | 転送オプション(ファイル転送の優先度付け) 優先度の設定 fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 パラメータ 説明 -pr (transfer_priority) プライオリティを指定 値は0(最低)∼9(最高) デフォルト0 MQエクスプローラー 「ファイル転送管理の新規作成」ウィンドウ 「拡張」タブをクリック 転送の優先度を0 – 9から選択 138 © 2011 IBM Corporation IBM Software Group | 転送オプション(ファイル転送の優先度付け) 優先度を設定したファイル転送の例 下の転送を同時に実行 AG1 Æ AG2 data.zip (422MB) 優先度9 AG1 Æ AG2 data2.zip (422MB) 優先度3 優先度が高いファイルが優先的に転 送される 同時に開始 139 © 2011 IBM Corporation IBM Software Group | ファイルの分割転送 サイズの大きいファイルはFTEエージェントが自動的に複数のMQメッセージに分割 分割サイズは設定ファイルで変更可能 agent.propertiesファイルのagentChunkSizeで指定 転送途中の宛先ファイルは<宛先ファイル名>.partファイルで作成される ファイル転送がすべて終了した時点でファイル名が変換される 直接<宛先ファイル名>のファイルに書き込むよう設定ファイルで変更可能 agent.propertiesファイルのdoNotUseTempOutputFile で指定 FTEエージェント FTEエージェント ・・・ ・・・ ファイルは複数のMQメッ セージに分割される 140 © 2011 IBM Corporation IBM Software Group | ファイル転送のキャンセル ファイル転送のキャンセル 実行中のファイル転送をキャンセルすることが可能 キャンセル要求は、転送元、転送先のFTEエージェントどちらかに発行 キャンセル要求はMQメッセージ 転送途中のファイル(<宛先ファイル名>.part)は、転送先から削除される 転送中止 コマンド エージェント・キュー・ マネージャー or FTE エージェント MQエクスプ ローラー キャンセル要求の発行 141 File © 2011 IBM Corporation IBM Software Group | ファイル転送のキャンセル キャンセル要求の発行コマンド fteCancelTransfer [Prameters…] transfer_ID 必須パラメーター パラメータ 説明 -a (agent_name) 転送元、もしくは、転送先のFTEエージェント名を指定 transfer_ID 要求IDを指定 キャンセル要求発行例 要求IDは次から確認 ※ fteCancelTransferの詳細については、 「付コマンド・リファレンス」を参照してください。 – fteCreateTransferの実行結果 – 転送ログ C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To C:¥From¥data.zip 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020200ed135492000bb02 C:¥WMQFTE¥bin>fteCancelTransfer -a AG1 414d5120434f514d20202020202020200ed135492000bb02 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0137I: エージェント 'AG1' に対して、転送 '414D5120434F514D20202020202020200 ED135492000BB02' を取り消す要求が発行されました。 142 © 2011 IBM Corporation IBM Software Group | ファイル転送のキャンセル MQエクスプローラーからキャンセル 「コンテンツ」の「転送ログ」から、キャンセル対象を右クリックし、「転送の取り消し」を選択 「完了状態」、「進行状況」が 取り消し済みとなる 143 © 2011 IBM Corporation IBM Software Group | スケジュール機能 あらかじめ指定した日時に、ファイル転送を自動的に開始することが可能 例) 2008/11/20 3:00にファイルを転送を開始(1回限りの転送) 一定間隔で繰返しファイルを転送可能 例)毎週日曜日 3:00にファイルを転送を開始 繰返し回数、繰返し期限の設定が可能 無期限の設定も可能 転送元 ファイル転送要求に、時刻、繰返し回数を設定 スケジュールを登録 転送日時 ファイル転送を行う日時(年、月、日、時、分)を指定 転送日時の基準を下の3つより選択することが可能 FTE エージェント 転送要求 時間 – ADMIN: 転送要求を発行した環境の時刻 – SOURCE: ソース・エージェント稼働環境の時刻 – UTC: 世界標準時 繰返しの設定 転送日時の設定と同時に指定することで、繰返しファイル転送を行うことが可能 エージェントは スケジュールに従い 転送を開始 繰返し間隔 – 年、月、週、日、時、分を指定することが可能 繰返し回数 – 繰返し回数を指定 – 繰返し期限を指定 – 無制限 144 © 2011 IBM Corporation IBM Software Group | スケジュール機能の設定(コマンド) fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 1回限りの転送の場合 パラメータ 説明 -ss (schedule_start_time) 時刻を指定 時刻のフォーマットはyyyy-MM-ddThh:mmもしくはhh:ss -tb ADMIN / SOURCE / UTCより基準となる時刻を指定 繰返し転送する場合 -ss、-tbに加えて、次のパラメータを加える 145 パラメータ 説明 -oi 繰返し間隔の単位 minutes/hours/days/weeks/months/yearsのうちいずれかを指定 -ssと共に指定 -of (occurrence_frequency) 繰返し間隔 デフォルトは1 -oi,ssと共に指定することは不可 -oc (occurrence_count) 繰返し回数 -oi,ssと共に指定することは不可、-esとは共に指定することは不可 -es (schedule_end_time) 繰返しを終了する時刻を指定 時刻のフォーマットはyyyy-MM-ddThh:mmもしくはhh:ss -oi ,ss共に指定することは不可、-ocとは共に指定することは不可 © 2011 IBM Corporation IBM Software Group | スケジュール機能の設定例(コマンド) スケジュールされたファイル転送要求の確認コマンド fteListScheduledTransfers [Parameters..] コマンドからファイル転送をスケジュールする例 ※ fteCancelTransferの詳細については、 「付録 コマンド・リファレンス」を参照してください。 2008/12/28 3:00に一回ファイル転送を実行 FTEエージェントAG1からAG2へ、ファイルC:¥From¥File.txt をC:¥To¥File.txtへ転送 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To -tb ADMIN -ss 2008-12-28T03:00 C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d51204147514d312020202020202074b73c49200cfb02 C:¥WMQFTE¥bin>fteListScheduledTransfers 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED スケジュール ID: 3 ソース・エージェント名: AG1 ソース・ファイル名: C:¥From¥File.txt 変換タイプ: binary 宛先ファイル名: C:¥To 宛先エージェント名: AG2 スケジュール開始時刻: 2008-12-28T03:00+0900 次の転送: 2008-12-28T03:00+0900 スケジュール時間基準: admin 146 © 2011 IBM Corporation IBM Software Group | スケジュール機能の設定例(コマンド) コマンドからファイル転送をスケジュールする例 2009/1/4 3:00から転送を開始し、一週間おきに一回ファイルを転送する 宛先のファイルは上書き FTEエージェントAG1からAG2へ、ファイルC:¥From¥File.txt をC:¥To¥File.txtへ転送 繰返しは無制限 C:¥WFTE¥code¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To -de overwrite -tb ADMIN -ss 2008-01-04T03:00 -oi weeks -of 1 C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020201c38094920009a02 C:¥WMQFTE¥bin>fteListScheduledTransfers 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED スケジュール ID: 4 ソース・エージェント名: AG1 ソース・ファイル名: C:¥From¥File.txt 変換タイプ: binary 宛先ファイル名: C:¥To 宛先エージェント名: AG2 スケジュール開始時刻: 2008-01-04T03:00+0900 次の転送: 2008-12-19T03:00+0900 スケジュール時間基準: admin 繰り返しの間隔: weeks 繰り返しの頻度: 1 147 © 2011 IBM Corporation IBM Software Group | スケジュール機能の設定(MQエクスプローラー) ファイル転送のスケジュール 「ファイル転送管理の新規作成」ウィンドウより 宛先、送信元を入力し、「次へ」をクリック スケジュールタブをクリック 「スケジュールを有効にする」にチェック (必須)時刻の基準を設定 開始時刻を設定 (オプション)「繰り返し」をチェック ・繰返し間隔の単位を繰返し間隔 を指定 次のいずれかを指定 ・繰返し期限 ・繰返し回数 ・無制限 148 © 2011 IBM Corporation IBM Software Group | スケジュールの確認、キャンセル(MQエクスプローラー) スケジュールの確認 ナビゲーターから「保留中の転送」をクリック ソース、宛先、開始時刻、繰り返し 周期、繰り返しタイプ、期限、次の 転送日時が表示される コンテンツの「保留中の転送」にスケジュールが表示される スケジュールのキャンセル 149 保留中の転送でスケジュール済のアイテムを選択 →右クリック→ 「キャンセル」 © 2011 IBM Corporation IBM Software Group | トリガー機能 ファイル転送要求時に、トリガー条件を設定することが可能 設定可能な条件:ファイルが存在する/ファイルが存在しない/あるファイルが一定以上のサイズを持つ 例) /var/data/trigfile.txtが存在している場合のみ、ファイル/var/data/source.zipを転送する トリガー条件が満たされない場合にはファイル転送は実行されない 転送が行われなかったことを記録し、その後ファイル転送要求は廃棄される トリガー条件を 設定 転送元 転送要求 FTE エージェント 転送前に転送元ファ イルの有無/ファイル サイズを確認 条件を満たしている 場合、ファイル転送 開始 ファイル転送実行時に条件を指定 複数の条件を指定できる すべての条件が満たされた場合(AND)にのみファイルが転送される 一つの条件に対して複数のファイルを指定することが可能 どれか一つのファイルが条件を満たした場合(OR)にファイルが転送される 条件に当てはまらなかった場合 エラー・メッセージとともに転送ログが出力される(出力されないよう設定可能) 150 © 2011 IBM Corporation IBM Software Group | トリガー機能の設定(コマンド) fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 複数の条件を記述する場合は、-trパラメータを複数回指定する パラメータ 説明 -tr ・ファイル転送のトリガー条件を下のフォーマットで指定 <condition>,<namelist> ・<condition>には下の条件のいずれかを指定 ・file=exist,<namelist>に指定したファイルのうちどれか1つ以上が存在した場合 ・file!=exist,<namelist>に指定したファイルのうちどれか1つ以上が存在しない場合 ・filesize”>”=<size>, <namelist>に指定したファイルのうちどれか1つ以上が、ファイル サイズが<size>以上であった場合 <size>には、KB, MB, GBのサイズ単位をつけることができる ・<namelist> ・カンマ’,’区切りでファイル名を指定。複数指定できる トリガー条件にマッチしなかった場合に、転送ログを発行しないよう指定可能 151 パラメータ 説明 -tl yes/noを指定 ・yes:ファイル転送要求が、トリガー条件にマッチしなかった場合でも、転送ログを発行する(デフォル ト) ・no:ファイル転送要求が、トリガー条件にマッチしなかった場合、転送ログを発行しない © 2011 IBM Corporation IBM Software Group | トリガー機能の設定例(コマンド) コマンドからトリガー条件を指定したファイル転送要求を発行する例 FTEエージェントAG1からAG2へ、ファイルC:¥From¥File.txt をC:¥To¥File.txtへ転送 C:¥trigfile.txtが存在している場合のみファイル転送を開始 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -df C:¥To¥File.txt -tr file =exist,C:¥trigfile.txt C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d51204147514d312020202020202074b73c49200d0c02 C:¥trigfile.txtのサイズが500KB以上の場合のみファイル転送を開始 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -df C:¥To¥File.txt -tr "filesize>=500KB,C:¥trigfile.txt" C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d51204147514d312020202020202074b73c49200d1002 152 © 2011 IBM Corporation IBM Software Group | トリガー機能の設定例(コマンド) FTEエージェントAG1からAG2へ、ファイルC:¥From¥File.txt をC:¥To¥File.txtへ転送 trigfile.txt、trigfile2.txt、trigfile3.txtのいずれかが存在している場合、ファイル転送を開始 (複数のファイルを指定) C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -df C:¥To¥File.txt -tr file=exist,C:¥trigfile.txt,C:¥trigfile2.txt,C:¥trigfile3.txt C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d202020202020202 00ed1354920003902 C:¥trigfile.txtが存在し、かつ、data.zipのサイズが5GB以上の場合(複数の条件を指定) C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -df C:¥To¥File.txt -tr file=exist,C:¥trigfile.txt -tr "filesize>=5GB,C:¥data.zip" C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d51204147514d312020202020202 074b73c49200d1102 153 © 2011 IBM Corporation IBM Software Group | トリガー条件の設定(MQエクスプローラー) ファイル転送のスケジュール 「トリガー」タブをクリック 「ファイル転送管理の新規作成」 ウィンドウより宛先、送信元を入力し、 「次へ」をクリック 「トリガー転送を有効にする」に チェック (必須)ファイルを指定 複数ファイルを指定する場合、 コンマ’,’で区切って指定 (必須)トリガー条件を指定 ・ファイルが存在する ・ファイルが存在しない ・ファイルのサイズ (オプション)複数条件をする場合 は、グループに追加 154 © 2011 IBM Corporation IBM Software Group | スケジュール機能との組み合わせ例(コマンド) スケジュール機能と組み合わせることで、ファイルの生成(削除)を契機にファイル転送を行うことが可能 例) C:¥data.zipが生成され、かつ、data.zipのサイズが500MB以上の場合、転送を開始し、 転送後C:¥data.zipを削除 次のようにファイル転送要求を発行する –1分間隔(最小)、無制限にファイル転送を繰り返すようにスケジューリング –「C:¥data.zipが存在したらファイル転送を実行する」をトリガー条件として指定 –「C:¥data.zipのファイルサイズが500MB以上の場合、ファイル転送を実行する」をトリガー条件として指定 –転送後、C:¥data.zipを削除するよう指定 – ファイル転送後に、同じファイルが繰返し転送されることを防ぐ –C:¥data.zipが存在せず、ファイル転送がエラーとなった場合、転送ログを出力しないよう指定 – 不要な転送ログが出力されないように制御 実行例 C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To -tl no -sd delete -tb ADMIN -ss 2008-12-04T03:00 -oi minutes -of 1 -tr file=exist,C:¥data.zip -tr "filesize>=500MB,C:¥data.zip" C:¥data.zip 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d51204147514d312020202020202 074b73c49200e6002 FTE エージェント data.zipが存在し、かつ、 500MB以上の場合、 ファイル転送を開始 1分おきに転送を 開始 data.zip 155 © 2011 IBM Corporation IBM Software Group | ユーザーEXITの組込み ファイル転送要求毎にユーザーEXIT(Java)を呼び出すことが可能 ファイル転送前後に任意のロジックを組み込むことができる 例) ファイル転送終了後にe-mailで通知するなど EXITは図の① ∼⑤の順に処理される 転送元 ① ソース転送 開始EXIT 転送先 送信開始前 送信 ソース転送 ⑤ 終了EXIT 受信開始前 ③ファイル転送 FTE エージェント FTE エージェント ② 宛先転送 終了EXIT ④ 受信 受信終了後 送信終了後 宛先転送 開始EXIT ユーザーEXITに制御が渡るポイント(EXITポイント)は下の4つ EXITポイントに合わせて指定されたJavaインターフェースを実装したプログラムを作成 転送元 転送先 156 EXITポイント Java Interface ① ファイル転送開始前 SourceTransferStartExit ⑤ ファイル転送終了後 SourceTransferEndExit ② ファイル転送開始前 DestinationTransferStartExit ④ ファイル転送終了後 DestinationTransferEndExit © 2011 IBM Corporation IBM Software Group | ユーザーEXITの配置 ユーザーEXITの配置場所 データディレクトリ配下のexitディレクトリ <WMQFTE_config_dir>/<Coordination QMGR Name>/agents/<Agent_NAME>/exits agent.propertiesのExitClassPathで指定したディレクトリ 両方設定した場合は、exitsディレクトリにあるクラスファイルが優先される FTEエージェントの設定 呼び出すユーザーEXITをagent.propertiesに設定 FTEエージェントごとに設定が必要 1つのFTEエージェントに複数のEXITをカンマ区切り’,’で指定可能 – 指定した順番にEXITが呼び出される 設定後、FTEエージェントの再起動が必要 157 フィールド 設定値 sourceTransferStartExitClasses ・SourceTransferStartExitを実装したクラスを指定 sourceTransferEndExitClasses ・SourceTransferEndExitを実装したクラスを指定 destinationTransferStartExitClasses ・DestinationTransferStartExit を実装したクラスを指定 destinationTransferEndExitClasses ・DestinationTransferEndExitを実装したクラスを指定 exitNativeLibraryPath ・ユーザーEXITが使用するライブラリを指定 © 2011 IBM Corporation IBM Software Group | ユーザーEXITのメタデータ FTEエージェントはユーザーEXITにメタデータを渡す メタデータは<key>,<value>のペア メタデータを元に、ファイル転送毎にユーザーEXITの動作を制御することが可能 エージェントが生成するメタデータに加え、ユーザーが指定したメタデータも渡すことができる ユーザーが指定したメタデータは転送メタデータとしてEXITに渡される メタデータの種類 メタデータの種類 メタデータで渡される情報 環境メタデータ FTEエージェントの稼動環境 - FTEエージェントのバージョン等 転送メタデータ ファイル転送に関する情報 - 転送ID、転送元/転送先FTEエージェント等 ユーザーが指定したメタデータ ファイルメタデータ 転送するファイルに関する情報 - 転送するファイルのタイプ、転送オプション等 メタデータ key1=value1, key2=value2, key3=value3, 転送要求+メタデータ 転送先 転送元 FTE エージェント メタデータ 出口 158 FTE エージェント メタデータ 出口 © 2011 IBM Corporation IBM Software Group | ユーザーEXITのメタデータ設定 ユーザーが指定したメタデータをユーザーEXITに渡す方法 fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 パラメータ 説明 -md コンマ区切りで1つ以上のペアを指定 記述形式 ・<name1>=<value1> , <name2>=<value2>,・・・ 例)fteCreateTransfer ・・・・ ‒md fileType = SourceCode , Place = Tokyo ・・・ MQエクスプローラー 「属性名」「属性値」を入力し、「追加」をクリック 「次へ」をクリック 「次へ」をクリック 設定したメタデータが表示される 159 © 2011 IBM Corporation IBM Software Group | ユーザーEXITサンプルと設置例 ソース転送開始EXITの作成し、FTEエージェントAG1に設定する例 メタデータの一覧を取得し、ファイルに出力するExit メタデータの一覧はC:¥WMQFTE¥Metadata.txtに出力 1.SourceTransferStartExitインターフェースを実装したSourceExit.javaを作成 サンプルは製品には添付されていない 2.FTEエージェント稼動環境、ソースのコンパイル環境にCLASSPATHを設定 CLASSPATH=<WMQFTE_install_dir>/lib/com.ibm.wmqfte.exitroutines.api.jar 3.SourceExit.javaをコンパイルし、下のディレクトリに配置 <WMQFTE_config_dir>/<Coordination QMGR Name>/agents/<Agent_NAME>/exits 4.AG1のagent.propertiesに下の設定を追加 sourceTransferStartExitClasses=SourceExit 5.FTEエージェントを再起動 C:¥work>set CLASSPATH=%CLASSPATH%;C:¥WMQFTE¥lib¥com.ibm.wmqfte.exitroutines.api.jar C:¥work>javac SourceExit.java C:¥work>move SourceExit.class C:¥WMQFTE¥config¥COQM¥agents¥AG1¥exits¥ C:¥work>C:¥WMQFTE¥bin¥fteStopAgent.cmd AG1 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0034I: 停止要求がエージェント AG1 に対して発行されました。 C:¥work>C:¥WMQFTE¥bin¥fteStartAgent.cmd AG1 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0030I: このマシンでエージェント 'AG1' を開始する要求が実行依頼されました。 BFGCL0031I: エージェント・ログ・ファイルの場所: C:¥WMQFTE¥config¥COQM¥agents¥AG1 160 © 2011 IBM Corporation IBM Software Group | ユーザーEXITサンプル作成と設置例 サンプルの作成 ※ 幕張環境で作成/稼動確認したものです メタデータの一覧を取得しファイルに出力するソース転送開始EXIT import java.util.*; import java.io.*; import com.ibm.wmqfte.exitroutine.api.*; public class SourceExit implements SourceTransferStartExit{ public TransferExitResult onSourceTransferStart(String sourceAgentName, String destinationAgentName, インターフェースの実装 Map<String, String> environmentMetaData, Map<String, String>transferMetaData, List<SourceFileExitFileSpecification>fileSpecs){ try{ FileWriter fileWriter = new FileWriter("C:¥¥WMQFTE¥¥Metadata.txt"); ・・・・・・出力ファイルのオープン PrintWriter printWriter = new PrintWriter(fileWriter); printWriter.println("SourceTransferStartExit Start"); ・・・・転送元エージェント名を出力 printWriter.println("SourceAgentName : " + sourceAgentName); printWriter.println("DestinationAgentName : " + destinationAgentName); ・・・・転送先エージェント名を出力 printWriter.println("EnvironmentMetaData : "); ・・・・環境メタデータを出力 for( String key : environmentMetaData.keySet()){ printWriter.println(" key: " + key + ", value: " + environmentMetaData.get(key)); } printWriter.println("TransferMetaData : "); for( String key : transferMetaData.keySet()){ ・・・・転送メタデータを出力 printWriter.println(" key: " + key + ", value: " + transferMetaData.get(key)); } 161 © 2011 IBM Corporation IBM Software Group | ユーザーEXITサンプル作成と設置例 サンプルの作成 ‒続き- ※ 幕張環境で作成/稼動確認したものです ・・・・ファイル・メタデータを出力 printWriter.println("FileMetaData : "); Iterator i = fileSpecs.iterator(); while(i.hasNext()){ SourceFileExitFileSpecification sp = (SourceFileExitFileSpecification) i.next(); for( String key : sp.getSourceFileMetaData().keySet()){ printWriter.println(" key: " + key + ", value: " + sp.getSourceFileMetaData().get(key)); } } printWriter.close(); ・・・・ファイルのクローズ fileWriter.close(); }catch(IOException ioe){ }catch(Exception e){ } ・・・・結果をリターン return TransferExitResult.PROCEED_RESULT; } } ※ エラーハンドリングは含まれていません 162 © 2011 IBM Corporation IBM Software Group | ユーザーEXITサンプル実行結果 実行結果 fteCreateTransfer メタデータとして、place=Tokyo, filetype=SourceCodeをユーザーから渡す C:¥WMQFTE¥bin>fteCreateTransfer -sa AG1 -da AG2 -dd C:¥To ‒md fileType=SourceCode,Place=Tokyo C:¥From¥File.txt 5655-U80, 5724-R10 Copyright IBM Corp. 2008. ALL RIGHTS RESERVED BFGCL0035I: 転送要求が発行されました。 要求 ID: 414d5120434f514d20202020202020208e7923492001ff02 出力されたC:¥WMQFTE¥Metadata.txt SourceTransferStartExit Start SourceAgentName : AG1 DestinationAgentName : AG2 EnvironmentMetaData : key: com.ibm.wmqfte.ProductDirectory, value: C:¥WMQFTE key: com.ibm.wmqfte.ConfigurationDirectory, value: C:¥WMQFTE¥config¥COQM¥agents¥AG1 key: com.ibm.wmqfte.AgentVersion, value: 7.0 TransferMetaData : key: com.ibm.wmqfte.SourceAgent, value: AG1 key: place, value: Tokyo key: com.ibm.wmqfte.DestinationAgent, value: AG2 key: filetype, value: SourceCode key: com.ibm.wmqfte.OriginatingHost, value: 9.188.198.43 key: com.ibm.wmqfte.MqmdUser, value: MUSR_MQADMIN key: com.ibm.wmqfte.TransferId, value: 414d51204147514d312020202020202074b73c492000e202 key: com.ibm.wmqfte.OriginatingUser, value: fteUser FileMetaData : key: com.ibm.wmqfte.FileType, value: file key: com.ibm.wmqfte.FileConversion, value: binary key: com.ibm.wmqfte.ChecksumMethod, value: MD5 key: com.ibm.wmqfte.SourceFileDisposition, value: LEAVE 163 © 2011 IBM Corporation IBM Software Group | <参考>ユーザーEXITのインターフェース SourceTransferStartExit package com.ibm.wmqfte.exitpoint.api; import java.util.List; import java.util.Map; public interface SourceTransferStartExit { TransferExitResult onSourceTransferStart(String sourceAgentName, String destinationAgentName, Map<String, String> environmentMetaData, Map<String,String>transferMetaData, List<SourceFileExitFileSpecification>fileSpecs); } 各パラメータの説明 164 パラメータ 説明 String sourceAgentName 転送元FTEエージェント名 String destinationAgentName 転送先FTEエージェント名 Map<String, String> environmentMetaData 環境メタデータ Map<String, String>transferMetaData 転送メタデータ List<SourceFileExitFileSpecification>fileSpecs ファイルメタデータ © 2011 IBM Corporation IBM Software Group | <参考>ユーザーEXITのインターフェース SourceTransferEndExit package com.ibm.wmqfte.exitpoint.api; import java.util.List; import java.util.Map; public interface SourceTransferEndExit { String onSourceTransferEnd(TransferExitResult transferExitResult, String sourceAgentName, String destinationAgentName, Map<String, String>environmentMetaData, Map<String, String>transferMetaData, List<FileTransferResult>fileResults); } 各パラメータの説明 165 パラメータ 説明 TransferExitResult transferExitResult ファイル転送の結果 String sourceAgentName 転送元エージェント名 String destinationAgentName 宛先エージェント名 Map<String, String>environmentMetaData 環境メタデータ Map<String, String>transferMetaData 転送メタデータ List<FileTransferResult>fileResults ファイル転送の結果 © 2011 IBM Corporation IBM Software Group | <参考>ユーザーEXITのインターフェース DestinationTransferStartExit package com.ibm.wmqfte.exitpoint.api; public interface DestinationTransferStartExit { TransferExitResult onDestinationTransferStart(String sourceAgentName, String destinationAgentName, Map<String, String> evironmentMetaData, Map<String, String> transferMetaData, List<Reference<String>> fileSpecs); } 各パラメータの説明 166 パラメータ 説明 String sourceAgentName 転送元FTEエージェント名 String destinationAgentName 転送先FTEエージェント名 Map<String, String> environmentMetaData 環境メタデータ Map<String, String>transferMetaData 転送メタデータ List<Reference<String>> fileSpecs ファイルメタデータ © 2011 IBM Corporation IBM Software Group | <参考>ユーザーEXITのインターフェース DestinationTransferEndExit package com.ibm.wmqfte.exitpoint.api; public interface DestinationTransferEndExit { String onDestinationTransferEnd(TransferExitResult transferExitResult, String sourceAgentName, String destinationAgentName, Map<String, String>environmentMetaData, Map<String, String>transferMetaData, List<FileTransferResult>fileResults); } 各パラメータの説明 167 パラメータ 説明 TransferExitResult transferExitResult ファイル転送の結果 String sourceAgentName 転送元エージェント名 String destinationAgentName 宛先エージェント名 Map<String, String>environmentMetaData 環境メタデータ Map<String, String>transferMetaData 転送メタデータ List<FileTransferResult>fileResults ファイル転送の結果 © 2011 IBM Corporation IBM Software Group | リソース・モニター ディレクトリ内をポーリングし、ファイルの生成/削除をトリガーにタスクを実行する機能 使用例1) アプリケーションがデータ生成終了後、ファイル転送を実行 ・アプリケーションは、転送用データdata.zipを生成後、data.goファイルをC:¥trigディレクトリに生成 ・リソース・モニターは1分おきにC:¥trigディレクトリにdata.goファイルがないかどうかポーリング ・C:¥trigディレクトリにdata.goが生成されたことを検知すると、リソースモニターはファイル転送を実行 ⑤ファイル転送開始 アプリケーション ①転送用data.zipファイル生成 FTE エージェント ① File ②トリガーファイルdata.goを生成 ② C:¥trig ④ タスク定義に従い ファイル転送要求発行 リソース・モニター ③トリガー条件を満た していたら、タスク実行 定期的ディレクトリ内 をポーリング ファイル転送 タスク (XML) ファイル転送タスクを 定義 使用例2)転送用ディレクトリC:¥Data内の転送が終了したファイルを定期的にアーカイブ ・以下の処理をするAntスクリプトを作成 -アーカイブ対象のファイル名の末尾に日時を付加し、アーカイブ先にコピー -アーカイブ対象のファイルを削除 - リソース・モニターはC:¥Data内を一日おきにポーリング 168 © 2011 IBM Corporation IBM Software Group | リソース・モニターの生成/削除 コマンド/GUIより、生成/削除を行う リソース・モニター生成時、以下を指定 ポーリング間隔 年、月、週、日、時、分、秒単位で指定 トリガー条件 ファイル・パターン:ストリングの完全一致 / 単純なワイルドカードの一致 / 正規表現の一致 条件を指定:ファイルが存在する/ ファイルが存在しない / ファイル・サイズが一定以上 ※V7.0.1 では、トリガー条件は1 つのみサポート ポーリングするディレクトリの深さ デフォルトでは、指定したディレクトリのみ対象(再帰的にポーリングされない) オプションでサブディレクトリを含めることも可能 モニター作成 コマンド FTE エージェント コマンド・キュー・ マネージャー タスク、トリガー条件を 指定し、生成 ポーリング対象範囲 リソース・モニター ・ポーリング間隔 ・トリガー条件 ・ディレクトリの深さ 169 タスク定義に従い コマンド開始 or ファイル転送開始 実行コマンド/ Antスクリプト タスク定義 (XML) © 2011 IBM Corporation IBM Software Group | リソース・モニターEXIT リソース・モニターのタスク開始前に、EXIT(Java)を呼び出すことが可能 リソース・モニターのトリガー条件が満たされると、呼び出される 実行するタスクの変更や、タスクの実行可否を決めることが可能 モニター・メタデータの定義/更新が可能 タスク定義を置換または更新可能 リソース・モニターEXITの配置場所 <FTE構成ディレクトリ>/<調整キュー・マネージャー名>/agents/<FTEエージェント名>/exits exitClassPathで指定したディレクトリ(優先) FTEエージェントの設定 リソース・モニターEXITをagent.propertiesに設定 monitorExitClasses に実装したクラスを指定 カンマ区切りで複数EXITを指定可能 例monitorExitClasses=testExits.TestExit1,testExits.testExit2 設定後、FTEエージェントの再起動が必要 モニター・メタデータ FTEエージェントは、他のユーザーEXIT同様リソース・モニターEXITにメタデータを渡す メタデータは<key>,<value>のペア メタデータを下に、リソース・モニターにより実行されるタスク毎にEXITの動作を制御可能 メタデータの種類 170 環境メタデータ – FTEエージェントの稼働環境など モニター・メタデータ – トリガー条件を満たしたファイルに関する情報など 実行されるタスクを表すXML ストリング © 2011 IBM Corporation IBM Software Group | <参考> リソース・モニターEXITの構成 リソース・モニターEXITの作成 com.ibm.wmqfte.exitroutine.api.ProtocolBridgeCredentialExit を実装し、リソース・モニターEXITを作成 ProtocolBridgeCredentialExitインターフェース package com.ibm.wmqfte.exitroutine.api; import jav a.util.Map; public interface MonitorExit { MonitorExitResult onMonitor(Map<String, String> environmentMetaData, Map<String, String> monitorMetaData, Reference<String> taskDetails); } 171 © 2011 IBM Corporation IBM Software Group | チェックサム エージェント再起動時のファイルの整合性をチェックサムで保証 転送元/転送先FTEエージェント両方で、転送済みファイルのチェックサムを計算 MD5(Message Digest Algorithm 5)が計算に用いられる 128ビットのハッシュ値を出力するハッシュ関数 データ・セット/ファイル転送中 FTE エージェント MD5ハッシュ関数 ハッシュ値 転送済みファイルの チェックサムを計算 FTEエージェントが再起動 FTE エージェント MD5ハッシュ関数 ハッシュ値 ハッシュ値 FTEエージェント 再起動中に送信ファイルが 書き換えられてない? 172 再起動前後で転送済み ファイルのチェックサムが 異なっていたらエラー © 2011 IBM Corporation IBM Software Group | チェックサム チェックサムの設定 fteCreateTransferコマンド 必須パラメータに加え次のパラメータを指定 オプション 説明 -cs MD5/noneを指定 ・MD5:転送済みファイルのチェックサムを計算する (デフォルト) ・none:チェックサムを計算しない MQエクスプローラー 「ファイル転送管理の新規作成」ウィンドウ 「チェックサム」にチェックすると、無効になる デフォルトでは有効 173 © 2011 IBM Corporation IBM Software Group | プロトコル・ブリッジ FTP/SFTPサーバーとFTEエージェント間の相互ファイル転送が可能 FTEブリッジ・エージェントがFTP/SFTPサーバー、FTEネットワーク間をブリッジ ブリッジ・エージェントは、ローカルではなく、FTPプロトコル経由でファイルを取得/書き込み ブリッジ・エージェント構成方法 fteCreateBridgeAgent コマンドを使用してブリッジ・エージェントを作成 ブリッジ・エージェントは、エージェント・キュー・マネージャーに接続。FTEエージェントと同様、agent.propertiesに構成情報を設定 – FTEエージェントと同様、エージェント・キュー・マネージャーへの接続情報を設定 – FTPサーバーへの接続情報を設定 – 構成ファイルは、ブリッジ・エージェント作成時、エージェント・ディレクトリ直下に作成される FTPサーバーへの接続ユーザーをブリッジ・エージェントに登録 ProtocolBridgeCredentials.xmlにFTPサーバーのユーザーIDを記述 – ブリッジ・エージェント作成時、 エージェント構成ディレクトリ直下に作成される SFTPサーバーとの接続の場合は、鍵情報の登録も必要 ProtocolBridgeCredentials.xmlのユーザーIDをEXITでオーバーライドすることも可能 FTEエージェントと同様 fteStartAgentコマンドでブリッジ・エージェントを起動 FTPサーバー FTEエージェント間と同様にファイルを転送 FTPプロトコル File File User1でFTP サーバへアクセス FTEブリッジ・ エージェント FTE エージェント FTE エージェント File ProtocolBridgeCredentials.xml FTEユーザー : FTPユーザー fteUser: user1 174 File FTEブリッジ・エージェントと FTEエージェントを指定し、 ファイル転送要求を発行 ユーザーID を記述 © 2011 IBM Corporation IBM Software Group | データベース・ロガー 監査ログをデータベースに蓄積可能 ファイル転送時に、調整キュー・マネージャーのトピックに対してパブリッシュされる転送状況ログをデータベースに保管 サポートするデータベース DB2 9.1/DB2 9.5/DB2 9.7 with fix pack 1 or later/Oracle 10g/Oracle 10.2/Oracle 11g/ DB2 8.1 for z/OS(スタンドアロン・データベース・ロガーのみ) スタンドアロン・データベース・ロガーとJEEデータベース・ロガー スタンドアロン・データベース・ロガー スタンドアロンの Java アプリケーションとして稼動 調整キュー・マネージャーと同一システムで稼動、データベースとはType 2のJDBCドライバーを通してXA接続 JEEデータベース・ロガーへのマイグレーションは可能 JEEデータベース・ロガー アプリケーション・サーバー上で稼動 Java Platform, Enterprise Edition(JEE)アプリケーション・サーバーにデプロイ可能なEAR形式で提供 調整キュー・マネージャーやデータベースとは別のシステムに構成可能 【JEEデータベース・ロガーの動作】 各エージェントから調整キューマネージャーに集まる転送状況ログをサブスクライブし、転送履歴データベースに格納する アプリケーション・サーバー JEE データベース・ロガー QMGR1 転送状況 エージェント・キュー・ マネージャー FTE エージェント 転送状況 エージェント・キュー・ マネージャー Web エージェント 調整キュー・ マネージャー 転送履歴 データベース 175 © 2011 IBM Corporation IBM Software Group | Web Gateway HTTPを使用してWeb環境からFTEネットワークへの連携が可能 Web Gatewayを構成するコンポーネント Web Gatewayアプリケーション HTTPクライアントからのリクエストを処理し、Webエージェントと連携したファイル転送や ファイルスペース情報DBや転送履歴DBのデータを基にした情報提供等を行うコンポーネント FTEがエンタープライズ・アプリケーション(EAR形式)として提供。Java EE 5 準拠のアプリケーション・サーバーにデプロイして利用 Webエージェント FTEネットワーク上のFTEエージェントとのファイル転送を担うコンポーネント Web Gatewayアプリケーションと同一筐体上に構成 – (アプリケーション・サーバーのJVMとは別のJavaプロセスとして稼動) 通常のFTEエージェントと同様に内部的にキューマネージャーを利用 ファイルスペース情報データベース ファイルスペース( FTEエージェントからWebエージェントに転送されたファイルを保管しておくディレクトリ)内に格納されるWebエージェン トが受信したファイルの情報(ファイル名、作成日付、サイズ等)を保管 Web Gateway アプリケーションによって情報の読み書きが行われる 転送履歴データベース 転送履歴 DB ファイルの転送状況を保管 – 転送状況はデータベース・ロガーによって書き込まれる Web Gateway アプリケーションはクライアントからの クエストに応じて転送状況を取得し、クライアントに返信 HTTP クライアント HTTP データベース ロガー ファイルスペース 情報DB FTEネットワーク Web Gateway アプリケーション Web エージェント FTE エージェント キュー マネージャー キュー マネージャー アプリケーション・サーバー 一時 ディレクトリ 176 ファイル スペース © 2011 IBM Corporation IBM Software Group | Web Gatewayの処理 HTTPクライアントからWeb Gatewayを使用して行えるファイル転送に関する処理 HTTPメソッドを使用して以下の処理を行うことができる 処理内容 ファイルのアップロード HTTPクライアントからFTEエージェントへのファイル転送 HTTPメソッド POST ファイルのダウンロード ファイルスペース内のファイルをダウンロード GET ファイル・スペース内のファイルのリスト ファイルスペース情報データベースに保管されているファイル情報の取得 GET ファイルの削除 ファイルスペース内のファイルを削除 DELETE 転送状況の照会 転送履歴データベースに保管されている転送状況の取得 GET ※上記ファイル転送に関する処理の他にファイルスペースの管理やセキュリティ設定などの処理をWeb Gateway アプリケーションを利用して行うことが可能。 処理例:ファイルのアップロード HTTPクライアントから宛先FTEエージェントへのファイルのアップロードの流れ ① HTTPクライアントからファイルのアップロードを要求するHTTPリクエスト(POST)を送信 (ファイルもHTTPリクエストに付加して送信) ② Web Gatewayアプリケーションはアップロード要求(+ファイル)を受信し、ファイルを一時ディレクトリに保管 ※HTTPクライアントにはこのタイミングでレスポンスを返信 ③ Webエージェントにファイル転送要求を送信 ④ 転送要求を受信したWebエージェントは宛先FTEエージェントへファイル転送を実施 ※この処理は通常のFTEエージェント間のファイル転送と同じ ④ファイル転送実施 HTTP クライアント ①アップロード 要求 Web Gateway アプリケーション ②保管 一時ディレクトリ File Web エージェント FTE エージェント File File ③ファイル転送要求 177 © 2011 IBM Corporation IBM Software Group | 参考資料 Information Center http://publib.boulder.ibm.com/infocenter/wmqfte/v7r0/index.jsp 製品概要 http://www.ibm.com/software/jp/websphere/integration/wmq/fte/ developer Works ∼WebSphere MQ File Transfer Edition 入門∼ http://www.ibm.com/developerworks/jp/websphere/library/wmq/mqfte_intro/ 178 © 2011 IBM Corporation