ELMA365 On-Premises > Подготовка инфраструктуры > Базы данных > Подготовка внешних баз данных / RabbitMQ

RabbitMQ

В статье описана установка RabbitMQ для ОС Ubuntu Linux 20.04. Вы также можете ознакомиться с кратким руководством в официальной документации RabbitMQ.

Для работы приложения ELMA365 необходимо установить RabbitMQ версии 3.9.15–3.12. Установка RabbitMQ версии 4.0 не поддерживается в текущей версии ELMA365.

начало внимание

Для примера используется имя виртуального хоста elma365vhost, пользователь elma365user и пароль SecretPassword.

При настройке задайте эти данные согласно политике безопасности, принятой в вашей организации.

конец внимание

Установка состоит из трёх этапов:

  1. Установка RabbitMQ.
  2. Настройка RabbitMQ.
  3. Подключение к RabbitMQ.

Шаг 1: Установка RabbitMQ

  1. Установите необходимые пакеты:

sudo apt-get install curl gnupg apt-transport-https -y

  1. Импортируйте все необходимые ключи:

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 перечислены в официальной документации RabbitMQ.

  1. Добавьте репозитории 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

  1. Обновите кэш пакетов:

sudo apt-get update -y

  1. Установите пакеты 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

  1. Установите rabbitmq-server и его зависимости:

sudo apt-get install rabbitmq-server -y --fix-missing

  1. Запустите rabbitmq-server:

sudo systemctl enable --now rabbitmq-server

Шаг 2: Настройка RabbitMQ

Начало внимание

Для пароля разрешается применять следующие символы:

  • Заглавные латинские буквы: от A до Z;
  • Строчные латинские буквы: от a до z;
  • Цифры от 0 до 9;
  • Символы: -_.

Зарезервированные (недопустимые) символы:

! * ' ( ) ; : @ & = + $ , / ? % # [ ]

Конец внимание

Для настройки RabbitMQ нужно выполнить следующие действия:

  1. Включите необходимые плагины:

sudo rabbitmq-plugins enable \
rabbitmq_management

  1. Обязательно добавьте 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

Шаг 3: Подключение к RabbitMQ

Строка для подключения к RabbitMQ:
amqp://elma365user:SecretPassword@<rabbitmq-server-address>:5672/elma365vhost

Строка для подключения к RabbitMQ c TLS/SSL:

amqps://elma365user:SecretPassword@<rabbitmq-server-address>:5671/elma365vhost