RabbitMQ - Як зробити конфігурацію серверів для оновлення часу простою?


12

Прочитавши документи та RabbitMQ в дії , створення кластера RabbitMQ здається досить простим, але для оновлення чи виправлення існуючого кластера RabbitMQ, схоже, потрібен перезапуск всього кластеру.

Чи є спосіб комбінувати кластеризацію, лопату, федерацію та балансування завантаження, щоб зробити можливе оновлення без втрати черг чи повідомлень, чи я пропустив щось трохи більш очевидне?


Будь-яке оновлення щодо цього?
Редді

Відповіді:


4

Припускаючи, що ваші клієнти-кролики можуть переносити перерване з'єднання, ви можете розглянути, що описано тут .

наш кластер стоїть за VIP. Коли ми хочемо оновити кластер, ми обертаємо альтернативний кластер і перемикаємо VIP на альтернативний кластер. Тим часом у нас є інструмент, який переміщує повідомлення між кластерами. Коли оновлення кластера 'master' завершено, ми реверсуємо процес.


1

Під час оновлення з однієї основної або другорядної версії RabbitMQ до іншої (тобто від 3.0.x до 3.1.x, або від 2.xx до 3.xx) або під час оновлення Erlang, для оновлення повинен бути знятий весь кластер ( оскільки кластери не можуть запускати такі змішані версії). Це не відбудеться при переході від однієї версії патча до іншої (тобто з 3.0.x до 3.0.y); ці версії можна змішувати в кластері (за винятком того, що 3.0.0 не можна змішувати з більш пізніми версіями з серії 3.0.x).


-1

@terence Я теж був у такому ж взутті, як і ти. Я думаю , що ви можете втамувати спрагу ви цікавість тут . PS Я ще цього не пробував.


1
Хоча це теоретично може відповісти на питання, бажано було б сюди включити істотні частини відповіді та надати посилання для довідки.
Дженні Д
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.