我已經設置了一個RabbitMQ集羣,它有3個節點:rabbit1,rabbit2和rabbit3,每個節點都在docker容器中運行。RabbitMQ集羣不會選出新的主節點
所有隊列在三個節點之間鏡像,rabbit1是主節點。當我停止rabbit2或rabbit3的容器時,剩下的兩個節點工作正常。如果我有一個隊列中的3條消息,這些消息仍然存在於rabbit1和另一個仍在運行的節點上。
但是,如果我停止rabbit1,則會清空rabbit2和rabbit3的隊列,直到我再次啓動rabbit1。如果我向rabbit2或rabbit3發送消息,則收到該消息但未保存到隊列中;而當rabbit1啓動並且我發送了一些信息給rabbit2/rabbit3時,消息被保存並正確同步。
是否有任何方式或任何配置,我需要考慮,以便主機關閉時消息不從奴隸清空,但奴隸選擇一個新的主人,或至少保存消息保存? 非常感謝您提前。
我應該澄清一下:我設置了正確的策略來在所有備註中複製消息並自動進行同步。這就是爲什麼我很困惑,爲什麼它不工作。我的政策如下:rabbitmqctl set_policy ha-all「^ ha \」。 「{」「ha-mode」「:」「all」「」「ha-sync-mode」:「automatic」}「 – KaffeeKaethe
所以根據這個」如果停止包含鏡像隊列主節點的RabbitMQ節點,某些其他節點上的一些從設備將被提升爲主設備「它應該工作 – KaffeeKaethe
您的隊列的名稱是什麼? –