RabbitMQ, широко используемый брокер сообщений с открытым исходным кодом, завоевал значительную популярность благодаря своей надежности, масштабируемости и универсальности в работе с очередями сообщений. Он играет важную роль в распределенных системах, обеспечивая эффективное взаимодействие между приложениями и сервисами.
Предварительные условия
Прежде чем приступить к установке RabbitMQ на Debian 12, убедитесь, что вы соответствуете следующим требованиям:
- Сервер под управлением одной из следующих операционных систем: Debian 12 (Bookworm).
- Рекомендуется использовать свежую установку ОС, чтобы предотвратить возможные проблемы.
- SSH-доступ к серверу (или просто откройте Terminal, если вы работаете на рабочем столе).
- Активное подключение к Интернету. Интернет-соединение понадобится для загрузки необходимых пакетов и зависимостей.
- Учетная запись пользователя с привилегиями sudo для выполнения административных команд.
Установка RabbitMQ на Debian 12 Bookworm
Шаг 1. Обновление системы
Прежде чем приступить к процессу установки, убедитесь, что ваша система Debian 12 соответствует необходимым требованиям. Обновите системные пакеты до последних версий, выполнив команду:
sudo apt update
sudo apt upgrade
Затем установите необходимые зависимости, включая socat и logrotate:
sudo apt install socat logrotate
Шаг 2. Установка Erlang.
RabbitMQ опирается на Erlang, язык программирования и среду выполнения. Чтобы установить Erlang, добавьте репозиторий Erlang apt в вашу систему:
wget -O- https://packages.erlang-solutions.com/debian/erlang_solutions.asc | sudo apt-key add -
echo "deb https://packages.erlang-solutions.com/debian $(lsb_release -cs) contrib" | sudo tee /etc/apt/sources.list.d/erlang.list
Затем обновите индекс пакетов apt и установите последнюю поддерживаемую версию Erlang:
sudo apt update
sudo apt install erlang
Шаг 3. Установка RabbitMQ на Debian 12.
Теперь, когда все предварительные условия выполнены, можно приступать к установке сервера RabbitMQ. Начните с добавления репозитория RabbitMQ apt в вашу систему. Импортируйте ключ подписи RabbitMQ:
wget -O- https://github.com/rabbitmq/signing-keys/releases/download/3.0/rabbitmq-release-signing-key.asc | sudo apt-key add -
Добавьте репозиторий RabbitMQ apt в список источников:
echo "deb https://dl.bintray.com/rabbitmq-erlang/debian $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/bintray.rabbitmq.list
Еще раз обновите индекс пакетов apt:
sudo apt update
Теперь установите пакет rabbitmq-server:
sudo apt install rabbitmq-server
После завершения установки запустите службу RabbitMQ и включите ее автоматический запуск при загрузке системы:
sudo systemctl start rabbitmq-server
sudo systemctl enable rabbitmq-server
Чтобы убедиться, что RabbitMQ работает правильно, проверьте состояние службы:
sudo systemctl status rabbitmq-server
Вы также можете убедиться, что RabbitMQ прослушивает порт по умолчанию (5672), используя следующую команду:
ss -antpl | grep 5672
Шаг 4. Настройте RabbitMQ.
Конфигурационный файл RabbitMQ находится по адресу /etc/rabbitmq/rabbitmq.conf. Этот файл позволяет настраивать различные параметры, такие как слушатели, конфигурация TLS, ограничения ресурсов и многое другое.
Чтобы настроить слушателей, вы можете указать IP-адрес и порт, на котором RabbitMQ должен слушать. Например:
listeners.tcp.default = 5672
Если вы хотите включить безопасные соединения с использованием TLS, вам нужно настроить соответствующие параметры SSL и предоставить необходимые файлы сертификатов и ключей.
Настройка ограничений ресурсов, таких как максимальное количество открытых дескрипторов файлов и максимальное количество процессов, также может быть выполнена через конфигурационный файл.
Кроме того, вы можете установить ограничения на память и дисковое пространство, чтобы предотвратить чрезмерное потребление ресурсов RabbitMQ. Например:
vm_memory_high_watermark.relative = 0.7
disk_free_limit.relative = 1.0
Обязательно перезапустите службу RabbitMQ после внесения любых изменений в конфигурационный файл:
sudo systemctl restart rabbitmq-server
Журналы RabbitMQ можно просмотреть, обратившись к файлам журналов, расположенным в каталоге /var/log/rabbitmq/.
Чтобы включить плагины, используйте команду rabbitmq-plugins, за которой следует имя плагина. Например:
sudo rabbitmq-plugins enable rabbitmq_management
Шаг 5. Создайте пользователя-администратора.
Создание пользователя-администратора необходимо для управления RabbitMQ через веб-интерфейс управления и выполнения административных задач. Чтобы добавить нового пользователя-администратора, используйте команду rabbitmqctl:
sudo rabbitmqctl add_user admin password
Замените «admin» на желаемое имя пользователя, а «password» — на надежный пароль. Затем отметьте пользователя как администратора:
sudo rabbitmqctl set_user_tags admin administrator
Наконец, установите соответствующие разрешения для пользователя admin:
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
Это дает пользователю admin полные права на все виртуальные хосты и ресурсы.
Шаг 6. Включите веб-интерфейс RabbitMQ Management Web UI.
Веб-интерфейс RabbitMQ Management предоставляет удобный интерфейс для мониторинга и управления RabbitMQ. Чтобы включить плагин rabbitmq_management, выполните команду:
sudo rabbitmq-plugins enable rabbitmq_management
После включения вы можете получить доступ к пользовательскому интерфейсу управления, перейдя по адресу http://your-server-ip:15672/ в веб-браузере. Войдите в систему, используя учетные данные пользователя admin, созданные ранее.
Поздравляем! Вы успешно установили RabbitMQ. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт RabbitMQ.