Test_SRE

Deploy RabbitMQ cluster on k8s

Migration from vm to k8s cluster

https://habr.com/ru/company/flant/blog/450662/

Documentation

полное зеркалирование всех содержащихся в кластере данных, что позволяет работать RabbiqMQ в случае в случае работоспособности только одной ноды. Под сомнением необходимость deploy StatefulSet RabbitMQ, при кластерной конфигурации. для чего сохранять состояние pod'а, если есть зеркалирование всех содержащихся в кластере данных.

Использована кластерная архитектура RabbitMQ.

вариант несколько кластеров RabbitMQ пример:3 ноды k8s, два pods на каждой ноде,6 pods объедены в два кластера, зеркалирование очереди между кластерами.

возможный тюннинг RabbitMQ:

ограничение длины очереди, использования Lazy queues(в качестве сохранения, возможно лучше использовать отдельный pods RabbitMQ) ограничение размера TTL или или max-lenght

минусы:

ресурсоемкость, стоимость владения.

плюсы:

отказоустойчивость, в меньшей степени маштабируемость.

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

Update

развернул стенд: для развертования в YandexCloud(TRIAL) использовал terraform 0.12.29, образ для развертывания взят из yandex repo. configs в репозитории.(в качстве среды развертывания можно использовать SaaS YandexCloud K8s)

documentation

to be continue... 02.08.2020