2016-08-24 18 views
0

我有3個節點,這個磁盤模式和「ha-mode all」。 rabbitmq版本3.6.4rabbitmq集羣全部關閉,當第一個從節點,隊列狀態爲關時

當我嘗試停止所有節點時,首先停止兩個從節點,結束主節點。假設主節點已損壞,無法啓動。我使用rabbitmqctl force_boot設置了一個從節點,我發現隊列狀態已經關閉。

我不認爲這是正確的。我認爲從節點設置成爲主,隊列可用。不要考慮郵件是否丟失。

但是,首先停止主節點,然後停止新的主節點,結束最後一個節點。我可以 rabbitmqctl force_boot設置任何節點。任何節點都可用。

+1

是否重現?我的意思是你準時有這個問題嗎?這是一個測試嗎?你還可以發佈日誌嗎?我建議在https://groups.google.com/forum/#!forum/rabbitmq-users上提出這個問題,謝謝 – Gabriele

回答

0

聽起來就像你結束了非同步的奴隸,默認情況下,RabbitMQ將拒絕故障轉移到受控主關機上的非同步從服務器。

只有不同步的奴隸

這是可能的,當你關閉一個主節點,所有可用的奴隸非同步停止主節點。發生這種情況的一種常見情況是滾動集羣升級。默認情況下,RabbitMQ將拒絕故障切換到受控主機關閉(即明確停止RabbitMQ服務或關閉操作系統)的非同步從機,以避免信息丟失;相反,整個隊列將關閉,就好像非同步的從站不在那裏一樣。不受控制的主機關機(即服務器或節點崩潰或網絡中斷)仍會觸發故障切換,即使對於未同步的從機也是如此。

如果您希望主節點在所有情況下都故障切換到未同步的從節點(即,您將選擇隊列的可用性而不是避免消息丟失),那麼可以將ha-promote-on-shutdown策略鍵設置爲始終而不是其何時同步的默認值。

https://www.rabbitmq.com/ha.html

相關問題