Something that causes a lot of confusion among users of the MQ Managed File Transfer component is which of the three types of queue manager in an MFT topology (the coordination queue manager, the command queue manager and agent queue manager) various commands connect to. Some information on this can be found in the Which IBM MQ Managed File Transfer command connects to which queue manager topic within the MQ section of IBM Knowledge Center. Here is a bit more detail, with pictures, that will hopefully help those of you who are still confused!
Commands that connect to the coordination queue manager.
The coordination queue manager for a Managed File Transfer topology is a central hub that has knowledge of the entire topology. It is connected to all of the agent queue managers in a topology via sender/receiver channels. Agents regularly publish status information to the coordination queue manager, and store their transfer templates there.
When the commands mentioned above are run, they connect directly to the coordination queue manager and either:
- Create or delete a transfer template.
- Query state information about agents, monitors or scheduled transfers, and display it to the user.
Commands that connect to the command queue manager.
The command queue manager can be thought of as a gateway into an Managed File Transfer topology. It is connected to agent queue managers using sender/receiver channels. When the commands shown above are run, they will:
- Connect to the command queue manager.
- Create a temporary reply queue.
- Send a message containing the command details to the appropriate agent.
The message will be routed through the MQ network to the agent queue manager, where it is picked up by the agent and processed.
Figure 3: The commands connect to the command queue manager. The message containing the command is then routed through the MQ network to the correct agent queue manager, where it it picked up by the agent.
After the agent has processed the command, it will send a reply back to the command queue manager, where it is picked up by the command.
Commands that connect to the agent queue manager.
1 fteCreateWebAgent is only available with WebSphere MQ File Transfer Edition V7.0.4, and the MQ V7.5 and V8.0 Managed File Transfer components.
Every agent has it's own agent queue manager. The agent uses system queues hosted on this queue manager to maintain state information and receive requests for work. A single queue manager can act as the agent queue manager for multiple agents. Agent queue managers are connected to the coordination queue manager, the command queue manager and other agent queue managers using sender/receiver channels.
The fteCreateAgent, fteCreateBridgeAgent, fteCreateCDAgent and fteCreateWebAgent commands take the agent queue manager name as an argument. When these commands are run, they will connect to the specified queue manager and send a message to the coordination queue manager indicating that the agent has been added to the Managed File Transfer topology. Similarly, when fteDeleteAgent is run, it will connect to the agent queue manager and send a message to the coordination queue manager informing it that the agent has now been removed from the Managed File Transfer topology.
Figure 4: The various fteCreate commands, along with fteDeleteAgent, connect to the agent queue manager and send a message to the coordination queue manager to either register or deregister an agent from the topology.
fteCleanAgent will connect to the agent queue manager, and remove any state information for that agent from it's system queues. It should be noted that running this command is very dangerous and could have an impact on the whole topology. As such, it should only be run under guidance from IBM.