GNU/Linux >> Tutoriels Linux >  >> Fedora

Comment installer RabbitMQ dans Fedora 35

RabbitMQ est un logiciel de courtage de messages open source qui implémente le protocole AMQP (Advanced Message Queuing Protocol). RabbitMQ fonctionne en recevant des messages des éditeurs (applications qui les publient) et les achemine vers les consommateurs (applications qui les traitent).

Contenu associé

  • Comment installer Erlang sur Fedora 35
  • Comment installer Erlang sur Rocky Linux/Alma Linux/CentOS 8
  • Comment installer et activer le référentiel EPEL sur Rocky Linux/Centos 8

Prérequis

Pour suivre, assurez-vous d'avoir les éléments suivants

  • Un serveur Fedora 35 mis à jour
  • Accès à Internet
  • Accès root ou utilisateur avec accès Sudo

Table des matières

  1. Mise à jour du système
  2. Ajout du référentiel PackageCloud Yum
  3. Installer Erlang
  4. Installer RabbitMQ
  5. Démarrage et activation du service rabbitmq-server
  6. Facultatif :Activer le tableau de bord RabbitMQ
  7. Commandes de base de gestion des utilisateurs RabbitMQ

1. Mise à jour du système

Avant de continuer, assurez-vous que les packages du serveur sont à jour. Utilisez cette commande pour y parvenir :

sudo dnf -y update

2. Ajout du référentiel PackageCloud Yum

Le package RabbitMQ est distribué via les référentiels Yum sur PackageCloud. Installez le référentiel PackageCloud Yum à l'aide de cette commande :

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

Voici la sortie sur mon serveur :

$ 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. Installer Erlang

RabbitMQ nécessite Erlang/OTP pour fonctionner. Le projet rabbitmq/erlang-rpm fournit un package Erlang RPM 64 bits sans dépendance qui fournit juste assez pour exécuter RabbitMQ . Obtenez les dernières versions des versions ici 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

Installez ensuite le fichier téléchargé

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

Ceci est la sortie sur mon serveur

$ 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. Installation de Rabbitmq

Une fois que vous avez configuré le référentiel RabbitMQ, installez RabbitMQ Server à l'aide des commandes ci-dessous.

sudo dnf install -y rabbitmq-server

Les détails du package peuvent être interrogés à l'aide de rpm commande avec l'option -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. Démarrage et activation du service rabbitmq-server

Démarrer le service

sudo systemctl start rabbitmq-server

Vérifiez ensuite l'état pour confirmer son exécution

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

Vous pouvez maintenant l'activer au démarrage

sudo systemctl enable rabbitmq-server

Vous pouvez obtenir l'état des composants internes de rabbitmq :

$ sudo rabbitmqctl status

6. Facultatif :activation du tableau de bord RabbitMQ

Utilisez le rabbitmq-plugins enable commande pour activer le tableau de bord de gestion :

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

Le service Web est en écoute sur le port 15672

$ ss -tunlp | grep 15672
tcp   LISTEN 0      128          0.0.0.0:15672      0.0.0.0:*

Si vous disposez d'un service Firewalld actif, autorisez les ports 5672 et 15672

$ ss -tunlp | grep 15672
tcp   LISTEN 0      1024         0.0.0.0:15672      0.0.0.0:*

Accédez-y en ouvrant l'URL http://[server IP]:15672 comme http://127.0.0.1:15672

Par défaut, l'invité l'utilisateur existe et ne peut se connecter qu'à partir de localhost . Vous pouvez vous connecter localement avec cet utilisateur avec le mot de passe "invité"

Pour pouvoir vous connecter au réseau, créez un utilisateur administrateur comme ci-dessous :

$ 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] ...

Connectez-vous avec ce nom d'utilisateur administrateur et le mot de passe attribué. Vous devriez voir une interface similaire à celle ci-dessous :

Pour utiliser rabbitmqadmin outil de ligne de commande, copiez-le dans votre $PATH.

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

Vous devez avoir python installé et configuré pour exécuter rabbitmqadmin. Utilisez cette commande pour vous assurer que Python est installé :

sudo dnf install -y python3

7. Commandes de base de gestion des utilisateurs RabbitMQ

Supprimer l'utilisateur :

sudo rabbitmqctl delete_user user

Modifier le mot de passe utilisateur :

sudo rabbitmqctl change_password user strongpassword

Créer un nouvel hôte virtuel :

sudo rabbitmqctl add_vhost /my_vhost

Lister les hôtes virtuels disponibles :

sudo rabbitmqctl list_vhosts

Supprimer un hôte virtuel :

sudo rabbitmqctl delete_vhost /myvhost

Accorder des autorisations utilisateur pour vhost :

sudo rabbitmqctl set_permissions -p /myvhost user ".*" ".*" ".*"

Lister les autorisations vhost :

sudo rabbitmqctl list_permissions -p /myvhost

Pour répertorier les autorisations des utilisateurs :

rabbitmqctl list_user_permissions user

Supprimer les autorisations utilisateur :

rabbitmqctl clear_permissions -p /myvhost user

Conclusion

Nous avons réussi à installer Rabbitmq dans ce guide


Fedora
  1. Comment installer Vagrant sur Fedora 34

  2. Comment installer Node.js sur Fedora 35 / Fedora 34

  3. Comment installer Java 17 dans Fedora 35

  4. Comment installer Notepad++ sur Fedora 35

  5. Comment installer Wireshark sur Fedora 35

Comment installer SQLite sur Fedora 35

Comment installer LibreOffice sur Fedora 35

Comment installer FFmpeg sur Fedora 35

Comment installer Anaconda sur Fedora 35

Comment installer Terraform sur Fedora 35

Comment installer Go sur Fedora 35