Getting started with WebSphere MQ File Transfer Edition

WebSphere MQ File Transfer Edition delivers a robust managed file transfer solution, including reliable control of file movements, an audit trail of transfers, and automated scheduled transfers. This article introduces FTE to those who are already familiar with WebSphere MQ, and shows you how to build a simple FTE architecture on AIX and Windows, including the use of agent, command, and coordination queue managers.

Share:

Wayne Toh (tohwsw@sg.ibm.com), Application Integration & Middleware Solutions Specialist, IBM Sales & Distribution, IBM

Wayne Toh is an Application Integration & Middleware Solutions Specialist with IBM Sales & Distribution in Singapore. You can contact Wayne at tohwsw@sg.ibm.com.



06 May 2009

Also available in Chinese Japanese Spanish

Introduction

IBM® WebSphere® MQ File Transfer Edition, hereafter called FTE, leverages WebSphere MQ’s established transport backbone. FTE delivers a robust managed file transfer solution, including reliable control of file movements, an audit trail of transfers, and automated scheduled transfers. FTE is available on major distributed platforms. This article introduces FTE to those who are already familiar with WebSphere MQ, and MQ concepts such as queue managers, channels, channel listeners ,and message channel agents. The article shows you how to build a simple FTE architecture on AIX® and Microsoft® Windows®.

FTE architecture

Major FTE architecture components are described below.

Agents

An FTE agent is a process that forms the endpoint for file transfer operations. An agent must exist on a system to which or from which you are transferring files. An agent must connect to a queue manager, which can be from WebSphere MQ V6.0 or later. Each agent has its own set of queues on its associated queue manager, and therefore a queue manager can host one or more agents. It is not necessary for agents to be on the same host as the command queue manager or agent queue manager.

Agent queue manager

Each agent needs a set of queues on an MQ queue manager. These queues are internal queue systems to FTE and they are transparent to the end user. The queue manager that the agent is associated with is called the agent queue manager, and it may be local or remote.

Command queue manager

The command-line and WebSphere FTE MQ Explorer plug-in tooling lets you send commands to the FTE agents. The queue manager that the tooling connects to when sending these commands is called the command queue manager, and it may be different from the agent queue manager. Each command creates temporary dynamic queues on the queue manager, which can be from WebSphere MQ V6.0 or later. It is not necessary for agents to be connected to the same command queue manager and this queue manager may be local or remote.

Coordination queue manager

The coordination queue manager must be a WebSphere MQ V7.0 or later queue manager for its publish/subscribe feature. During setup, a topic called SYSTEM.FTE topic is created on the coordination queue manager. The agents send file transfer progress information to this topic, and when there is a subscriber, the information is stored in a WebSphere MQ queue. The WebSphere FTE MQ Explorer plug-in, when installed, is a subscriber to the topic, as shown below:

Figure 1. Subscriptions for Topic MQ FTE
Figure 1. Subscriptions for Topic MQ FTE

The file progress information can then be shown in WebSphere MQ Explorer on the Transfer Log and Current Transfer Progress views. Once installed, the node Managed File Transfer appears in the left column:

Figure 2. MQ Explorer Plug-in
Figure 2. MQ Explorer Plug-in

File transfer scenario

In this scenario, FTE is used to transfer files from a system that hosts SAP to a system that hosts WebSphere Message Broker, which transforms the messages before sending them to legacy systems via FTE. The topology deploys 2 FTE agents, FTEAG02 on the SAP host, and FTEAG02 on the WebSphere Message Broker host. Both FTE agents share the same agent queue manager, FTEQM01. The coordination queue manager CRQM01 is created on the Windows 2003 Server host. The coordination queue manager also serves as the command queue manager. The next section takes you through deployment -- connection to the legacy system is not included.

Figure 3. Components of the distributed FTE network
Figure 3. Components of the distributed FTE network

FTE consists of three CDs:

Client CD
Lets you create an FTE agent that communicates with the agent queue manager in client transport mode only.
Server CD
Lets you create an FTE agent that communicates with the agent queue manager in both client and bindings transport modes.
Tools CD
Contains commands for remote administration, plus an FTE plug-in for WebSphere MQ Explorer.

Install and create the coordination manager on Windows

  1. Install WebSphere MQ Server V7.0 and WebSphere MQ Explorer.
  2. Create the user mqadmin in the local mqm group. This user will administer the message queue. By default, when WebSphere MQ is installed, the MQ service process (AMQSVC.exe) and the DCOM object that it launches (AMQMSRVN.exe) are set up to run under the MUSR_MQADMIN ID, and that ID has all of the correct rights set. If this ID or its password are changed, DCOM will not run and MQ services will not be able to start up. To change the user under which AMQMSRVN runs to mqadmin, use the application DCOMCNFG.exe.
  3. Create a queue manager as coordination queue manager CRQM01.
  4. FTE provides a plug-in for WebSphere MQ Explorer to monitor file transfer. On the Tools CD, go to the directory \Disk1\InstData\Windows\VM and click on install.exe.

Install WebSphere MQ server on the WebSphere Message Broker host and create the agent queue manager

You can host the agent queue manager on WebSphere MQ V6 or V7. For distributed platforms, WebSphere MQ V6.0 must be upgraded to V6.0.2.4 or later to work with FTE.

  1. Install WebSphere MQ Server.
  2. Create the agent queue Manager FTEQM01.

Create the communication channels between the agent queue manager and the coordination queue manager

Create WebSphere MQ channels for communication:

  1. Create channels from the agent queue manager to the coordination queue manager.
  2. Create channels from the agent queue manager to the command queue manager. If they are the same, skip this step.
  3. Create channels from the command queue manager to the coordination queue manager. If they are the same, skip this step.
  4. Create channels from the agent queue manager to any other agent queue manager in the FTE network.

Create the MQ FTE agents on the WebSphere Message Broker and SAP hosts

Next, install the FTE agents FTEAG01 and FTEAG02 on the respective AIX servers. On the Server CD, run install.bin from the directory /Disk1/InstData/AIX/VM.

After installation, a <coordination_qmgr_name>.mqsc file is created in the configuration directory. This file contains the commands to create the MQ objects needed for FTE in the coordination manager. This file is located in the directory <config_directory>/<coordination_qmgr_name>/<coordination_qmgr_name>.mqsc.

Transfer this file to the server where the coordination queue manager is created and run it against the queue manager. You only need to do this once. To run this command, change to the directory that the MQSC script file is in and issue the command: runmqsc CRQM01 < CRQM01.mqsc

One of the objects created is the SYSTEM.FTE topic, as shown below:

Figure 4. SYSTEM.FTE topic
Figure 4. SYSTEM.FTE topic

After installation, the other file created is <agent_name>_create.mqsc. Run the <agent_name>_create.mqsc file against the agent's queue manager to create the internal system queues, for every FTE agent created. This file is located in the directory: <config_directory>/<coordination_qmgr_name>/agents/<agent_name>/<agent_name>_create.mqsc

To run this command, change to the directory that the MQSC script file is in and issue the command: runmqsc FTEQM01< FTEAG01_create.mqsc.

Assigning folder permissions

Next, assign folder permissions and ownership to the chosen non-root user that runs the FTE agent process. For example, you can create a non-root user fteagent. For more information on folder permissions, see Securing WebSphere MQ File Transfer Edition V7.

Testing the file transfer

Finally, start both agents on their respective servers by running the fteStartAgent command from the directory WMQFTE/bin, as shown below:

./fteStartAgent FTEAG01
./fteStartAgent FTEAG02

As a test, transfer a text file test.txt from Agent FTEAG01 to Agent FTEAG02. From the machine hosting the coordination queue manager, run the following commands from the directory WMQFTE\tools:

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

You can also do the file transfer using the FTE plug-in in MQ Explorer. Right-click on any icon below Managed File Transfer and enter the parameters for the file transfer. You can view the transfer logs from MQ Explorer. Here are the parameters for the transfer:

Figure 5. File transfer parameters
Figure 5. File transfer parameters

Audit Information

WebSphere MQ Explorer stores the file transfer logs in a binary file. You can write an application that subscribes to the SYSTEM.FTE topic. The application retrieves the messages in the queue via Message Queue Interface (MQI) or WebSphere MQ JMS and stores them in a database.

MQ security

FTE provides a security tool such as the sandbox, which defines the directory that an agent can access. You also need to do base MQ hardening for access control and authentication, and take care of file directory permissions. For more information, see Securing WebSphere MQ File Transfer Edition V7.

Conclusion

Using FTE to do file transfer using your existing MQ network reduces the costs and resources required to maintain two separate infrastructures. One can monitor and manage the file transfers from a central location using one or more instances of the MQ Explorer plug-in. You can use the task list in this article to build a simple FTE network, which will help you get started on FTE.

Resources

Comments

developerWorks: Sign in

Required fields are indicated with an asterisk (*).


Need an IBM ID?
Forgot your IBM ID?


Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.

 


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name



The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.

 


All information submitted is secure.

Dig deeper into WebSphere on developerWorks


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=WebSphere
ArticleID=387765
ArticleTitle=Getting started with WebSphere MQ File Transfer Edition
publish-date=05062009