5

在 RabbitMQ 中,

如果我想在集群环境中镜像队列,我使用以下命令:

rabbitmqctl set_policy ha-all "" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

此命令会将策略应用于虚拟主机的所有队列"\"

如果我必须为特定虚拟主机应用策略说“foo”,我使用:

rabbitmqctl set_policy -p "foo" ha-all "" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

问题 :

有没有办法在集群环境中的所有虚拟主机上应用策略以进行队列镜像?

4

1 回答 1

3

如果您在 *nix 环境中运行,则以下内容应该可以工作

rabbitmqctl list_vhosts | while read line ; do rabbitmqctl set_policy -p "$line" ha-all "" '{"ha-mode":"all","ha-sync-mode":"automatic"}'; done

这会将输出的每一行通过管道传输到您的 rabbitmqctrl 命令中。

于 2017-10-19T15:04:13.450 回答