IBM Cloud Docs
Managed File Transfer 入门

Managed File Transfer 入门

什么是 IBM MQ Managed File Transfer (MFT)?

IBM® MQ Managed File Transfer (MFT) 可在不同系统之间以可靠、受管且安全的方式传输文件。 系统会对文件传输活动进行记录,并且这可用于活动日志记录。 您可以配置 Managed File Transfer 代理,并支持队列管理器执行传输。 Managed File Transfer (MFT) 提供了两种拓扑:

  1. **单队列管理器拓扑:**将单个队列管理器用作代理队列管理器、命令队列管理器和协调队列管理器。 下一部分中对这些术语进行了描述。

  2. **多队列管理器拓扑:**使用多个队列管理器,分别充当代理队列管理器、命令队列管理器和协调队列管理器。 更具体地说,此拓扑至少需要 3 个队列管理器,其中一个充当协调队列管理器,一个充当源代理队列管理器(用于创建 Managed File Transfer 代理)和命令队列管理器,第三个队列管理器充当目标代理队列管理器(用于创建另一个 Managed File Transfer 代理)和命令队列管理器。

    :在多队列管理器拓扑中,可以将必需的队列管理器全部部署在云上、全部进行内部部署或者混合使用云上和内部部署。

MFT 是 IBM MQ Advanced 的集成组件。 有关此产品的最新完整详细信息,请参阅 IBM Knowledge Center 中的 Managed File Transfer

IBM MFT 的组件

IBM MQ Managed File Transfer 有三个主要组件。 下面描述了这三个组件:

  1. **协调队列管理器:**负责收集代理状态、传输状态和传输活动信息。 2、 **命令队列管理器:**接口队列管理器,用于桥接 MFT 命令和 MQ 基础架构。 例如,向命令队列管理器提交 MFT 文件传输命令,以指示代理启动或取消传输。 3。 **代理:**每个代理都有一组自己的队列,这些队列与队列管理器(代理队列管理器)相关联,代理是用于发送和接收所传输文件的关键所在。 因此,代理在要发送或接收文件的系统上进行创建。

本教程将涵盖以下内容:

  1. 将 MQ on Cloud 队列管理器配置为 MFT 协调队列管理器、命令队列管理器和代理队列管理器,然后创建 MFT 代理(作为源代理或目标代理)。 本教程为这两个支持的拓扑提供了相关步骤。

    • **1.1:**单队列管理器拓扑:将单个队列管理器配置为代理队列管理器、命令队列管理器和协调队列管理器。
    • **1.2:**多队列管理器拓扑:在此拓扑中,将使用多个队列管理器。
  2. 执行文件传输


先决条件

为了继续执行本教程,请务必确保您已完成以下先决条件:

  1. MFT 的基本知识:要基本了解 MFT 如何与 IBM MQ 配合使用,请参阅 How does MFT work with IBM MQ? 在 IBM 知识中心。

    有关 MFT 的更多详细信息,请参阅 IBM Knowledge Center 中的 Managed File Transfer

  2. 创建 IBM MQ on Cloud 队列管理器

    如果您还没有 IBM MQ on Cloud 队列管理器,您可以按照此处的向导创建一个: IBM MQ on Cloud 入门 遵循引导式教程或同一页面上提供的手动步骤,或者如果您将使用现有 MQ on Cloud 队列管理器,那么应该具有:

    • MQ on Cloud 队列管理器
    • 在 connection_info.txt 文件中下载的连接详细信息
      • 如果没有此文件,请查阅本教程底部的附录 1
    • 在 platformApiKey.json 文件中下载的管理员用户名和 API 密钥
      • 如果没有此文件,请查阅本教程底部的附录 2
  3. IBM MQ 客户端: 要完成本教程,您需要在 PATH 中安装 IBM MQ 命令行工具"runmqsc"。 如果没有这些命令,那么可以通过安装 IBM MQ 客户机来获取这些命令。 本教程末尾的附录 3 详细说明了如何执行此操作。

  4. IBM MQ MFT 组件: 要安装 IBM MQ MFT 组件,请参阅 IBM Knowledge Center 中的 Installing Managed File Transfer


设置终端环境

  1. 打开终端窗口

    • 此终端将是管理终端,用于配置协调队列管理器。
  2. 在管理终端中,通过完成以下步骤在 MQSERVER 环境变量中指定队列管理器详细信息:

    • runmqsc CLI 需要设置环境变量,以标识它应该连接到的远程队列管理器。 在管理终端中,使用以下命令导出 MQSERVER 变量:

    • 适用于 Windows:SET MQSERVER=CLOUD.ADMIN.SVRCONN/TCP/<HOSTNAME>(<PORT>)

    • 对于Linux:export MQSERVER="CLOUD.ADMIN.SVRCONN/TCP/<HOSTNAME>(<PORT>)"

      • <HOSTNAME>- 这是文件 connection_info.txt 中的“主机名
      • <PORT>- 这是文件 connection_info.txt 中的"listenerPort"

此步骤在将用于远程管理队列管理器的任何新终端上都是必需的,例如使用 runmqsc cli


步骤 1:配置 MQ on Cloud 队列管理器进行受管文件传输 (MFT)

此部分指导您将 MQ on Cloud 队列管理器配置为代理队列管理器。 对于此配置,有两种广泛使用的拓扑。 您可以选择任一配置,然后遵循相应的部分进行操作:

  • 1.1. 单队列管理器拓扑 - 在此拓扑中,同一队列管理器将配置为执行所有 MFT 操作。 为此,需要将其配置为协调队列管理器、命令队列管理器和代理队列管理器。 单击此处以执行相关步骤

  • 1.2. 多队列管理器拓扑 - 在此拓扑中,将创建三个队列管理器来执行 MFT 操作。 我们将这三个队列管理器命名为 QMCOORDQMSRCQMDEST单击此处以执行相关步骤


步骤 2:启动文件传输

在此部分中,将通过执行文件传输来验证 MFT 设置。 目前,可以使用 MFT 命令行界面 (CLI) 或使用 MQ 资源管理器工具中的 MFT 选项卡来创建 MFT 文件传输。 本教程使用 MFT CLI 来演示文件传输。 fteCreateTransfer 命令从命令行创建并启动新的文件传输。 此命令可以立即启动文件传输,安排在未来日期和时间进行文件传输,将安排的传输重复一次或多次,以及基于某些条件触发文件传输。

为了简化本教程,我们仅创建立即传输。 遵循此处的指示信息来启动传输。

有关传输的更多详细信息,请参阅此 MFT Knowledge Center 链接


附录

附录 1:connection_info.txt

要检索包含队列管理器连接详细信息的 connection_info.txt 文件,请执行以下操作:

  1. 单击表中显示的相关服务,登录 IBM Cloud 服务实例 显示服务实例的图像 2.
  2. 这将打开队列管理器视图。 选择要从中检索连接信息的队列管理器 显示队列管理器列表的图像 3。 单击 连接信息 队列管理器连接信息的图像 4。 以“JSON 文本格式”下载此文件

附录 2:platformApiKey.json

要创建或重置管理员 API 密钥,请执行以下操作:

  1. 单击表中显示的相关服务,登录 IBM Cloud 服务实例 显示服务实例的图像 2.

  2. 这将打开队列管理器视图。 选择要从中检索连接信息的队列管理器 显示队列管理器列表的图像 3。 接下来,选择 管理 选项卡 此图显示突出显示了 "队列管理器管理" 选项卡 4。 现在,单击重置 IBM Cloud API 密钥/创建 IBM Cloud API 密钥

    • Note: The previous admin API key for this MQ Username will no longer be valid

    Image showing administration API key create button highlighted

    • Note: If the button says Create IBM Cloud API Key, then you have not created an api key in this way before. Click the Create IBM Cloud API Key button.
    1. Click Download to download platformApiKey.json containing an admin username and apikey Image showing the Download button for the admin new API key highlighted

附录 3:IBM MQ C 客户机

如果您没有 IBM MQ 客户机命令行工具和样本(runmqsc、amqsputc 和 amqsgetc),可以从此处进行下载。

  1. 选择如下所示的最新软件包,写入时的最新版本为 9.0.5 显示 IBM MQ 客户机版本的图像
  2. 如下图所示,通过勾选软件包左侧的复选框,选择“IBM MQC 可再分发客户端[您的操作系统]”。 文件名中应该有 Redist。 本教程是使用 Linux Ubuntu 操作系统创建的 此图显示选择与操作系统兼容的可再分发 MQ C 客户机
  3. 选择通过 HTTPS 下载,这将允许您直接通过浏览器下载客户端,如下所示 此图显示选择了 HTTPS 的多个下载选项
    • :如果您没有此选项,请尝试使用替代浏览器。
  4. 单击“继续”后, 会将您重定向到以下所示的屏幕。 点击红色圆圈显示的符号开始下载 单击红色圆圈指示的图像
  5. 下载完成后,将文件解压缩到您选择的目录 <PATH_TO_MQCLIENT_DIR>
    • tar -xvzf <IBM-MQC-Redist>.tar.gz <PATH_TO_MQCLIENT_DIR>
  6. 向路径添加命令
    • export PATH=$PATH:<PATH_TO_MQCLIENT_DIR>/bin:<PATH_TO_MQCLIENT_DIR>/samp/bin

附录 4:样本 MQMFTCredentials.xml 文件

此类型的文件用于存储代理进程的凭证信息。 这些信息可能包含用于向 MQ on Cloud 队列管理器进行认证的用户名和密码。 下面是可以参考的样本文件:

<?xml version="1.0" encoding="UTF-8"?>

<?xml version="1.0" encoding="UTF-8"?>
<tns:mqmftCredentials xmlns:tns="http://wmqfte.ibm.com/MQMFTCredentials" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://wmqfte.ibm.com/MQMFTCredentials MQMFTCredentials.xsd">
<tns:qmgr name="<QUEUE_MANAGER_NAME>" mqUserId="<ADMIN_MQ_USER>" mqPassword="<ADMIN_API_KEY>" useMQCSPAuthentication="true" />
</tns:mqmftCredentials>

- `<ADMIN_MQ_USER>` - this is 'mqUsername' in the file platformApiKey.json of your queue manager.
- `<QUEUE_MANAGER_NAME>` - this is 'queueManagerName' in the file connection_info.json of your queue manager.   
  • <ADMIN_API_KEY> = 队列管理器文件 platformApiKey.json 中的'apiKey'。

有关 MQMFTCredentials.xml 文件的详细信息,请参阅 IBM Knowledge Center 中的 MFT 凭证文件格式