如何配置RabbitMQ铲?

如何配置RabbitMQ铲?,rabbitmq,rabbitmq-exchange,rabbitmq-shovel,rabbitmq-federation,Rabbitmq,Rabbitmq Exchange,Rabbitmq Shovel,Rabbitmq Federation,我在不同的数据中心有2个RabbitMQ集群。此时此刻,我需要将其中一个交换从一只兔子铲到另一只兔子。如何实现这一点?最适合此任务,有助于在集群之间(或同一集群内)可靠、持续地移动消息。此插件包含在RabbitMQ发行版中,易于启用(可以在其中一个集群上配置): 如果您更喜欢UI,请为管理UI启用管理插件: rabbitmq-plugins enable rabbitmq_shovel_management 下一步是定义本身(如果您计划在集群之间永久移动消息,则使用)。铲子的声明在中定义得相

我在不同的数据中心有2个RabbitMQ集群。此时此刻,我需要将其中一个交换从一只兔子铲到另一只兔子。如何实现这一点?

最适合此任务,有助于在集群之间(或同一集群内)可靠、持续地移动消息。此插件包含在RabbitMQ发行版中,易于启用(可以在其中一个集群上配置):

如果您更喜欢UI,请为管理UI启用管理插件:

rabbitmq-plugins enable rabbitmq_shovel_management 
下一步是定义本身(如果您计划在集群之间永久移动消息,则使用)。铲子的声明在中定义得相当好。请考虑到您需要配置
src-exchange
dest-exchange
,而不是
src-queue
dest-queue
,最适合此任务,有助于在集群之间(或同一集群内)可靠、持续地移动消息。此插件包含在RabbitMQ发行版中,易于启用(可以在其中一个集群上配置):

如果您更喜欢UI,请为管理UI启用管理插件:

rabbitmq-plugins enable rabbitmq_shovel_management 

下一步是定义本身(如果您计划在集群之间永久移动消息,则使用)。铲子的声明在中定义得相当好。请考虑到您需要配置
src-exchange
dest-exchange
而不是
src-queue
dest-queue
来补充Sergii的答案,下面是我如何创建从生产集群到测试集群的电铲

call rabbitmqctl.bat set_参数电铲[电铲名称]“{”src protocol“:”amqp091“,”src uri“:”amqp://[用户名]:[密码]@localhost“,”src exchange“:”[源交换],”src交换密钥“:”dest协议“:”amqp091“,”dest uri“:”amqp://[用户名]:[密码]@[目标群集服务器],”dest交换“:”[目标交换]“}”

它创建了一个动态铲,我更喜欢它,因为它会自动将自己复制到源集群中的其他节点

您可以在dest uri中提供多个目的地,因此,如果目标节点出现故障,则将尝试另一个目的地

src交换键
是因为源是主题交换

我认为除了查看目标交易所是否收到您期望的结果之外,没有任何方法可以检查其行为


为了补充Sergii的回答,下面是我如何创建从生产集群到测试集群的电铲

call rabbitmqctl.bat set_参数电铲[电铲名称]“{”src protocol“:”amqp091“,”src uri“:”amqp://[用户名]:[密码]@localhost“,”src exchange“:”[源交换],”src交换密钥“:”dest协议“:”amqp091“,”dest uri“:”amqp://[用户名]:[密码]@[目标群集服务器],”dest交换“:”[目标交换]“}”

它创建了一个动态铲,我更喜欢它,因为它会自动将自己复制到源集群中的其他节点

您可以在dest uri中提供多个目的地,因此,如果目标节点出现故障,则将尝试另一个目的地

src交换键
是因为源是主题交换

我认为除了查看目标交易所是否收到您期望的结果之外,没有任何方法可以检查其行为


感谢您的分析。实际上我已经配置了铲具声明和铲具管理。所有设置部分都是从兔子界面完成的。我只需要将消息从一个集群上的一个rabit铲到另一个集群上的另一个rabit。我需要检查铲具消息时的行为,所以您能指导我如何操作吗来自rabit UIT的消息级别如果电铲状态为绿色,则此处有关于电铲状态的文档,而不是正在执行其工作,并且消息应到达目标交换机。我已经完成了设置,但在设置电铲后,我的电铲状态仍显示为“启动”.我检查了我的目标url和源url都没有问题。但不确定为什么铲子状态一直保持“启动”状态谢谢你的分析。事实上我已经配置了电铲声明和电铲管理。所有的设置部分都是从兔子用户界面完成的。我只需要将消息从一个集群上的一个rabit铲到另一个集群上的另一个rabit。我需要检查铲消息时的行为,所以请你指导我如何铲rabit-Ui发出的消息中有关于电铲状态的文档,如果电铲状态为绿色,而不是正在执行其工作,则消息应发送到目标交换机。我已经完成了设置,但在设置电铲后,我的电铲状态仍显示为“启动”.我检查了我的目标url和源url都没有问题。但不确定为什么铲子状态一直保持“启动”状态