Высокая доступность для Restcomm

Я планирую настройку высокой доступности с автоматическим масштабированием для RestComm и некоторые общие сомнения относительно лучшего способа ее планирования.

Это то, что у меня есть сейчас:

  • Экземпляр Restcomm использует Amazon ECS (докер), поэтому мы можем очень легко запускать больше инстансов.
  • Все они совместно используют базу данных Amazon RDS.
  • Рабочая область является общей и сохраняется между экземплярами.

Чтобы перейти к следующему шагу, у меня есть несколько вопросов:

  1. Балансировщик нагрузки Amazon не подходит, потому что он не поддерживает UDP, поэтому я рассматриваю вариант Telestax LB, верно? Можно ли развернуть его с помощью докера?
  2. Переместите Restcomm MS за пределы образа Docker Restcomm, чтобы он мог масштабироваться независимо. Restcomm предоставляет переменные env для указания MS, поэтому у меня будет LB и несколько MS за ним. Верный?.
  3. Сколько оперативной памяти требуется экземпляру Restcomm и сколько одновременных сеансов поддерживает? Как мы можем узнать, сколько одновременных сеансов в реальном времени и программно?
  4. В RestComm реализован механизм «автоматического масштабирования»? Будем признательны за дополнительную информацию. Ubuntu Juju не вариант для меня.
  5. Мы рассматриваем Graylog2 или logstasch для управления журналами. Любое понимание здесь? Как установить агент в образы докеров?

Единственная документация, которую я нашел, это очень хороший документ: https://docs.google.com/document/d/13xlaioF065pDnQUoZgfIpi6Noh0qHfAZ7U6afcPd2Y0/edit

Есть ли другой документ?

Заранее спасибо!


person Antón R. Yuste    schedule 28.04.2016    source источник


Ответы (1)


Очень хорошие вопросы:

  1. Да. См. https://hub.docker.com/r/restcomm/load-balancer/

  2. У вас будет один LB (лучше иметь 2 с активным пассивом, чтобы избежать единой точки отказа) с X Restcomm за ним, говорящим с Z Media Servers за ними.

  3. Это зависит от сложности приложения сверху. Но вот некоторые цифры https://github.com/RestComm/Restcomm-Connect/wiki/Load-Testing-on-Docker

  4. Еще нет. вы можете использовать Mesos или Kubernetes потенциально, если juju не вариант. Сейчас у нас есть ряд открытых вопросов по kubernetes, но Mesos должен работать.

  5. Вы можете проверить https://hub.docker.com/r/restcomm/graylog-restcomm/ он содержит образ докера, предварительно загруженный всем необходимым для опроса сервера restcomm для сбора метрик.

person jeand    schedule 28.04.2016
comment
Очень хорошие ответы, спасибо @jeand. Я бы посмотрел на проблемы kubernetes, может быть, я смогу что-то внести в ближайшем будущем. Что касается балансировщика нагрузки, экземпляры restcomm имеют фиксированные IP-адреса или они динамически регистрируются в балансировщике нагрузки (что-то похожее на микросервисы)? - person Antón R. Yuste; 28.04.2016
comment
@AntónR.Yuste, позвольте мне лично сообщить вам о вкладах Kubernetes. экземпляры restcomm действительно динамически регистрируются балансировщиком нагрузки;) - person jeand; 28.04.2016
comment
Конечно, всегда рад общению с тобой, я уже в твоём гиттер-канале. Спасибо за ответы. Теперь мне гораздо яснее: ваш LB — это то, что вам нужно. - person Antón R. Yuste; 28.04.2016
comment
как вы добиваетесь автоматического масштабирования и где логика для увеличения/уменьшения количества экземпляров? Или вы делаете это вручную на основе сигналов тревоги Graylog2? - person Antón R. Yuste; 03.05.2016