GNU/Linux >> Tutoriales Linux >  >> Fedora

Cómo instalar RabbitMQ en Fedora 35

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 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 Fedora 35 actualizado
  • Acceso a Internet
  • Acceso raíz o usuario con acceso Sudo

Tabla de contenido

  1. Actualización del sistema
  2. Agregar repositorio PackageCloud Yum
  3. Instalación de Erlang
  4. Instalando RabbitMQ
  5. Iniciando y habilitando el servicio del servidor rabbitmq
  6. Opcional:habilitar el panel de RabbitMQ
  7. 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 dnf -y update

2. Adición del repositorio PackageCloud Yum

El paquete RabbitMQ se distribuye a través de los repositorios de Yum en PackageCloud. Instale el repositorio de PackageCloud Yum usando este comando:

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash

Esta es la salida en mi servidor:

$ curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.rpm.sh | sudo bash
Detected operating system as fedora/34.
Checking for curl...
Detected curl...
Downloading repository file: https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/config_file.repo?os=fedora&dist=34&source=script
done.
Installing pygpgme to verify GPG signatures...
rabbitmq_erlang                                                                                                                                                       3.2 kB/s | 951  B     00:00
rabbitmq_erlang-source                                                                                                                                                4.5 kB/s | 951  B     00:00
rabbitmq_rabbitmq-server-source                                                                                                                                       1.4 kB/s | 819  B     00:00
rabbitmq_rabbitmq-server-source                                                                                                                                        23 kB/s | 3.9 kB     00:00
Importing GPG key 0x4D206F89:
 Userid     : "https://packagecloud.io/rabbitmq/rabbitmq-server (https://packagecloud.io/docs#gpg_signing) <[email protected]>"
 Fingerprint: 8C69 5B02 19AF DEB0 4A05 8ED8 F4E7 8920 4D20 6F89
 From       : https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
rabbitmq_rabbitmq-server-source                                                                                                                                       393  B/s | 296  B     00:00
No match for argument: pygpgme
Error: Unable to find a match: pygpgme

WARNING:
The pygpgme package could not be installed. This means GPG verification is not possible for any RPM installed on your system.
To fix this, add a repository with pygpgme. Usualy, the EPEL repository for your system will have this.
More information: https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F

Installing yum-utils...
rabbitmq_rabbitmq-server-source                                                                                                                                       4.6 kB/s | 951  B     00:00
Package dnf-utils-4.0.24-1.fc34.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!

WARNING:
The yum-utils package could not be installed. This means you may not be able to install source RPMs or use other yum features.

Generating yum cache for rabbitmq_rabbitmq-server...
Generating yum cache for rabbitmq_rabbitmq-server-source...

The repository is setup! You can now install packages.

3. Instalando Erlang

RabbitMQ requiere Erlang/OTP para funcionar. El proyecto rabbitmq/erlang-rpm proporciona un paquete Erlang RPM de 64 bits de dependencia cero que proporciona lo suficiente para ejecutar RabbitMQ . Obtenga lo último de los lanzamientos aquí https://github.com/rabbitmq/erlang-rpm/releases.

curl -LO -C - https://github.com/rabbitmq/erlang-rpm/releases/download/v24.1.4/erlang-24.1.4-1.el8.x86_64.rpm

Luego instale el archivo descargado

sudo dnf install ./erlang-24.1.4-1.el8.x86_64.rpm

Esta es la salida en mi servidor

$ sudo dnf install ./erlang-24.1.4-1.el8.x86_64.rpm
rabbitmq_rabbitmq-server                                             1.3 kB/s | 833  B     00:00
rabbitmq_rabbitmq-server-source                                      1.6 kB/s | 819  B     00:00
Dependencies resolved.
=====================================================================================================
 Package             Architecture        Version                     Repository                 Size
=====================================================================================================
Installing:
 erlang              x86_64              24.1.4-1.el8                @commandline               20 M

Transaction Summary
=====================================================================================================
Install  1 Package

Total size: 20 M
Installed size: 36 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                             1/1
  Installing       : erlang-24.1.4-1.el8.x86_64                                                  1/1
  Running scriptlet: erlang-24.1.4-1.el8.x86_64                                                  1/1
  Verifying        : erlang-24.1.4-1.el8.x86_64                                                  1/1

Installed:
  erlang-24.1.4-1.el8.x86_64

Complete!

4. Instalando Rabbitmq

Una vez que haya configurado el repositorio RabbitMQ, instale el servidor RabbitMQ usando los comandos a continuación.

sudo dnf install -y rabbitmq-server

Los detalles del paquete se pueden consultar mediante rpm comando con la opción  -qi .

$ rpm -qi rabbitmq-server
Name        : rabbitmq-server
Version     : 3.8.23
Release     : 1.fc34
Architecture: x86_64
Install Date: Fri 12 Nov 2021 07:14:47 PM UTC
Group       : Unspecified
Size        : 16503697
License     : MPLv1.1
Signature   : RSA/SHA256, Wed 20 Oct 2021 03:42:27 PM UTC, Key ID 1161ae6945719a39
Source RPM  : rabbitmq-server-3.8.23-1.fc34.src.rpm
Build Date  : Wed 20 Oct 2021 03:16:35 PM UTC
Build Host  : buildvm-x86-11.iad2.fedoraproject.org
Packager    : Fedora Project
Vendor      : Fedora Project
URL         : https://www.rabbitmq.com/
Bug URL     : https://bugz.fedoraproject.org/rabbitmq-server
Summary     : The RabbitMQ server
Description :
RabbitMQ is an implementation of AMQP, the emerging standard for high
performance enterprise messaging. The RabbitMQ server is a robust and
scalable implementation of an AMQP broker.

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 broker
     Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; disabled; vendor preset: disabled)
     Active: active (running) since Fri 2021-11-12 19:15:12 UTC; 2s ago
   Main PID: 67336 (beam.smp)
     Status: "Initialized"
      Tasks: 23 (limit: 4603)
     Memory: 93.1M
        CPU: 7.581s
     CGroup: /system.slice/rabbitmq-server.service
             ├─67336 /usr/lib64/erlang/erts-11.2.2.7/bin/beam.smp -W w -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -sbwt none -sbw>
             ├─67345 erl_child_setup 1024
             ├─67387 inet_gethost 4
             └─67388 inet_gethost 4

Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   TLS Library: OpenSSL - OpenSSL 1.1.1l  FIPS 24 Aug 2021
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Doc guides:  https://rabbitmq.com/documentation.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Support:     https://rabbitmq.com/contact.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Tutorials:   https://rabbitmq.com/getstarted.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Monitoring:  https://rabbitmq.com/monitoring.html
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Logs: /var/log/rabbitmq/[email protected]
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:         /var/log/rabbitmq/[email protected]_upgrade.log
Nov 12 19:15:08 cloudsrv.citizix.com rabbitmq-server[67336]:   Config file(s): /etc/rabbitmq/rabbitmq.conf
Nov 12 19:15:12 cloudsrv.citizix.com rabbitmq-server[67336]:   Starting broker... completed with 0 plugins.
Nov 12 19:15:12 cloudsrv.citizix.com systemd[1]: Started RabbitMQ broker.

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      128          0.0.0.0:15672      0.0.0.0:*

Si tiene un servicio Firewalld activo, permita los puertos 567215672

$ 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:

Para usar rabbitmqadmin herramienta de línea de comandos, cópielo en su $PATH.

sudo dnf install -y mlocate
sudo updatedb
sudo cp `locate rabbitmqadmin` /usr/local/bin/rabbitmqadmin
sudo chmod +x /usr/local/bin/rabbitmqadmin

Necesitas tener python instalado y configurado para ejecutar rabbitmqadmin. Use este comando para asegurarse de que python esté instalado:

sudo dnf install -y python3

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


Fedora
  1. Cómo instalar Vagrant en Fedora 34

  2. Cómo instalar Node.js en Fedora 35 / Fedora 34

  3. Cómo instalar Java 17 en Fedora 35

  4. Cómo instalar Notepad++ en Fedora 35

  5. Cómo instalar Wireshark en Fedora 35

Cómo instalar SQLite en Fedora 35

Cómo instalar LibreOffice en Fedora 35

Cómo instalar FFmpeg en Fedora 35

Cómo instalar Anaconda en Fedora 35

Cómo instalar Terraform en Fedora 35

Cómo instalar Go en Fedora 35