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 ArchLinux
- Comment installer Erlang sur FreeBSD 13
- Comment installer RabbitMQ dans FreeBSD 13
- Comment installer Erlang sur Ubuntu 20.04
- Comment installer Erlang sur OpenSUSE Leap 15.3
- Comment installer RabbitMQ dans OpenSUSE Leap 15.3
- Comment installer Erlang sur Fedora 35
- Comment installer RabbitMQ dans 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
- Une machine Archlinux mise à jour
- Accès à Internet
- Accès root ou utilisateur avec accès Sudo
Table des matières
- Mise à jour du système
- Installer Erlang
- Installer RabbitMQ
- Démarrage et activation du service rabbitmq-server
- Facultatif :Activer le tableau de bord RabbitMQ
- 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 pacman -Syyu
2. Installer Erlang
Le package RabbitMQ se trouve dans les dépôts Archlinux par défaut. Installez-le à l'aide de cette commande :
sudo pacman -S erlang
4. Installation de Rabbitmq
RabbitMQ se trouve dans les dépôts Ubuntu par défaut. Installez à l'aide de cette commande :
sudo pacman -S rabbitmq
Les détails du colis peuvent être interrogés à l'aide de pacman
commande avec l'option -Qi
.
$ sudo pacman -Qi rabbitmq Name : rabbitmq Version : 3.8.22-1 Description : Highly reliable and performant enterprise messaging implementation of AMQP written in Erlang/OTP Architecture : any URL : https://rabbitmq.com Licenses : MPL Groups : None Provides : None Depends On : util-linux inetutils erlang-nox socat Optional Deps : rabbitmqadmin: CLI management tool logrotate: rotate log files Required By : None Optional For : None Conflicts With : None Replaces : None Installed Size : 17.29 MiB Packager : Levente Polyak <[email protected]> Build Date : Tue 07 Sep 2021 09:06:32 PM UTC Install Date : Sat 04 Dec 2021 03:57:11 PM UTC Install Reason : Explicitly installed Install Script : Yes Validated By : Signature
5. Démarrage et activation du service rabbitmq-server
Démarrer le service
sudo systemctl start rabbitmq
Vérifiez ensuite l'état pour confirmer son exécution
$ sudo systemctl status rabbitmq
● rabbitmq.service - RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq.service; disabled; vendor preset: disabled)
Active: active (running) since Sat 2021-12-04 15:58:46 UTC; 7s ago
Main PID: 14398 (beam.smp)
Status: "Initialized"
Tasks: 24 (limit: 4606)
Memory: 93.3M
CGroup: /system.slice/rabbitmq.service
├─14398 /usr/lib/erlang/erts-12.1.5/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 -sbwtdcpu >
├─14410 erl_child_setup 1024
├─14436 /usr/lib/erlang/erts-12.1.5/bin/epmd -daemon
├─14459 inet_gethost 4
└─14460 inet_gethost 4
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: TLS Library: OpenSSL - OpenSSL 1.1.1k 25 Mar 2021
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Doc guides: https://rabbitmq.com/documentation.html
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Support: https://rabbitmq.com/contact.html
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Tutorials: https://rabbitmq.com/getstarted.html
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Monitoring: https://rabbitmq.com/monitoring.html
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Logs: /var/log/rabbitmq/[email protected]
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: /var/log/rabbitmq/[email protected]_upgrade.log
Dec 04 15:58:42 ip-10-2-40-103 rabbitmq[14398]: Config file(s): (none)
Dec 04 15:58:45 ip-10-2-40-103 rabbitmq[14398]: Starting broker... completed with 0 plugins.
Dec 04 15:58:46 ip-10-2-40-103 systemd[1]: Started RabbitMQ broker.
Vous pouvez maintenant l'activer au démarrage
sudo systemctl enable rabbitmq
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
/usr/lib/erlang/erts-12.1.5/bin/beam.smp: /usr/lib/libncursesw.so.6: no version information available (required by /usr/lib/erlang/erts-12.1.5/bin/beam.smp)
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 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 :
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.