В статье описана установка RabbitMQ для ОС Ubuntu Linux 20.04. Вы также можете ознакомиться с кратким руководством в официальной документации RabbitMQ.
Для работы приложения ELMA365 необходимо установить RabbitMQ версии 3.9.15 или выше.
начало внимание
Для примера используется имя виртуального хоста elma365vhost, пользователь elma365user и пароль SecretPassword.
При настройке задайте эти данные согласно политике безопасности, принятой в вашей организации.
конец внимание
Установка состоит из трёх этапов:
Шаг 1: Установка RabbitMQ
- Установите необходимые пакеты:
sudo apt-get install curl gnupg apt-transport-https -y
- Импортируйте все необходимые ключи:
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null
curl -1sLf https://ppa1.novemberain.com/gpg.E495BB49CC4BBE5B.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg > /dev/null
curl -1sLf https://ppa1.novemberain.com/gpg.9F4587F226208342.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.9F4587F226208342.gpg > /dev/null
- Добавьте репозитории RabbitMQ:
sudo tee /etc/apt/sources.list.d/rabbitmq.list <<EOF
deb [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $(lsb_release -cs) main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-erlang/deb/ubuntu $(lsb_release -cs) main
deb [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $(lsb_release -cs) main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.novemberain.com/rabbitmq/rabbitmq-server/deb/ubuntu $(lsb_release -cs) main
EOF
- Обновите кэш пакетов:
sudo apt-get update -y
- Установите пакеты Erlang:
sudo apt-get install -y erlang-base erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key erlang-runtime-tools erlang-snmp erlang-ssl erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl
- Установите rabbitmq-server и его зависимости:
sudo apt-get install rabbitmq-server -y --fix-missing
- Запустите rabbitmq-server:
sudo systemctl enable --now rabbitmq-server
Шаг 2: Настройка RabbitMQ
Начало внимание
Для пароля разрешается применять следующие символы:
- Заглавные латинские буквы: от A до Z;
- Строчные латинские буквы: от a до z;
- Цифры от 0 до 9;
- Символы: -_.
Зарезервированные (недопустимые) символы:
! * ' ( ) ; : @ & = + $ , / ? % # [ ]
Конец внимание
Для настройки RabbitMQ нужно выполнить следующие действия:
- Включите необходимые плагины:
sudo rabbitmq-plugins enable \
rabbitmq_management
- Обязательно добавьте vhost и предоставьте пользователю доступ к нему:
sudo rabbitmqctl add_vhost elma365vhost
sudo rabbitmqctl add_user elma365user SecretPassword
sudo rabbitmqctl set_permissions -p elma365vhost elma365user ".*" ".*" ".*"
sudo rabbitmqctl set_user_tags elma365user administrator
Настройка включения TLS/SSL в RabbitMQ
Для включения поддержки TLS/SSL в RabbitMQ необходимо в файл конфигурации /etc/rabbitmq/rabbitmq.conf:
listeners.tcp = none
sudo systemctl restart rabbitmq-server Подробнее о настройке TLS/SSL в RabbitMQ читайте в статье «RabbitMQ TLS Support». |
Шаг 3: Подключение к RabbitMQ
Строка для подключения к RabbitMQ:
amqp://elma365user:SecretPassword@<rabbitmq-server-address>:5672/elma365vhost
Строка для подключения к RabbitMQ c TLS/SSL:
amqps://elma365user:SecretPassword@<rabbitmq-server-address>:5671/elma365vhost