在CentOS 8上安裝RabbitMQ服務(wù)器
RabbitMQ是基于AMQP協(xié)議構(gòu)建的開源消息代理軟件。在本指南中,您將看到如何在CentOS 8上安裝RabbitMQ服務(wù)器。
RabbitMQ是一種開源消息代理軟件(有時稱為面向消息的中間件),最初實現(xiàn)了高級消息隊列協(xié)議(AMQP),并已通過插件體系結(jié)構(gòu)進行了擴展,以支持面向流文本的消息協(xié)議(STOMP)。,MQ遙測傳輸(MQTT)和其他協(xié)議。
RabbitMQ服務(wù)器程序是用Erlang編程語言編寫的,并建立在Open Telecom Platform框架上,用于集群和故障轉(zhuǎn)移。與代理交互的客戶端庫適用于所有主要編程語言,包括Java,Erlang和.NET Framework。(來源:維基百科)
RabbitMQ源代碼可在RabbitMQ GitHub Repository上獲得,并根據(jù)Mozilla Public License分發(fā)。
您可以在其官方網(wǎng)站上找到完整的RabbitMQ功能。
使用SSH客戶端與連接rabbitmq.lianglab.cn服務(wù)器為Linux的根用戶。
使用dnf命令將Linux服務(wù)器中的軟件包更新為最新的穩(wěn)定版本。
[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 ~]#
在此處檢查Linux操作系統(tǒng)和使用中的虛擬機的內(nèi)核版本。
[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
RabbitMQ服務(wù)器所需的某些軟件包可在EPEL(企業(yè)Linux的額外軟件包) yum存儲庫中獲得。
因此,在安裝RabbitMQ之前,您需要在Linux服務(wù)器上啟用/安裝EPEL yum存儲庫。
[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!
要安裝最新版本的RabbitMQ服務(wù)器,您可以編譯首選Linux發(fā)行版的源代碼
也可以添加RabbitMQ官方y(tǒng)um存儲庫以從預(yù)編譯的RPM軟件包中安裝RabbitMQ軟件。
執(zhí)行以下命令以在Linux服務(wù)器上安裝RabbitMQ yum存儲庫。
[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
為新安裝的yum存儲庫構(gòu)建緩存。
[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.
現(xiàn)在,您可以使用dnf命令輕松安裝RabbitMQ服務(wù)器。因為您已經(jīng)在Linux服務(wù)器上設(shè)置了EPEL yum存儲庫,所以將自動解決所有依賴性。
[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) <security@centos.org>"
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】啟用并啟動RabbitMQ服務(wù),如下所示。
[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】查看RabbitMQ服務(wù)的狀態(tài)
[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/rabbit@rabbitmq.l>
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.
盡管RabbitMQ軟件包已經(jīng)包含CLI(命令行)工具來管理RabbitMQ服務(wù)器。
但是,您也可以選擇安裝RabbitMQ管理UI來執(zhí)行基于GUI的管理。
【1】執(zhí)行以下命令在Linux服務(wù)器上安裝RabbitMQ管理UI。
[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】驗證RabbitMQ管理UI服務(wù)是否正在默認端口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))
為了允許進入RabbitMQ管理UI的傳入流量,您需要在Linux防火墻中允許默認服務(wù)端口15672/tcp。
此外,RabbitMQ將端口5672/tcp用于基于AMQP協(xié)議的隊列。因此,您還應(yīng)該在Linux防火墻中啟用它。
【3】執(zhí)行以下命令以允許Linux防火墻放行端口。
[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
RabbitMQ默認用戶guest和密碼guest。該來賓用戶具有管理特權(quán),但只能從本地主機登錄到RabbitMQ服務(wù)器。
因此,我們需要創(chuàng)建另一個管理員用戶以遠程訪問RabbitMQ管理UI。
【1】檢查RabbitMQ服務(wù)器上已經(jīng)可用的用戶。
[root@rabbitmq ~]# rabbitmqctl list_users
Listing users ...
user tags
guest [administrator]
【2】在Linux命令行上執(zhí)行以下命令以創(chuàng)建一個用于管理RabbitMQ服務(wù)器的新用戶。
# 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】要使用RabbitMQ,也要添加Virtualhost。
#rabbitmqctl add_vhost [vhost]
#創(chuàng)建虛擬機主機
[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】要向用戶授予虛擬主機的權(quán)限,請進行如下配置。
# rabbitmqctl set_permissions [-p vhost] [用戶] [權(quán)限?(修改)(寫)(讀)]
[root@rabbitmq ~]# rabbitmqctl set_permissions -p /lianglab_vhost admin ".*" ".*" ".*"
Setting permissions for user "admin" in vhost "/lianglab_vhost" ...
#顯示虛擬主機的權(quán)限
[root@rabbitmq ~]# rabbitmqctl list_permissions -p /lianglab_vhost
Listing permissions for vhost "/lianglab_vhost" ...
user configure write read
admin .* .* .*
#顯示特定用戶的權(quán)限
[root@rabbitmq ~]# rabbitmqctl list_user_permissions admin
Listing permissions for user "admin" ...
vhost configure write read
/lianglab_vhost .* .* .*
[root@rabbitmq ~]#
#刪除特定用戶的權(quán)限如下
rabbitmqctl clear_permissions -p /lianglab_vhost admin
【5】網(wǎng)絡(luò)瀏覽器中打開URL http://192.168.6.176:15672/。
以您在先前步驟中創(chuàng)建的管理員用戶身份登錄。
成功登錄后,您可以訪問RabbitMQ管理UI的儀表板。您可以從此處對RabbitMQ服務(wù)器進行完全管理。
我們強烈建議您購買和閱讀Manning Publications的《RabbitMQ深度》,以增加您在該領(lǐng)域的知識并為您的應(yīng)用程序使用RabbitMQ服務(wù)器。