RabbitMQ est un logiciel de courtage de messages open source basé sur le protocole AMQP. Dans ce guide, vous verrez comment installer le serveur RabbitMQ sur CentOS 8.
[TOC]
Qu'est-ce que RabbitMQ?
RabbitMQ est un logiciel de courtage de messages open source (parfois appelé middleware orienté message). Il implémentait à l'origine le protocole AMQP (Advanced Message Queuing Protocol) et a été étendu via une architecture de plug-in pour prendre en charge le protocole STOMP (Streaming Text-Oriented Message Protocol). ). , MQ Telemetry Transmission (MQTT) et autres protocoles.
Le programme serveur RabbitMQ est écrit en langage de programmation Erlang et construit sur le framework Open Telecom Platform pour le clustering et le basculement. La bibliothèque cliente qui interagit avec l'agent est applicable à tous les principaux langages de programmation, y compris Java, Erlang et .NET Framework. (Source: Wikipédia )
Le code source de RabbitMQ est disponible sur le référentiel RabbitMQ GitHub et distribué sous la licence publique Mozilla .
Spécifications environnementales:
- Processeur : 4C
- Mémoire : 8 Go
- Espace de stockage : 50 Go
- Système d'exploitation : CentOS 8.2
- Nom d'hôte : rabbitmq.lianglab.cn
- Adresse IP : 192.168.6.176/24
Caractéristiques de RabbitMQ:
- fiabilité
- Routage flexible
- Clustering
- Modèle commun
- File d'attente hautement disponible
- Multi-protocole
- Interface de gestion
- Piste
- Système plug-in
- Grande communauté
- Soutien aux entreprises
Vous pouvez trouver la fonction RabbitMQ complète sur son site officiel .
Étape 1: Mettez à jour votre serveur Linux
Utilisez un client SSH pour vous connecter au serveur rabbitmq.lianglab.cn en tant qu'utilisateur root de Linux .
Utilisez la commande dnf pour mettre à jour le progiciel du serveur Linux vers la dernière version stable.
[root@centos8 ~]# hostnamectl set-hostname rabbitmq.lianglab.cn
[root@rabbitmq ~]# chattr -ai /boot/grub2/grub.cfg
[root@rabbitmq ~]# dnf update -y
-----------------------------------------省略----------------------------------------------------------
(104/106): spice-server-0.14.2-1.el8_2.1.x86_64.rpm 12 MB/s | 404 kB 00:00
(105/106): unbound-libs-1.7.3-11.el8_2.x86_64.rpm 14 MB/s | 499 kB 00:00
(106/106): firefox-78.4.0-1.el8_2.x86_64.rpm 50 MB/s | 105 MB 00:02
-----------------------------------------省略----------------------------------------------------------
Installed:
kernel-4.18.0-193.28.1.el8_2.x86_64 kernel-core-4.18.0-193.28.1.el8_2.x86_64
kernel-modules-4.18.0-193.28.1.el8_2.x86_64
Complete!
[root@rabbitmq ~]#
Vérifiez le système d'exploitation Linux et la version du noyau de la machine virtuelle utilisée ici.
[root@rabbitmq ~]# cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)
[root@rabbitmq ~]# uname -a
Linux rabbitmq.lianglab.cn 4.18.0-193.el8.x86_64 #1 SMP Fri May 8 10:59:10 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
[root@rabbitmq ~]# reboot
Étape 2: Installez le référentiel EPEL Yum sur un serveur Linux
Certains packages requis par le serveur RabbitMQ sont disponibles dans le référentiel yum EPEL (Extra Packages for Enterprise Linux) .
Par conséquent, avant d'installer RabbitMQ, vous devez activer / installer le référentiel EPEL yum sur le serveur Linux.
[root@rabbitmq yum.repos.d]# dnf install -y epel-release
CentOS-8 - Base - mirrors.tongdun.cn 3.8 MB/s | 3.9 kB 00:00
CentOS-8 - Extras - mirrors.tongdun.cn 1.5 MB/s | 1.5 kB 00:00
CentOS-8 - AppStream - mirrors.tongdun.cn 4.0 MB/s | 4.3 kB 00:00
Dependencies resolved.
========================================================================================================
Package Architecture Version Repository Size
========================================================================================================
Installing:
epel-release noarch 8-8.el8 extras 23 k
Transaction Summary
========================================================================================================
Install 1 Package
Total download size: 23 k
Installed size: 32 k
Downloading Packages:
epel-release-8-8.el8.noarch.rpm 1.6 MB/s | 23 kB 00:00
--------------------------------------------------------------------------------------------------------
Total 1.5 MB/s | 23 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : epel-release-8-8.el8.noarch 1/1
Running scriptlet: epel-release-8-8.el8.noarch 1/1
Verifying : epel-release-8-8.el8.noarch 1/1
Installed products updated.
Installed:
epel-release-8-8.el8.noarch
Complete!
Étape 3: Installez le référentiel Yum officiel de RabbitMQ sur le serveur Linux
Pour installer la dernière version du serveur RabbitMQ, vous pouvez compiler le code source de votre distribution Linux préférée
Vous pouvez également ajouter le référentiel yum officiel RabbitMQ pour installer le logiciel RabbitMQ à partir de packages RPM précompilés.
Exécutez la commande suivante pour installer le référentiel RabbitMQ yum sur le serveur Linux.
[root@rabbitmq tmp]# dnf -y install centos-release-rabbitmq-38
Last metadata expiration check: 0:03:30 ago on Mon 28 Dec 2020 10:56:30 PM CST.
Dependencies resolved.
========================================================================================================================================================================================
Package Architecture Version Repository Size
========================================================================================================================================================================================
Installing:
centos-release-rabbitmq-38 noarch 1-2.el8 extras 8.3 k
Installing dependencies:
centos-release-messaging noarch 1-2.el8 extras 9.4 k
Transaction Summary
========================================================================================================================================================================================
Install 2 Packages
Total download size: 18 k
Installed size: 2.7 k
Downloading Packages:
(1/2): centos-release-messaging-1-2.el8.noarch.rpm 602 kB/s | 9.4 kB 00:00
(2/2): centos-release-rabbitmq-38-1-2.el8.noarch.rpm 526 kB/s | 8.3 kB 00:00
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 1.0 MB/s | 18 kB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : centos-release-messaging-1-2.el8.noarch 1/2
Installing : centos-release-rabbitmq-38-1-2.el8.noarch 2/2
Verifying : centos-release-messaging-1-2.el8.noarch 1/2
Verifying : centos-release-rabbitmq-38-1-2.el8.noarch 2/2
Installed products updated.
Installed:
centos-release-messaging-1-2.el8.noarch centos-release-rabbitmq-38-1-2.el8.noarch
Complete!
[root@rabbitmq yum.repos.d]# ll /etc/yum.repos.d/CentOS-Messaging-rabbitmq.repo
-rw-r--r--. 1 root root 957 Apr 14 2020 /etc/yum.repos.d/CentOS-Messaging-rabbitmq.repo
[root@rabbitmq tmp]# cd /etc/yum.repos.d/
[root@rabbitmq yum.repos.d]# ls
CentOS-Base.repo CentOS-Messaging-rabbitmq.repo epel.repo
Créez un cache pour le référentiel yum nouvellement installé.
[root@rabbitmq yum.repos.d]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn 1.6 MB/s | 3.9 kB 00:00
CentOS-8 - Extras - mirrors.tongdun.cn 898 kB/s | 1.5 kB 00:00
CentOS-8 - AppStream - mirrors.tongdun.cn 2.1 MB/s | 4.3 kB 00:00
CentOS-8 - RabbitMQ 38 677 B/s | 3.0 kB 00:04
Extra Packages for Enterprise Linux 8 - x86_64 2.2 MB/s | 4.7 kB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 - Debug 1.6 MB/s | 3.0 kB 00:00
Extra Packages for Enterprise Linux 8 - x86_64 - Source 2.0 MB/s | 3.5 kB 00:00
Metadata cache created.
Étape 4: Installez le serveur RabbitMQ sur CentOS 8
Vous pouvez maintenant installer facilement le serveur RabbitMQ à l' aide de la commande dnf . Étant donné que vous avez configuré le référentiel EPEL yum sur le serveur Linux, toutes les dépendances seront résolues automatiquement.
[root@rabbitmq yum.repos.d]# ls
CentOS-Base.repo CentOS-Messaging-rabbitmq.repo epel.repo
[root@rabbitmq yum.repos.d]# dnf install -y rabbitmq-server
Last metadata expiration check: 0:00:21 ago on Mon 28 Dec 2020 11:06:54 PM CST.
Dependencies resolved.
========================================================================================================
Package Architecture Version Repository Size
========================================================================================================
Installing:
rabbitmq-server x86_64 3.8.3-1.el8 centos-rabbitmq-38 11 M
Installing dependencies:
SDL x86_64 1.2.15-37.el8 AppStream 217 k
erlang-asn1 x86_64 22.2.8-1.el8 centos-rabbitmq-38 745 k
erlang-common_test x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.0 M
erlang-compiler x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.4 M
erlang-crypto x86_64 22.2.8-1.el8 centos-rabbitmq-38 169 k
erlang-cuttlefish noarch 2.0.11-10.el8 centos-rabbitmq-38 154 k
erlang-debugger x86_64 22.2.8-1.el8 centos-rabbitmq-38 406 k
erlang-eldap x86_64 22.2.8-1.el8 centos-rabbitmq-38 125 k
erlang-erts x86_64 22.2.8-1.el8 centos-rabbitmq-38 2.2 M
erlang-et x86_64 22.2.8-1.el8 centos-rabbitmq-38 170 k
erlang-eunit x86_64 22.2.8-1.el8 centos-rabbitmq-38 165 k
erlang-getopt noarch 1.0.1-8.el8 centos-rabbitmq-38 42 k
erlang-goldrush noarch 0.2.0-6.el8 centos-rabbitmq-38 69 k
erlang-hipe x86_64 22.2.8-1.el8 centos-rabbitmq-38 2.8 M
erlang-inets x86_64 22.2.8-1.el8 centos-rabbitmq-38 616 k
erlang-kernel x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.2 M
erlang-lager noarch 3.8.0-2.el8 centos-rabbitmq-38 232 k
erlang-mnesia x86_64 22.2.8-1.el8 centos-rabbitmq-38 749 k
erlang-mustache noarch 0.1.1-14.el8 centos-rabbitmq-38 27 k
erlang-observer x86_64 22.2.8-1.el8 centos-rabbitmq-38 882 k
erlang-os_mon x86_64 22.2.8-1.el8 centos-rabbitmq-38 108 k
erlang-public_key x86_64 22.2.8-1.el8 centos-rabbitmq-38 619 k
erlang-runtime_tools x86_64 22.2.8-1.el8 centos-rabbitmq-38 211 k
erlang-sasl x86_64 22.2.8-1.el8 centos-rabbitmq-38 269 k
erlang-sd_notify x86_64 1.0-14.1.el8 centos-rabbitmq-38 17 k
erlang-snmp x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.6 M
erlang-ssh x86_64 22.2.8-1.el8 centos-rabbitmq-38 677 k
erlang-ssl x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.1 M
erlang-stdlib x86_64 22.2.8-1.el8 centos-rabbitmq-38 2.7 M
erlang-syntax_tools x86_64 22.2.8-1.el8 centos-rabbitmq-38 372 k
erlang-tools x86_64 22.2.8-1.el8 centos-rabbitmq-38 598 k
erlang-wx x86_64 22.2.8-1.el8 centos-rabbitmq-38 2.9 M
erlang-xmerl x86_64 22.2.8-1.el8 centos-rabbitmq-38 1.1 M
lksctp-tools x86_64 1.0.18-3.el8 base 100 k
mesa-libGLU x86_64 9.0.0-15.el8 AppStream 185 k
wxBase3 x86_64 3.0.4-11.el8 epel 1.1 M
wxGTK3 x86_64 3.0.4-11.el8 epel 4.8 M
wxGTK3-gl x86_64 3.0.4-11.el8 epel 45 k
wxGTK3-i18n noarch 3.0.4-11.el8 epel 510 k
Transaction Summary
========================================================================================================
Install 40 Packages
Total download size: 44 M
Installed size: 87 M
Downloading Packages:
(1/40): lksctp-tools-1.0.18-3.el8.x86_64.rpm 17 MB/s | 100 kB 00:00
(2/40): SDL-1.2.15-37.el8.x86_64.rpm 9.9 MB/s | 217 kB 00:00
(3/40): mesa-libGLU-9.0.0-15.el8.x86_64.rpm 6.3 MB/s | 185 kB 00:00
(4/40): erlang-asn1-22.2.8-1.el8.x86_64.rpm 3.0 MB/s | 745 kB 00:00
(5/40): erlang-crypto-22.2.8-1.el8.x86_64.rpm 3.7 MB/s | 169 kB 00:00
(6/40): erlang-cuttlefish-2.0.11-10.el8.noarch.rpm 3.5 MB/s | 154 kB 00:00
(7/40): erlang-common_test-22.2.8-1.el8.x86_64.rpm 3.1 MB/s | 1.0 MB 00:00
(8/40): erlang-compiler-22.2.8-1.el8.x86_64.rpm 4.0 MB/s | 1.4 MB 00:00
(9/40): erlang-debugger-22.2.8-1.el8.x86_64.rpm 7.5 MB/s | 406 kB 00:00
(10/40): erlang-eldap-22.2.8-1.el8.x86_64.rpm 2.9 MB/s | 125 kB 00:00
(11/40): erlang-et-22.2.8-1.el8.x86_64.rpm 3.8 MB/s | 170 kB 00:00
(12/40): erlang-eunit-22.2.8-1.el8.x86_64.rpm 3.8 MB/s | 165 kB 00:00
(13/40): erlang-erts-22.2.8-1.el8.x86_64.rpm 20 MB/s | 2.2 MB 00:00
(14/40): erlang-getopt-1.0.1-8.el8.noarch.rpm 926 kB/s | 42 kB 00:00
(15/40): erlang-goldrush-0.2.0-6.el8.noarch.rpm 1.6 MB/s | 69 kB 00:00
(16/40): erlang-inets-22.2.8-1.el8.x86_64.rpm 6.7 MB/s | 616 kB 00:00
(17/40): erlang-kernel-22.2.8-1.el8.x86_64.rpm 12 MB/s | 1.2 MB 00:00
(18/40): erlang-hipe-22.2.8-1.el8.x86_64.rpm 19 MB/s | 2.8 MB 00:00
(19/40): erlang-lager-3.8.0-2.el8.noarch.rpm 4.0 MB/s | 232 kB 00:00
(20/40): erlang-mnesia-22.2.8-1.el8.x86_64.rpm 14 MB/s | 749 kB 00:00
(21/40): erlang-mustache-0.1.1-14.el8.noarch.rpm 652 kB/s | 27 kB 00:00
(22/40): erlang-os_mon-22.2.8-1.el8.x86_64.rpm 708 kB/s | 108 kB 00:00
(23/40): erlang-observer-22.2.8-1.el8.x86_64.rpm 4.6 MB/s | 882 kB 00:00
(24/40): erlang-runtime_tools-22.2.8-1.el8.x86_64.rpm 4.9 MB/s | 211 kB 00:00
(25/40): erlang-public_key-22.2.8-1.el8.x86_64.rpm 3.5 MB/s | 619 kB 00:00
(26/40): erlang-sasl-22.2.8-1.el8.x86_64.rpm 6.2 MB/s | 269 kB 00:00
(27/40): erlang-sd_notify-1.0-14.1.el8.x86_64.rpm 417 kB/s | 17 kB 00:00
(28/40): erlang-ssh-22.2.8-1.el8.x86_64.rpm 3.3 MB/s | 677 kB 00:00
(29/40): erlang-snmp-22.2.8-1.el8.x86_64.rpm 6.5 MB/s | 1.6 MB 00:00
(30/40): erlang-stdlib-22.2.8-1.el8.x86_64.rpm 8.2 MB/s | 2.7 MB 00:00
(31/40): erlang-ssl-22.2.8-1.el8.x86_64.rpm 2.1 MB/s | 1.1 MB 00:00
(32/40): erlang-syntax_tools-22.2.8-1.el8.x86_64.rpm 994 kB/s | 372 kB 00:00
(33/40): erlang-tools-22.2.8-1.el8.x86_64.rpm 5.4 MB/s | 598 kB 00:00
(34/40): erlang-wx-22.2.8-1.el8.x86_64.rpm 5.5 MB/s | 2.9 MB 00:00
(35/40): erlang-xmerl-22.2.8-1.el8.x86_64.rpm 2.3 MB/s | 1.1 MB 00:00
(36/40): wxBase3-3.0.4-11.el8.x86_64.rpm 26 MB/s | 1.1 MB 00:00
(37/40): wxGTK3-gl-3.0.4-11.el8.x86_64.rpm 5.9 MB/s | 45 kB 00:00
(38/40): wxGTK3-i18n-3.0.4-11.el8.noarch.rpm 19 MB/s | 510 kB 00:00
(39/40): wxGTK3-3.0.4-11.el8.x86_64.rpm 38 MB/s | 4.8 MB 00:00
(40/40): rabbitmq-server-3.8.3-1.el8.x86_64.rpm 8.3 MB/s | 11 MB 00:01
--------------------------------------------------------------------------------------------------------
Total 9.9 MB/s | 44 MB 00:04
warning: /var/cache/dnf/centos-rabbitmq-38-fc01413bca87d629/packages/erlang-asn1-22.2.8-1.el8.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID e16e0d12: NOKEY
CentOS-8 - RabbitMQ 38 1.7 MB/s | 1.8 kB 00:00
Importing GPG key 0xE16E0D12:
Userid : "CentOS Messaging SIG (https://wiki.centos.org/SpecialInterestGroup/Messaging) <[email protected]>"
Fingerprint: A926 5AE9 1718 68B8 2F91 5550 8301 4EBB E16E 0D12
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Messaging
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : wxBase3-3.0.4-11.el8.x86_64 1/40
Installing : wxGTK3-i18n-3.0.4-11.el8.noarch 2/40
Installing : mesa-libGLU-9.0.0-15.el8.x86_64 3/40
Installing : SDL-1.2.15-37.el8.x86_64 4/40
Running scriptlet: SDL-1.2.15-37.el8.x86_64 4/40
Installing : wxGTK3-3.0.4-11.el8.x86_64 5/40
Installing : wxGTK3-gl-3.0.4-11.el8.x86_64 6/40
Installing : lksctp-tools-1.0.18-3.el8.x86_64 7/40
Running scriptlet: lksctp-tools-1.0.18-3.el8.x86_64 7/40
Installing : erlang-crypto-22.2.8-1.el8.x86_64 8/40
Installing : erlang-kernel-22.2.8-1.el8.x86_64 9/40
Installing : erlang-stdlib-22.2.8-1.el8.x86_64 10/40
Running scriptlet: erlang-erts-22.2.8-1.el8.x86_64 11/40
Installing : erlang-erts-22.2.8-1.el8.x86_64 11/40
Installing : erlang-compiler-22.2.8-1.el8.x86_64 12/40
Installing : erlang-syntax_tools-22.2.8-1.el8.x86_64 13/40
Installing : erlang-hipe-22.2.8-1.el8.x86_64 14/40
Installing : erlang-mnesia-22.2.8-1.el8.x86_64 15/40
Installing : erlang-runtime_tools-22.2.8-1.el8.x86_64 16/40
Installing : erlang-wx-22.2.8-1.el8.x86_64 17/40
Installing : erlang-snmp-22.2.8-1.el8.x86_64 18/40
Installing : erlang-asn1-22.2.8-1.el8.x86_64 19/40
Installing : erlang-public_key-22.2.8-1.el8.x86_64 20/40
Installing : erlang-inets-22.2.8-1.el8.x86_64 21/40
Installing : erlang-ssl-22.2.8-1.el8.x86_64 22/40
Installing : erlang-tools-22.2.8-1.el8.x86_64 23/40
Installing : erlang-sasl-22.2.8-1.el8.x86_64 24/40
Installing : erlang-xmerl-22.2.8-1.el8.x86_64 25/40
Installing : erlang-os_mon-22.2.8-1.el8.x86_64 26/40
Installing : erlang-eldap-22.2.8-1.el8.x86_64 27/40
Installing : erlang-ssh-22.2.8-1.el8.x86_64 28/40
Installing : erlang-debugger-22.2.8-1.el8.x86_64 29/40
Installing : erlang-et-22.2.8-1.el8.x86_64 30/40
Installing : erlang-observer-22.2.8-1.el8.x86_64 31/40
Installing : erlang-common_test-22.2.8-1.el8.x86_64 32/40
Installing : erlang-goldrush-0.2.0-6.el8.noarch 33/40
Installing : erlang-lager-3.8.0-2.el8.noarch 34/40
Installing : erlang-eunit-22.2.8-1.el8.x86_64 35/40
Installing : erlang-getopt-1.0.1-8.el8.noarch 36/40
Installing : erlang-mustache-0.1.1-14.el8.noarch 37/40
Installing : erlang-cuttlefish-2.0.11-10.el8.noarch 38/40
Installing : erlang-sd_notify-1.0-14.1.el8.x86_64 39/40
Running scriptlet: rabbitmq-server-3.8.3-1.el8.x86_64 40/40
Installing : rabbitmq-server-3.8.3-1.el8.x86_64 40/40
Running scriptlet: rabbitmq-server-3.8.3-1.el8.x86_64 40/40
Verifying : lksctp-tools-1.0.18-3.el8.x86_64 1/40
Verifying : SDL-1.2.15-37.el8.x86_64 2/40
Verifying : mesa-libGLU-9.0.0-15.el8.x86_64 3/40
Verifying : erlang-asn1-22.2.8-1.el8.x86_64 4/40
Verifying : erlang-common_test-22.2.8-1.el8.x86_64 5/40
Verifying : erlang-compiler-22.2.8-1.el8.x86_64 6/40
Verifying : erlang-crypto-22.2.8-1.el8.x86_64 7/40
Verifying : erlang-cuttlefish-2.0.11-10.el8.noarch 8/40
Verifying : erlang-debugger-22.2.8-1.el8.x86_64 9/40
Verifying : erlang-eldap-22.2.8-1.el8.x86_64 10/40
Verifying : erlang-erts-22.2.8-1.el8.x86_64 11/40
Verifying : erlang-et-22.2.8-1.el8.x86_64 12/40
Verifying : erlang-eunit-22.2.8-1.el8.x86_64 13/40
Verifying : erlang-getopt-1.0.1-8.el8.noarch 14/40
Verifying : erlang-goldrush-0.2.0-6.el8.noarch 15/40
Verifying : erlang-hipe-22.2.8-1.el8.x86_64 16/40
Verifying : erlang-inets-22.2.8-1.el8.x86_64 17/40
Verifying : erlang-kernel-22.2.8-1.el8.x86_64 18/40
Verifying : erlang-lager-3.8.0-2.el8.noarch 19/40
Verifying : erlang-mnesia-22.2.8-1.el8.x86_64 20/40
Verifying : erlang-mustache-0.1.1-14.el8.noarch 21/40
Verifying : erlang-observer-22.2.8-1.el8.x86_64 22/40
Verifying : erlang-os_mon-22.2.8-1.el8.x86_64 23/40
Verifying : erlang-public_key-22.2.8-1.el8.x86_64 24/40
Verifying : erlang-runtime_tools-22.2.8-1.el8.x86_64 25/40
Verifying : erlang-sasl-22.2.8-1.el8.x86_64 26/40
Verifying : erlang-sd_notify-1.0-14.1.el8.x86_64 27/40
Verifying : erlang-snmp-22.2.8-1.el8.x86_64 28/40
Verifying : erlang-ssh-22.2.8-1.el8.x86_64 29/40
Verifying : erlang-ssl-22.2.8-1.el8.x86_64 30/40
Verifying : erlang-stdlib-22.2.8-1.el8.x86_64 31/40
Verifying : erlang-syntax_tools-22.2.8-1.el8.x86_64 32/40
Verifying : erlang-tools-22.2.8-1.el8.x86_64 33/40
Verifying : erlang-wx-22.2.8-1.el8.x86_64 34/40
Verifying : erlang-xmerl-22.2.8-1.el8.x86_64 35/40
Verifying : rabbitmq-server-3.8.3-1.el8.x86_64 36/40
Verifying : wxBase3-3.0.4-11.el8.x86_64 37/40
Verifying : wxGTK3-3.0.4-11.el8.x86_64 38/40
Verifying : wxGTK3-gl-3.0.4-11.el8.x86_64 39/40
Verifying : wxGTK3-i18n-3.0.4-11.el8.noarch 40/40
Installed products updated.
Installed:
SDL-1.2.15-37.el8.x86_64 erlang-asn1-22.2.8-1.el8.x86_64
erlang-common_test-22.2.8-1.el8.x86_64 erlang-compiler-22.2.8-1.el8.x86_64
erlang-crypto-22.2.8-1.el8.x86_64 erlang-cuttlefish-2.0.11-10.el8.noarch
erlang-debugger-22.2.8-1.el8.x86_64 erlang-eldap-22.2.8-1.el8.x86_64
erlang-erts-22.2.8-1.el8.x86_64 erlang-et-22.2.8-1.el8.x86_64
erlang-eunit-22.2.8-1.el8.x86_64 erlang-getopt-1.0.1-8.el8.noarch
erlang-goldrush-0.2.0-6.el8.noarch erlang-hipe-22.2.8-1.el8.x86_64
erlang-inets-22.2.8-1.el8.x86_64 erlang-kernel-22.2.8-1.el8.x86_64
erlang-lager-3.8.0-2.el8.noarch erlang-mnesia-22.2.8-1.el8.x86_64
erlang-mustache-0.1.1-14.el8.noarch erlang-observer-22.2.8-1.el8.x86_64
erlang-os_mon-22.2.8-1.el8.x86_64 erlang-public_key-22.2.8-1.el8.x86_64
erlang-runtime_tools-22.2.8-1.el8.x86_64 erlang-sasl-22.2.8-1.el8.x86_64
erlang-sd_notify-1.0-14.1.el8.x86_64 erlang-snmp-22.2.8-1.el8.x86_64
erlang-ssh-22.2.8-1.el8.x86_64 erlang-ssl-22.2.8-1.el8.x86_64
erlang-stdlib-22.2.8-1.el8.x86_64 erlang-syntax_tools-22.2.8-1.el8.x86_64
erlang-tools-22.2.8-1.el8.x86_64 erlang-wx-22.2.8-1.el8.x86_64
erlang-xmerl-22.2.8-1.el8.x86_64 lksctp-tools-1.0.18-3.el8.x86_64
mesa-libGLU-9.0.0-15.el8.x86_64 rabbitmq-server-3.8.3-1.el8.x86_64
wxBase3-3.0.4-11.el8.x86_64 wxGTK3-3.0.4-11.el8.x86_64
wxGTK3-gl-3.0.4-11.el8.x86_64 wxGTK3-i18n-3.0.4-11.el8.noarch
Complete!
[1] Activez et démarrez le service RabbitMQ, comme illustré ci-dessous.
[root@rabbitmq ~]# systemctl enable --now rabbitmq-server.service
Created symlink /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service → /usr/lib/systemd/system/rabbitmq-server.service.
[2] Afficher l'état du service RabbitMQ
[root@rabbitmq ~]# systemctl status rabbitmq-server.service
● rabbitmq-server.service - RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled)
Active: active (running) since Mon 2020-12-28 23:08:35 CST; 15s ago
Main PID: 8144 (beam.smp)
Status: "Initialized"
Tasks: 91 (limit: 49641)
Memory: 81.7M
CGroup: /system.slice/rabbitmq-server.service
├─8144 /usr/lib64/erlang/erts-10.6.4/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf ->
├─8246 /usr/lib64/erlang/erts-10.6.4/bin/epmd -daemon
├─8393 erl_child_setup 1024
├─8449 inet_gethost 4
└─8450 inet_gethost 4
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: ########## Licensed under the MPL 1.1. W>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Doc guides: https://rabbitmq.com/document>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Support: https://rabbitmq.com/contact.>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Tutorials: https://rabbitmq.com/getstart>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Monitoring: https://rabbitmq.com/monitori>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Logs: /var/log/rabbitmq/[email protected]>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: /var/log/rabbitmq/rabbit@rabbitmq_u>
Dec 28 23:08:35 rabbitmq.lianglab.cn rabbitmq-server[8144]: Config file(s): /etc/rabbitmq/rabbitmq.co>
Dec 28 23:08:35 rabbitmq.lianglab.cn systemd[1]: Started RabbitMQ broker.
Étape 5: Installez l'interface de gestion RabbitMQ sur CentOS 8
Bien que le package RabbitMQ contienne déjà des outils CLI (ligne de commande) pour gérer les serveurs RabbitMQ.
Cependant, vous pouvez également choisir d'installer l'interface utilisateur de gestion RabbitMQ pour effectuer une gestion basée sur l'interface graphique.
[1] Exécutez la commande suivante pour installer l'interface utilisateur de gestion RabbitMQ sur le serveur Linux.
[root@rabbitmq ~]# rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@rabbitmq:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@rabbitmq...
The following plugins have been enabled:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_web_dispatch
started 3 plugins.
[2] Vérifiez que le service d'interface utilisateur de gestion RabbitMQ s'exécute sur le port par défaut 15672 .
[root@rabbitmq-01 ~]# ss -tulpn | grep 15672
tcp LISTEN 0 128 0.0.0.0:15672 0.0.0.0:* users:(("beam.smp",pid=2949,fd=98))
Afin d'autoriser le trafic entrant dans l'interface utilisateur de gestion RabbitMQ, vous devez autoriser le port de service par défaut 15672 / tcp dans le pare-feu Linux .
De plus, RabbitMQ utilise le port 5672 / tcp pour les files d'attente basées sur le protocole AMQP. Par conséquent, vous devez également l'activer dans le pare-feu Linux.
[3] Exécutez la commande suivante pour permettre au pare-feu Linux de libérer le port.
[root@rabbitmq ~]# firewall-cmd --add-port=15672/tcp --permanent
success
[root@rabbitmq ~]# firewall-cmd --add-port=5672/tcp --permanent
success
[root@rabbitmq ~]# firewall-cmd --reload
success
Étape 6: Gestion des utilisateurs et des opérations et de la maintenance de l'administrateur RabbitMQ
RabbitMQ utilise par défaut l'utilisateur invité et le mot de passe invité . L'utilisateur invité dispose de privilèges administratifs, mais ne peut se connecter au serveur RabbitMQ qu'à partir de l'hôte local.
Par conséquent, nous devons créer un autre utilisateur administrateur pour accéder à distance à l'interface de gestion RabbitMQ.
[1] Vérifiez les utilisateurs déjà disponibles sur le serveur RabbitMQ.
[root@rabbitmq ~]# rabbitmqctl list_users
Listing users ...
user tags
guest [administrator]
[2] Exécutez la commande suivante sur la ligne de commande Linux pour créer un nouvel utilisateur pour la gestion du serveur RabbitMQ.
# rabbitmqctl add_user [user] [password]
[root@rabbitmq ~]# rabbitmqctl add_user admin lianglab@passwd
Adding user "admin" ...
# 显示用户列表
[root@rabbitmq ~]# rabbitmqctl list_users
Listing users ...
user tags
admin []
guest [administrator]
#修改用户名密码
[root@rabbitmq ~]# rabbitmqctl change_password admin lianglab@newpasswd
Changing password for user "admin" ...
#将管理角色授予用户如下所示
[root@rabbitmq ~]# rabbitmqctl set_user_tags admin administrator
Setting tags for user "admin" to [administrator] ...
#删除用户如下所示
[root@rabbitmq ~]# rabbitmqctl delete_user admin
Deleting user "admin" ...
[3] Pour utiliser RabbitMQ, ajoutez également Virtualhost.
#rabbitmqctl add_vhost [vhost]
#创建虚拟机主机
[root@rabbitmq ~]# rabbitmqctl add_vhost /lianglab_vhost
Adding vhost "/lianglab_vhost" ...
#显示虚拟主机列表
[root@rabbitmq ~]# rabbitmqctl list_vhosts
Listing vhosts ...
name
/lianglab_vhost
/
#删除虚拟主机如下
[root@rabbitmq ~]# rabbitmqctl delete_vhost /lianglab_vhost
Deleting vhost "/lianglab_vhost" ...
[root@rabbitmq ~]# rabbitmqctl list_vhosts
Listing vhosts ...
name
/
[4] Pour accorder à l'utilisateur les autorisations de l'hôte virtuel, veuillez configurer comme suit.
# rabbitmqctl set_permissions [-p vhost] [用户] [权限⇒(修改)(写)(读)]
[root@rabbitmq ~]# rabbitmqctl set_permissions -p /lianglab_vhost admin ".*" ".*" ".*"
Setting permissions for user "admin" in vhost "/lianglab_vhost" ...
#显示虚拟主机的权限
[root@rabbitmq ~]# rabbitmqctl list_permissions -p /lianglab_vhost
Listing permissions for vhost "/lianglab_vhost" ...
user configure write read
admin .* .* .*
#显示特定用户的权限
[root@rabbitmq ~]# rabbitmqctl list_user_permissions admin
Listing permissions for user "admin" ...
vhost configure write read
/lianglab_vhost .* .* .*
[root@rabbitmq ~]#
#删除特定用户的权限如下
rabbitmqctl clear_permissions -p /lianglab_vhost admin
[5] Ouvrez l'URL http://192.168.6.176:15672/ dans le navigateur Web .
Connectez-vous en tant qu'utilisateur administrateur que vous avez créé à l'étape précédente .
Après vous être connecté avec succès, vous pouvez accéder au tableau de bord de l'interface utilisateur de gestion RabbitMQ. Vous pouvez gérer entièrement le serveur RabbitMQ à partir d'ici.
Nous vous recommandons fortement d'acheter et de lire le " Depth of RabbitMQ" de Manning Publications pour approfondir vos connaissances sur le terrain et utiliser le serveur RabbitMQ pour votre application.