我将MSMQ配置为在集群中运行。集群由两个Hyper-V虚拟机组成,并使用第三个虚拟机上的公共存储(所有虚拟机都共享windows域,它们通过网络相互看到对方)。故障转移群集管理器插件显示MSMQ服务正在运行。机器上的非集群MSMQ服务(它们是集群的成员)显示是在服务插件中运行的。现在,我尝试从远程计算机(从第三台虚拟机)向集群MSMQ服务和非集群MSMQ服务发送消息。我使用以下队列名称:
当指定非群集msmq地址时,消息将传递给非群集msmq实例。但是,当我试图访问集群msmq实例时,发送的消息停留在传出消息队列中,它会说“等待连接”(连接Winsock套接字失败)。集群msmq实例上的队列为空。
我尝试用telnet连接到集群msmq服务。对于连接,我指定了集群msmq地址和端口1801。上面写着“无法打开与主机的连接,端口1801:连接失败”。
有什么想法吗?
补充资料。当我单击“管理消息队列”菜单项时,当两个集群服务器都联机时,则在快照中,树中没有消息队列项。当我暂停一台服务器(第二台)时,树中会出现消息队列项。当树中有消息队列项时,将开始处理消息(我看到它们从发送服务器上的传出消息队列中消失,但在接收服务器上看不到它们)。
发布于 2018-07-02 12:59:57
似乎您只能从集群节点管理集群消息队列,该节点现在是角色的所有者。在现在不活动的群集节点上,没有“管理消息队列”菜单项。
考虑到消息没有传递到集群msmq实例的问题,我只是在其中一个集群节点上重新安装了msmq windows功能,并重新创建了msmq集群角色。在这些操作之后,传递消息的工作才刚刚开始。
https://stackoverflow.com/questions/51134496
复制相似问题