RabbitMQ es un software de intermediario de mensajes de código abierto que implementa el Protocolo avanzado de cola de mensajes (AMQP). RabbitMQ funciona al recibir mensajes de los editores (aplicaciones que los publican) y los enruta a los consumidores (aplicaciones que los procesan).
Contenido relacionado
- Cómo instalar Erlang en FreeBSD 13
- Cómo instalar RabbitMQ en FreeBSD 13
- Cómo instalar Erlang en Ubuntu 20.04
- Cómo instalar Erlang en OpenSUSE Leap 15.3
- Cómo instalar RabbitMQ en OpenSUSE Leap 15.3
- Cómo instalar Erlang en Fedora 35
- Cómo instalar RabbitMQ en Fedora 35
- Cómo instalar Erlang en Rocky Linux/Alma Linux/CentOS 8
- Cómo instalar y habilitar el repositorio EPEL en Rocky Linux/Centos 8
Requisitos
Para seguir, asegúrese de tener lo siguiente
- Un servidor/estación de trabajo Ubuntu actualizado
- Acceso a Internet
- Acceso raíz o usuario con acceso Sudo
Tabla de contenido
- Actualización del sistema
- Instalación de Erlang
- Instalando RabbitMQ
- Iniciando y habilitando el servicio del servidor rabbitmq
- Opcional:habilitar el panel de RabbitMQ
- Comandos básicos de administración de usuarios de RabbitMQ
1. Actualizando el sistema
Antes de continuar, asegúrese de que los paquetes del servidor estén actualizados. Usa este comando para lograrlo:
sudo apt update
sudo apt upgrade -y
2. Instalando Erlang
El paquete RabbitMQ se encuentra en los repositorios predeterminados de OpenSUSE. Instálalo usando este comando:
sudo apt install -y erlang
4. Instalando Rabbitmq
RabbitMQ se puede encontrar en los repositorios predeterminados de Ubuntu. Instalar usando este comando:
sudo apt install -y rabbitmq-server
Los detalles del paquete se pueden consultar mediante apt-cache
comando con la opción policy
.
$ apt-cache policy rabbitmq-server rabbitmq-server: Installed: 3.8.2-0ubuntu1.3 Candidate: 3.8.2-0ubuntu1.3 Version table: *** 3.8.2-0ubuntu1.3 500 500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages 500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages 100 /var/lib/dpkg/status 3.8.2-0ubuntu1 500 500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal/main amd64 Packages
5. Iniciando y habilitando el servicio del servidor rabbitmq
Iniciar el servicio
sudo systemctl start rabbitmq-server
Luego verifique el estado para confirmar que se está ejecutando
$ sudo systemctl status rabbitmq-server
● rabbitmq-server.service - RabbitMQ Messaging Server
Loaded: loaded (/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-11-16 20:56:25 EAT; 1min 36s ago
Main PID: 76008 (beam.smp)
Status: "Initialized"
Tasks: 87 (limit: 4631)
Memory: 68.8M
CGroup: /system.slice/rabbitmq-server.service
├─76004 /bin/sh /usr/sbin/rabbitmq-server
├─76008 /usr/lib/erlang/erts-10.6.4/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -- -root /usr/lib/erlang -progname erl -- -ho>
├─76247 erl_child_setup 65536
├─76270 inet_gethost 4
└─76271 inet_gethost 4
Nov 16 20:56:22 ubuntu-client.citizix.com systemd[1]: Starting RabbitMQ Messaging Server...
Nov 16 20:56:25 ubuntu-client.citizix.com systemd[1]: rabbitmq-server.service: Supervising process 76008 which is not our child. We'll most likely not notice when it exits.
Nov 16 20:56:25 ubuntu-client.citizix.com systemd[1]: Started RabbitMQ Messaging Server.
Ahora puede habilitarlo en el arranque
sudo systemctl enable rabbitmq-server
Puede obtener el estado de los elementos internos de rabbitmq:
$ sudo rabbitmqctl status
6. Opcional:habilitar el panel de RabbitMQ
Use la rabbitmq-plugins enable
Comando para habilitar el panel de administración:
$ sudo rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node [email protected]:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to [email protected]
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
started 3 plugins.
El servicio web está escuchando en el puerto 15672
$ ss -tunlp | grep 15672
tcp LISTEN 0 1024 0.0.0.0:15672 0.0.0.0:*
Acceda a él abriendo la URL http://[server IP]:15672
como http://127.0.0.1:15672
De forma predeterminada, el invitado el usuario existe y solo puede conectarse desde localhost
. Puede iniciar sesión con este usuario localmente con la contraseña "invitado"
Para poder iniciar sesión en la red, cree un usuario administrador como se muestra a continuación:
$ sudo rabbitmqctl add_user admin Secr3t Adding user "admin" ... Done. Don't forget to grant the user permissions to some virtual hosts! See 'rabbitmqctl help set_permissions' to learn more. $ sudo rabbitmqctl set_user_tags admin administrator Setting tags for user "admin" to [administrator] ...
Inicie sesión con este nombre de usuario de administrador y la contraseña asignada. Debería ver una interfaz similar a la siguiente:
7. Comandos básicos de gestión de usuarios de RabbitMQ
Eliminar usuario:
sudo rabbitmqctl delete_user user
Cambiar contraseña de usuario:
sudo rabbitmqctl change_password user strongpassword
Crear nuevo servidor virtual:
sudo rabbitmqctl add_vhost /my_vhost
Lista de servidores virtuales disponibles:
sudo rabbitmqctl list_vhosts
Eliminar un host virtual:
sudo rabbitmqctl delete_vhost /myvhost
Otorgar permisos de usuario para vhost:
sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*"
Lista de permisos de vhost:
sudo rabbitmqctl list_permissions -p /myvhost
Para enumerar los permisos de usuario:
rabbitmqctl list_user_permissions user
Eliminar permisos de usuario:
rabbitmqctl clear_permissions -p /myvhost user
Conclusión
Hemos logrado instalar Rabbitmq en esta guía.