[Linux]

Linux 上使用命令行验证服务器到服务器安装

您可以使用两个服务器 (一个作为发送方,另一个作为接收方) 来验证服务器到服务器的安装。

开始之前

  • Linux®上, IBM® MQ 在所有 Linux 平台上都支持 TCP。 在 x86 平台和 Power 平台上,也支持 SNA。 如果要在这些平台上使用 SNA LU6.2 支持,那么需要 IBM Communications Server for Linux 6.2。 Communications Server 可从 IBM作为 PRPQ 产品提供。 有关更多详细信息,请参阅 Communications Server

    如果您正在使用 TCP/IP ,请确保 TCP/IP 和 IBM MQ 都安装在这两个服务器上。

  • 此任务中的示例使用 TCP/IP。 如果不使用 TCP ,请参阅 AIX® and Linux上设置通信
  • 确保您是每个服务器上 IBM MQ 管理员组 (mqm) 的成员。
  • 决定哪个安装是发送方服务器,哪个安装是接收方服务器。 安装可能在同一系统上,也可能在不同系统上。

关于本任务

IBM MQ 对象定义区分大小写。 以小写形式输入为 MQSC 命令的任何文本都将自动转换为大写,除非您将其括在单引号中。 确保输入的示例与所示完全相同。

过程

  1. receiver 服务器上:
    1. Linux上,以 mqm 组中的用户身份登录。
    2. 检查哪些端口可用,例如,通过运行 netstat。 有关此命令的更多信息,请参阅操作系统的文档。

      如果未使用端口 1414 ,请记下 1414 以用作步骤 2 h中的端口号。 稍后在验证中对侦听器使用相同的端口号。 如果该端口正在使用中,请注意未使用的端口; 例如 1415。

    3. 通过在命令提示符处输入以下命令,为您正在使用的安装设置环境:
      . MQ_INSTALLATION_PATH/bin/setmqenv -s
      
      其中 MQ_INSTALLATION_PATH 是指 IBM MQ 的安装位置。
    4. 通过在命令提示符处输入以下命令来创建名为 QMB 的队列管理器:
      crtmqm QMB
      
      消息告诉您已创建队列管理器,并且已创建缺省 IBM MQ 对象。
    5. 通过输入以下命令来启动队列管理器:
      strmqm QMB
      
      此时会显示一条消息,告诉您何时启动了该队列管理器。
    6. 通过输入以下命令来启动 MQSC:
      runmqsc QMB
      
      一条消息告诉您 MQSC 已启动。 MQSC 没有命令提示符。
    7. 通过输入以下命令定义名为 RECEIVER.Q 的本地队列:
      DEFINE QLOCAL (RECEIVER.Q)
      
      将有一条消息告诉您已创建队列。
    8. 通过输入以下命令定义侦听器:
      DEFINE LISTENER (LISTENER1) TRPTYPE (TCP) CONTROL (QMGR) PORT ( PORT_NUMBER )
      
      其中 port_number 是运行侦听器的端口的名称。 此数字必须与定义发送方通道时使用的数字相同。
    9. 通过输入以下命令来启动侦听器:
      START LISTENER (LISTENER1)
      
      注: 请勿从自动降低后台进程优先级的任何 shell 在后台启动侦听器。
    10. 通过输入以下命令定义接收方通道:
      DEFINE CHANNEL (QMA.QMB) CHLTYPE (RCVR) TRPTYPE (TCP)
      
      此时会显示一条消息,告诉您何时创建了该通道。
    11. 通过输入以下命令结束 MQSC:
      end
      
      将显示一些消息,后跟命令提示符。
  2. sender 服务器上:
    1. 由于发送方服务器是 AIX 系统,因此请以 mqm 组中的用户身份登录。
    2. 通过在命令提示符处输入以下命令,为您正在使用的安装设置环境:
      . MQ_INSTALLATION_PATH/bin/setmqenv -s
      
      其中 MQ_INSTALLATION_PATH 是指 IBM MQ 的安装位置。
    3. 通过在命令提示符处输入以下命令来创建名为 QMA 的队列管理器:
      crtmqm QMA
      
      消息告诉您已创建队列管理器,并且已创建缺省 IBM MQ 对象。
    4. 通过输入以下命令来启动队列管理器:
       strmqm QMA
      
      此时会显示一条消息,告诉您何时启动了该队列管理器。
    5. 通过输入以下命令来启动 MQSC:
       runmqsc QMA
      
      此时会显示一条消息,告诉您 MQSC 会话已启动。 MQSC 没有命令提示符。
    6. 通过输入以下命令定义名为 QMB 的本地队列 (将用作传输队列):
      DEFINE QLOCAL (QMB) USAGE (XMITQ)
      
      此时会显示一条消息,告诉您何时创建了该队列。
    7. 通过输入以下命令来定义远程队列的本地定义:
      
      DEFINE QREMOTE (LOCAL.DEF.OF.REMOTE.QUEUE) RNAME (RECEIVER.Q) RQMNAME ('QMB') XMITQ (QMB)
    8. 通过输入下列其中一个命令来定义发送方通道:
      con-name 是接收方系统的 TCP/IP 地址。 如果两个安装都在同一系统上,那么 con-namelocalhostport 是您在 1 b中记录的端口。 如果未指定端口,那么将使用缺省值 1414。
      DEFINE CHANNEL (QMA.QMB) CHLTYPE (SDR) CONNAME ('CON-NAME(PORT)') XMITQ (QMB) TRPTYPE (TCP)
      
    9. 通过输入以下命令来启动发送方通道:
      START CHANNEL(QMA.QMB)
      
      当发送方通道启动时,接收方服务器上的接收方通道会自动启动。
    10. 通过输入以下命令来停止 MQSC:
      end
      
      将显示一些消息,后跟命令提示符。
    11. 切换到 MQ_INSTALLATION_PATH/samp/bin 目录。

      此目录包含样本程序。 MQ_INSTALLATION_PATH 表示安装了 IBM MQ 的高级目录。

    12. 如果发送方服务器和接收方服务器都安装在同一系统上,请通过输入以下命令来检查是否已在不同安装上创建队列管理器:
      dspmq -o installation
      
      如果队列管理器位于同一安装上,请使用 setmqm 命令将 QMA 移至发送方安装,或将 QMB 移至接收方安装。 有关更多信息,请参阅 setmqm
    13. 将消息放在远程队列的本地定义上,而该定义又指定远程队列的名称。 输入以下命令:
      ./amqsput LOCAL.DEF.OF.REMOTE.QUEUE QMA
      
      有一条消息告诉您 amqsput 已启动。
    14. 在一行或多行上输入一些消息文本,后跟空白行。
      一条消息告诉您 amqsput 已结束。 现在,您的消息已显示在队列上,并且再次显示命令提示符。
  3. 接收方 服务器上:
    1. 由于接收方服务器是 AIX 系统,请切换到 MQ_INSTALLATION_PATH/samp/bin 目录。
      此目录包含样本程序。 MQ_INSTALLATION_PATH 表示安装了 IBM MQ 的高级目录。
    2. 通过输入以下命令从接收方上的队列获取消息:
      ./amqsget RECEIVER.Q QMB
      
      样本程序将启动,并显示您的消息。 暂停后,样本结束。 然后显示命令提示符。

结果

您现在已成功验证服务器到服务器安装。