RabbitMQ - Как настроить серверы для обновления без простоев?


12

Прочитав документы и RabbitMQ в действии , создание кластера RabbitMQ кажется достаточно простым, но обновление или исправление существующего кластера RabbitMQ, похоже, требует перезапуска всего кластера.

Есть ли способ объединить кластеризацию, совок, федерацию и балансировку нагрузки, чтобы сделать возможным последовательное обновление без потери очередей или сообщений, или я пропустил что-то немного более очевидное?


Любое обновление по этому поводу?
Редди

Ответы:


4

Предполагая, что ваши клиенты rabbitmq могут терпеть разрыв соединения, вы можете рассмотреть то, что описано здесь .

наш кластер за VIP. Когда мы хотим обновить кластер, мы раскручиваем альтернативный кластер и переключаем VIP на альтернативный кластер. Между тем, у нас есть инструменты, которые перемещают сообщения между кластерами. Когда обновление «основного» кластера выполнено, мы обращаем процесс вспять.


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

@ Теренс Я тоже был в той же обуви, что и ты. Я думаю, что вы можете утолить жажду любопытства здесь . PS Я сам еще не пробовал.


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