2 个 FR 之间的 IBM MQ 集群发送方通道不断重试

IBM MQ cluster sender channels between 2 FR keep retrying

我创建了 2 台主机(1 台本地主机和 1 台在 windows 虚拟机上)。根据屏幕设置所有内容以创建集群,目标是创建集群主题: 所以我添加了 2 个 FR 和 6 个 PR 队列管理器并面临 2 个问题:

  1. 我在集群目录中没有看到 FR2,只有 system.tempqmgr 这意味着它没有连接

  2. 发件人通道不断重试,如您所见我可以毫无问题地远程连接到其他管理器。防火墙已关闭,身份验证类型为 none,未创建任何身份验证记录,管理器已满存储库。我尝试重新创建管理器、身份验证、集群、打开 on/off 通道,但没有任何效果。有任何想法吗?

编辑:我发现即使是基本的发送方-接收方通道也无法正常工作。有什么问题?

在聊天中从 OP 中发现报告了以下错误:

9. 3. 2020 17:27:20 - Process(7292.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(DESKTOP-630J3C2) Installation(Installation1)
VRMF(9.1.0.0) QMgr(CTHFR1)
Time(2020-03-09T16:27:20.542Z)
ArithInsert1(852) ArithInsert2(437)

AMQ6047E: Conversion not supported.

EXPLANATION:
IBM MQ is unable to convert string data tagged in CCSID 852 to data in CCSID
437.

在聊天中进一步讨论后,SO 提供了来自 CTHFR1AMQERR01.LOG 文件的信息。

这里的关键信息是显示频道 TO.CTHRF2 已启动的条目后的错误:

AMQ6047E: Conversion not supported.

EXPLANATION:
IBM MQ is unable to convert string data tagged in CCSID 852 to data in CCSID
437.

CCSID 852 is a code page used under DOS to write Central European languages that use Latin script.

CCSID 437 is the character set of the original IBM PC.

这意味着本地 PC 上的 CTHFR1 是 运行 CCSID 852,VM 上的 CTHFR2 是 运行 CCSID 437。我不确定我是否理解为什么转换是必需的,因为聊天中提供的 CLUSSDRCLUSRCVR 定义都设置了 CONVERT(NO),但我怀疑这与两个队列管理器都是集群的完整存储库有关。在任何情况下,Windows 上的 IBM MQ 显然无法从 852 转换为 437。针对此问题的建议解决方案是将 CTHFR1 的 CCSID 设置为 437,然后重新启动。

ALTER QMGR CCSID(437)

OP 确认此问题已解决。