[IBM i]

IBM i 上使用独立 ASP 和 NetServer 创建多实例队列管理器

创建要在两个 IBM® i 服务器上运行的多实例队列管理器。 队列管理器数据通过NetServer 存储在 "IBM i服务器上。 队列管理器日志存储在独立 ASP 上。 使用 "IBM i群集或手动程序将包含队列管理器日志的独立 ASP 转移到另一台 "IBM i服务器。

开始之前

  1. 该任务需要三个 IBM i 服务器。 在其中两个上安装 IBM MQ ,即示例中的 ALPHA 和 BETA。 产品必须至少为 IBM WebSphere® MQ 7.0.1 Fix Pack 1
  2. 第三个服务器是 IBM i 服务器,由 NetServer 连接到 ALPHA 和 BETA。 它用于共享队列管理器数据。 它不必具有 IBM MQ 安装。 作为临时步骤在服务器上安装 IBM MQ 以设置队列管理器目录和许可权非常有用。
  3. 确保 QMQM 用户概要文件在所有三个服务器上都具有相同的密码。
  4. 安装 IBM i NetServer; 参见 i5/OS NetServer.
  5. 创建过程以将独立 ASP 从发生故障的队列管理器传输到正在接管的备用数据库。 您可能会在 SupportPac MC41: 配置 IBM MQ for iSeries for High Availability 有助于设计独立 ASP 传输过程。

关于本任务

执行以下步骤以创建 图 1中显示的配置。 使用 IBM i NetServer连接队列管理器数据。

  • 创建从 ALPHA 和 BETA 到 GAMMA 上用于存储队列管理器数据的目录共享的连接。 此任务还设置必需的许可权,用户概要文件和密码。
  • IBM i 服务器 ALPHA 上创建队列管理器 QM1
  • 在另一个 IBM i 服务器 BETA 上添加 QM1 的队列管理器控制信息。
  • 启动队列管理器,允许备用实例。

过程

  1. 完成任务,使用 IBM i 上的 NetServer 为队列管理器数据创建网络共享

    因此, ALPHA 和 BETA 具有指向 GAMMA 上的 /QIBM/UserData/mqm/qmgrs 的共享 /QNTC/GAMMA/WMQ。 用户概要文件 QMQMQMQMADM 具有必需的许可权,并且 QMQM 在所有三个系统上都具有匹配的密码。

  2. 在 ALPHA 上创建队列管理器 QM1 ,在 GAMMA 上保存队列管理器数据。
    CRTMQM MQMNAME(QM1) UDLMSGQ(SYSTEM.DEAD.LETTER.QUEUE)
    MQMDIRP(' /QNTC/GAMMA/WMQ ')
    

    路径 /QNTC/GAMMA/WMQ 使用 NetServer 在 /QIBM/UserData/mqm/qmgrs中创建队列管理器数据。

  3. 使用命令 DSPF来检查 CRTMQM 针对 ALPHA 上的 QM1 创建的 IBM MQ 配置数据。

    下一步需要这些信息。

    在此示例中,将在 ALPHA for QM1上的 /QIBM/UserData/mqm/mqs.ini 中创建以下配置:
    Name=QM1
    Prefix=/QIBM/UserData/mqm
    Library=QMQM1
    Directory=QM1
    DataPath= /QNTC/GAMMA/WMQ /QM1
    
  4. 使用 ADDMQMINF 命令在 BETA 上创建 QM1 的队列管理器实例。 在 BETA 上运行以下命令以修改 BETA 上的 /QIBM/UserData/mqm/mqs.ini 中的队列管理器控制信息。
    ADDMQMINF MQMNAME(QM1)
    PREFIX('/QIBM/UserData/mqm')
    MQMDIR(QM1)
    MQMLIB(QMQM1)
    DATAPATH(' /QNTC/GAMMA/WMQ /QM1 ')
    
    提示: 复制并粘贴配置信息。 队列管理器节在 ALPHA 和 BETA 上相同。
  5. 在 ALPHA 和 BETA 上启动队列管理器实例。
    1. 在 ALPHA 上启动第一个实例,使其成为活动实例。 允许切换到备用实例。
      STRMQM MQMNAME(QM1) STANDBY(*YES)
      
    2. 在 BETA 上启动第二个实例,使其成为备用实例。
      STRMQM MQMNAME(QM1) STANDBY(*YES)
      

结果

使用 WRKMQM 来检查队列管理器状态:

  1. ALPHA 上队列管理器实例的状态应该为 *ACTIVE
  2. BETA 上队列管理器实例的状态应为 *STANDBY

示例

图 1。 使用独立 ASP 传输队列管理器日志
显示当日志从一个主机切换到另一个主机时,要传输到主机 Beta 的主机 Alpha 上的本地队列管理器日志

后续操作

  • 验证活动实例和备用实例是否自动切换。 您可以运行样本高可用性样本程序以测试切换; 请参阅 高可用性样本程序。 样本程序是 "C" 客户机。 您可以从 Windows 或 Unix 平台运行这些命令。
    1. 启动高可用性样本程序。
    2. 在 ALPHA 上,结束请求切换的队列管理器:
      ENDMQM MQMNAME(QM1) OPTION(*IMMED) ALSWITCH(*YES)
      
    3. 检查 BETA 上的 QM1 实例是否处于活动状态。
    4. 在 ALPHA 上重新启动 QM1
      STRMQM MQMNAME(QM1) STANDBY(*YES)
      
  • 查看备用高可用性配置:
    1. 使用 NetServer 将队列管理器数据放在 IBM i 服务器上。
    2. 使用远程日志记录将日志镜像到备用服务器,而不是使用独立 ASP 将队列管理器日志传输到备用服务器。