RabbitMQ — это брокер сообщений, который реализует протокол AMQP, предназначенный для обмена сообщениями внутри информационной системы. Благодаря протоколу AMQP поддерживается гибкая динамическая маршрутизация, различные модели подписки и доставки сообщений.
Платформа RabbitMQ имеет открытый исходный код, написана на языке Erlang и является одним из самых популярных решений для реализации сервисно-ориентированных архитектур приложений.
Реализации клиентов для протокола AMQP есть практически во всех популярных языках программирования. Благодрая этому RabbitMQ не накладывает никаких ограничений на уже существующие или разрабатываемые проекты.
RabbitMQ от Бегета — настроенный и подготовленный к работе сервер RabbitMQ, включающий в себя веб-интерфейс для администрирования вашего брокера сообщений. RabbitMQ может быть использован как внутри приватной, так и внутри публичной сети без дополнительной настройки. Потребуется только установка.
Состав приложения
- Ubuntu 22.04
- Docker
- RabbitMQ 3.1.2
- Fail2ban
- Prometheus
- RabbitMQ exporter for Prometheus
- Certbot
Установка и использование RabbitMQ
При создании сервера для брокера сообщений RabbitMQ вам будет предложено указать следующие дополнительные параметры:
- Доменное имя, которое будет использоваться для подключения по внешней сети и доступа к веб-интерфейсу управления RabbitMQ. Вы можете как выбрать свой собственный домен, так и зарегистрировать новый. Помимо этого вы можете воспользоваться бесплатным доменом в зоне .beget.app. На указанный домен будет установлен бесплатный SSL-сертификат;
- Логин администратора. Будет использован для создания первого пользователя с правами администратора;
- Пароль администратора
- E-mail для установки SSL-сертификата;
После создания виртуального сервера начнется автоматическая установка RabbitMQ. Процесс обычно занимает 5-10 минут. После окончания установки RabbitMQ мы уведомим вас в панели управления и по электронной почте. После этого вы можете начать обмен сообщениями между вашими сервисами.
Использование RabbitMQ.
Для подключения к вашему серверу RabbitMQ из приложения вам нужно использовать:
- Для подключений с серверов виртуального хостинга или из внешней сети — указанное доменное имя или публичный IP-адрес вашего виртуального сервера. Подключение должно осуществляться на порт
5671
для защищенного подключения и5672
для plaintext-подключения; - С других виртуальных серверов: с помощью приватной сети (предварительно включите ее для всех участников), по IP-адресу на порт
5671
для защищенного подключения и5672
для plaintext-подключения;
SSL-сертификаты для защищенного подключения находятся в директории /opt/beget/rabbitmq/ssl
.
Вы можете использовать ваш сервер RabbitMQ без ограничений в соответствие с официальной документацией. Для проверки работы сервера удобно использовать примеры кода:
Веб-интерфейс для управления

Для перехода к веб-интерфейсу воспользуйтесь адресом https://mydomain.beget.app:15671
, где mydomain.beget.app
- указанный вами при установке домен.
Для аутентификации используйте логин и пароль администратора, который указывался вами при установке.
Реквизиты для доступа и адрес веб-интерфейса также можно посмотреть в вашей панели управления в окне информации об установленном ПО.
Частые вопросы по RabbitMQ
- Конфигурация контейнеров:
/opt/beget/rabbitmq/docker-compose.yml
- Данные RabbitMQ (база данных Mnesia):
/opt/beget/rabbitmq/data
- SSL-сертификаты для защищенного подключения:
/opt/beget/rabbitmq/ssl
Для перезапуска RabbitMQ выполните следующие действия:
- Подключитесь к вашему виртуальному серверу по ssh:
ssh root@my-ip
, гдеmy-ip
— IP-адрес вашего сервера - Перейдите в директорию с конфигурацией:
cd /opt/beget/rabbitmq
- Выполните команду
docker-compose restart