Amazon web services 在两个EC2实例之间使用MSMQ发送消息

Amazon web services 在两个EC2实例之间使用MSMQ发送消息,amazon-web-services,amazon-ec2,msmq,Amazon Web Services,Amazon Ec2,Msmq,我有两个AmazonEC2实例,我想从一台服务器向另一台服务器上的MSMQ发送消息。通常,在其他测试环境中,这将位于域上,因此不会成为问题,但这些EC2实例是工作组计算机,而不是域上的。因此,尝试发送到该计算机上的公共队列是不可能的。因此,我在第二台服务器上创建了一个专用队列,但看不到如何显示消息。我尝试了以下方法: [machinename][queuename]例如ServerB\testqueue FormatName:direct=[machinename]\private$[queue

我有两个AmazonEC2实例,我想从一台服务器向另一台服务器上的MSMQ发送消息。通常,在其他测试环境中,这将位于域上,因此不会成为问题,但这些EC2实例是工作组计算机,而不是域上的。因此,尝试发送到该计算机上的公共队列是不可能的。因此,我在第二台服务器上创建了一个专用队列,但看不到如何显示消息。我尝试了以下方法:

[machinename][queuename]例如ServerB\testqueue

FormatName:direct=[machinename]\private$[queuename]例如FormatName:direct=ServerB\private$\testqueue

DIRECT=[machinename]\PRIVATE$[queuename]例如DIRECT=ServerB\PRIVATE$\testqueue

FormatName:direct=os:[machinename]\PRIVATE$[queuename]例如FormatName:direct=os:ServerB\PRIVATE$\testqueue

注意:我有两台服务器的主机文件条目,列出了与相关固定EC2 IP地址相对应的工作组/netbios名称

使用两个FormatName:entries,我不会得到任何错误,但消息永远不会到达。使用“其他”会给我一个关于格式名称的错误。在私人队列上,我已给予“所有人”完全控制权

有谁能建议我如何将消息从一台EC2 windows服务器发送到另一台EC2 windows服务器上的专用队列(不在域上)


谢谢

这不应该是“公认的答案”-但如果您找不到自己的方法,您可以使用AWS托管的队列实现-。
它不与MSMQ 1-1兼容,但它是一种有效的回退策略(并且不需要管理)。

这不应该是“可接受的答案”-但如果您找不到自己的方法,您可以使用AWS托管的队列实现-。 它不与MSMQ 1-1兼容,但它是一种有效的回退策略(而且管理起来少了一件事)

在私人队列上,我已给予“所有人”完全控制权

这吸引了很多人。“每个人”不再意味着每个人——多年前就改变了。“每个人”是指本地安全系统可以访问的所有帐户。另一台工作组计算机上的帐户是未知的,因此您需要添加“匿名登录”以真正获得所有人的支持

使用两个FormatName:entries,我不会得到任何错误,但消息永远不会到达

要查看错误,需要启用负面源日志记录,并检查死信队列中的信息

在私人队列上,我已给予“所有人”完全控制权

这吸引了很多人。“每个人”不再意味着每个人——多年前就改变了。“每个人”是指本地安全系统可以访问的所有帐户。另一台工作组计算机上的帐户是未知的,因此您需要添加“匿名登录”以真正获得所有人的支持

使用两个FormatName:entries,我不会得到任何错误,但消息永远不会到达


要查看错误,您需要启用负面源日志记录,并检查死信队列中的信息。

这应该是已批准的答案。我们将计算机管理管理单元添加到mmc中,转到msmq,然后转到专用队列,打开属性并在安全选项卡上授予匿名读取访问权。似乎我们还可以通过powershell将
HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters\Security
设置为
NewRemoteReadServerAllowOneSecurityClient
,我们将在自动化过程中尝试。这应该是批准的答案。我们将计算机管理管理单元添加到mmc中,转到msmq,然后转到专用队列,打开属性并在安全选项卡上授予匿名读取访问权。似乎我们还可以通过powershell将
HKEY\U LOCAL\U MACHINE\SOFTWARE\Microsoft\MSMQ\Parameters\Security
设置为
NewRemoteReadServerAllowOneSecurityClient
,我们将在自动化过程中尝试。