WebSphere MQ File Transfer Edition 入门

WebSphere MQ File Transfer Edition 提供了健壮的托管文件传输解决方案,包括可靠的文件移动控制、传输审计跟踪以及自动调度传输。本文向已经熟悉 WebSphere MQ 的人员介绍 FTE,并向展示如何在 AIX 和 Windows 之上构建简单的 FTE 架构,包括代理、命令和协调队列管理器的使用。

Wayne Toh, 应用程序集成和中间件解决方案专家,IBM Sales & Distribution, IBM

Wayne Toh 是新加坡 IBM Sales & Distribution 部门的一位应用程序集成 & 中间件解决方案专家。



2009 年 8 月 19 日

简介

IBM® WebSphere® MQ File Transfer Edition(后称 FTE)利用了 WebSphere MQ 已确立的传输中枢。FTE 提供了健壮的托管文件传输解决方案,包括可靠的文件移动控制、传输审计跟踪以及自动调度传输。FTE 可用于主要的分布式平台。本文对 FTE 的介绍所面向的对象已经熟悉 WebSphere MQ 和 MQ 概念,例如队列管理器、渠道、渠道监听器和消息渠道代理。本文向您展示如何在 AIX® 和 Microsoft® Windows® 之上构建简单的 FTE 架构。

FTE 架构

马上下载 WebSphere MQ V7 试用版,抢先体验新版本为您带来的新功能!

更多关于 WebSphere MQ 方面的信息,请参考 WebSphere MQ 产品专题

阅读 保护 WebSphere MQ File Transfer Edition V7 的安全,了解加强 FTE 网络所需的网络设计和配置任务。

主要 FTE 架构组件如下所述。

代理

FTE 代理这种流程可构成文件传输操作的端点。代理所存在的系统必须正在传输文件。代理必须连接队列管理器,后者可能来自 WebSphere MQ V6.0 或更新版本。每个代理在其相关联的队列管理器上都有自己的队列集合,因此一个队列管理器可以驻留一个或多个代理。代理不必与命令队列管理器或代理队列管理器位于相同主机上。

代理队列管理器

每个代理都需要位于一个 MQ 队列管理器之上的一组队列。这些队列是 FTE 内部队列系统,对于最终用户而言是透明的。与代理相关联的队列管理器称为代理队列管理器,它可能是本地或远程的。

命令队列管理器

命令行和 WebSphere FTE MQ Explorer 插件工具允许您将命令发送到 FTE 代理。在发送这些命令时工具所连接的队列管理器称为 命令队列管理器,它可能与代理队列管理器有所不同。每个命令都在该队列管理器上创建临时动态队列,该队列管理器可能来自 WebSphere MQ V6.0 或更新版本。代理不必连接到相同的命令队列管理器上,此队列管理器可能是本地或远程的。

协调队列管理器

协调队列管理器必须是 WebSphere MQ V7.0 或更新版本的队列管理器,具有发布/订阅特性。在设置过程中,一个被称为 SYSTEM.FTE topic 的主题创建在协调队列管理器上。代理将文件传输流程信息发送到此主题,并且当订阅者存在时,信息会保存在 WebSphere MQ 队列中。WebSphere FTE MQ Explorer 插件在安装后就是该主题的一个订阅者,如下所示:

图 1. 主题 MQ FTE 订阅
图 1. 主题 MQ FTE 订阅

然后此文件流程信息可显示在 WebSphere MQ Explorer 中的 Transfer Log 和 Current Transfer Progress 视图之上。一旦安装,节点 Managed File Transfer 就显示在左栏中:

图 2. MQ Explorer 插件
图 2. MQ Explorer 插件

文件传输方案

在此方案中,FTE 用于将文件从驻留 SAP 的系统传输到驻留 WebSphere Message Broker 的系统,后者在通过 FTE 将消息发送到遗留系统之前会转换消息。这种拓扑部署 2 个 FTE 代理 —— SAP 主机上的 FTEAG02 和 WebSphere Message Broker 主机上的 FTEAG02。两个 FTE 代理都共享相同的代理队列管理器 FTEQM01。协调队列管理器 CRQM01 创建在 Windows 2003 Server 主机之上。协调队列管理器也用作命令队列管理器。下一节会带您学习部署 —— 不包括连接到遗留系统。

图 3. 分布式 FTE 网络的组件
图 3. 分布式 FTE 网络的组件

FTE 由 3 种 CD 组成:

Client CD
允许您创建只在客户机传输模式中与代理队列管理器通信的 FTE 代理。
Server CD
允许您创建在客户机和绑定传输模式中皆可与代理队列管理器通信的 FTE 代理。
Tools CD
包含远程管理的命令,以及 WebSphere MQ Explorer 的 FTE 插件。

在 Windows 上安装和创建协调管理器

  1. 安装 WebSphere MQ Server V7.0 和 WebSphere MQ Explorer。
  2. 在本地 mqm 组中创建用户 mqadmin。此用户将管理消息队列。默认情况下,安装 WebSphere MQ 之后,MQ 服务进程 (AMQSVC.exe) 及其启动的 DCOM 对象 (AMQMSRVN.exe) 被设置为运行在 MUSR_MQADMIN ID 之下,而且该 ID 具有所有恰当的权限集。如果修改了此 ID 或其密码,那么 DCOM 将不会运行,而 MQ 服务将不能启动。要将运行 AMQMSRVN 的用户修改为 mqadmin,可使用应用程序 DCOMCNFG.exe。
  3. 创建队列管理器,作为协调队列管理器 CRQM01。
  4. FTE 为 WebSphere MQ Explorer 提供插件以监控文件传输。在 Tools CD 上,访问目录 \Disk1\InstData\Windows\VM 并单击 install.exe。

在 WebSphere Message Broker 主机上安装 WebSphere MQ 服务器,并创建代理队列管理器

您可以在 WebSphere MQ V6 或 V7 之上驻留代理队列管理器。对于分布式平台,WebSphere MQ V6.0 必须升级为 V6.0.2.4 或更新版本以处理 FTE。

  1. 安装 WebSphere MQ Server。
  2. 创建代理队列管理器 FTEQM01。

创建代理队列管理器和协调队列管理器之间的通信渠道

创建 WebSphere MQ 通信渠道:

  1. 创建从代理队列管理器到协调队列管理器的渠道。
  2. 创建从代理队列管理器到命令队列管理器的渠道。如果它们相同,则跳过这一步骤。
  3. 创建从命令队列管理器到协调队列管理器的渠道。如果它们相同,则跳过这一步骤。
  4. 创建从代理队列管理器到 FTE 网络中其他任何代理队列管理器的渠道。

在 WebSphere Message Broker 和 SAP 主机上创建 MQ FTE 代理

接下来,在各自的 AIX 服务器上安装 FTE 代理 FTEAG01 和 FTEAG02。在 Server CD 上,运行目录 /Disk1/InstData/AIX/VM 中的 install.bin。

安装之后,一个 <coordination_qmgr_name>.mqsc 文件会创建在配置目录中。此文件包含用于在协调管理器中为 FTE 创建必要 MQ 对象的命令。此文件位于目录 <config_directory>/<coordination_qmgr_name>/<coordination_qmgr_name>.mqsc 下。

将此文件传输到创建了协调队列管理器的服务器,并在队列管理器中运行。您只需操作一次。要运行此命令,转到包含 MQSC 脚本文件的目录,并执行此命令:runmqsc CRQM01 < CRQM01.mqsc

所创建的对象之一为 SYSTEM.FTE topic,如下所示:

图 4. SYSTEM.FTE topic
图 4. SYSTEM.FTE topic

安装之后创建的另一个文件为 <agent_name>_create.mqsc。在该代理的队列管理器中运行 <agent_name>_create.mqsc 文件 来针对每个已创建的 FTE 代理而创建内部系统队列。此文件位于目录:<config_directory>/<coordination_qmgr_name>/agents/<agent_name>/<agent_name>_create.mqsc

要运行此命令,转到包含 MQSC 脚本文件的目录,并执行此命令:runmqsc FTEQM01< FTEAG01_create.mqsc

指定文件夹权限

接下来,为已选定的运行该 FTE 代理进程的非根用户指定文件夹权限和所有权。例如,您可以创建一个非根用户 fteagent。有关文件夹权限的更多信息,请查看 保护 WebSphere MQ File Transfer Edition V7

测试文件传输

最后,运行 WMQFTE/bin 目录下的 fteStartAgent 命令,在各自服务器上启动两个代理,如下所示:

./fteStartAgent FTEAG01
./fteStartAgent FTEAG02

作为测试,将一个文本文件 test.txt 从 Agent FTEAG01 传输到 Agent FTEAG02。在驻留协调队列管理器的机器上,运行 WMQFTE\tools 中的以下命令:

fteCreateTransfer -w -sa FTEAG01 -sm FTEQM01 -da FTEAG02 -dm FTEQM01 
-df /transfer/in/test.txt /transfer/out/test.txt

您还可以使用 MQ Explorer 中的 FTE 插件来执行文件传输,右键单击 Managed File Transfer 之下的任意图标,输入文件传输参数。您可以在 MQ Explorer 中查看传输日志。这里有传输参数:

图 5. 文件传输参数
图 5. 文件传输参数

审计信息

WebSphere MQ Explorer 在一个二进制文件中保存了文件传输日志。您可以编写一个订阅 SYSTEM.FTE topic 的应用程序。该应用程序 通过 Message Queue Interface (MQI) 或 WebSphere MQ JMS 检索队列中的消息,并将之保存在数据库中。

MQ 安全性

FTE 提供了一个安全工具(例如沙盒),可定义代理能够访问的目录。您还需要执行基础 MQ 固化来控制访问和验证身份,并且管理文件目录权限。有关更多信息,请查看 保护 WebSphere MQ File Transfer Edition V7

结束语

使用 FTE 以利用现有 MQ 网络来执行文件传输,这可减少维护两个独立基础架构所需成本和资源。您可在中央位置使用 MQ Explorer 插件的一个或多个实例来监控和管理文件传输。您可以使用本文中的任务列表来构建简单的 FTE 网络,这将帮助您起步。

参考资料

学习

获得产品和技术

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=420512
ArticleTitle=WebSphere MQ File Transfer Edition 入门
publish-date=08192009