我正在尝试使用官方 docker 镜像在 Kubernetes 上安装 RabbitMQ 集群
rabbitmq:3.12.5-alpine
。我有一个初始化容器,我可以在其中覆盖默认配置。
我可以看到,如果客户端创建一个队列来发布到节点,RabbitMQ 默认使用经典镜像队列。但是,如果不通过 cli 设置某些策略,这并不能确保持久性。 Pod 重新启动后,数据就会被删除。我想将仲裁队列设置为集群的默认队列类型。引导集群时是否有任何方法可以从配置文件/环境变量中覆盖此设置?我查看了官方文档,但没有找到任何内容。预先感谢!
我查了官方文档但没有找到
其实官方文档确实回答了你的问题:
https://www.rabbitmq.com/quorum-queues.html#declaring
要声明仲裁队列,请将
队列参数设置为x-queue-type
(默认为quorum
)。该参数必须由客户端在队列声明时提供;无法使用策略来设置或更改它。classic
由于这是在声明时发生的每队列设置,因此目前没有办法全局使所有队列成为仲裁队列。