如何在 bootstrap 上将 RabbitMQ 默认队列类型设置为仲裁队列?

问题描述 投票:0回答:1

我正在尝试使用官方 docker 镜像在 Kubernetes 上安装 RabbitMQ 集群

rabbitmq:3.12.5-alpine
。我有一个初始化容器,我可以在其中覆盖默认配置。

我可以看到,如果客户端创建一个队列来发布到节点,RabbitMQ 默认使用经典镜像队列。但是,如果不通过 cli 设置某些策略,这并不能确保持久性。 Pod 重新启动后,数据就会被删除。我想将仲裁队列设置为集群的默认队列类型。引导集群时是否有任何方法可以从配置文件/环境变量中覆盖此设置?我查看了官方文档,但没有找到任何内容。预先感谢!

kubernetes rabbitmq quorum
1个回答
2
投票

我查了官方文档但没有找到

其实官方文档确实回答了你的问题:

https://www.rabbitmq.com/quorum-queues.html#declaring

要声明仲裁队列,请将

x-queue-type
队列参数设置为
quorum
(默认为
classic
)。该参数必须由客户端在队列声明时提供;无法使用策略来设置或更改它。

由于这是在声明时发生的每队列设置,因此目前没有办法全局使所有队列成为仲裁队列。

© www.soinside.com 2019 - 2024. All rights reserved.