RabbitMQ 服務(wù)器在安裝之前需要安裝 erlang。
最新版本的?RabbitMQ 3.8.0 需要?Erlang 21.3 以上的版本支持。
在這里,我們需要在你的 CentOS 中安裝?Erlang 21.3.8.8 版本。
下載地址和軟件更新
Erlang 21.3.8.8 版本的下載地址,請參考鏈接:https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm
RabbitMQ 3.8.0 的下載地址,請參考鏈接:https://www.rabbitmq.com/install-rpm.html
使用登錄上你的 CentOS 7 服務(wù)器后,首先需要查看你的服務(wù)器是否安裝了 wget,如果沒有安裝 wget,請運(yùn)行 yum install wget 進(jìn)行安裝。
yum install wget
當(dāng) wget 安裝完成后,運(yùn)行
yum update
來更新你的服務(wù)器。
安裝 Erlang
首先你需要下載 Erlang ,然后進(jìn)行安裝,在上面提到的地址https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm中的右側(cè)有一個(gè) wget 的地址。
你可以運(yùn)行
wget --content-disposition https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang-21.3.8.8-1.el7.x86_64.rpm/download.rpm
來進(jìn)行下載。
當(dāng)你下載到你的本地計(jì)算機(jī)后,運(yùn)行命令
yum localinstall rabbitmq-server-3.8.0-1.el7.noarch.rpm
來安裝你下載的 rpm 包。
當(dāng)你安裝完成后,你可以運(yùn)行命令
erl -version
來查看你安裝的 erl 版本。
在這里,你可以看到這顯示的版本低 Erlang emulator 版本,與你下載的 Erlang 版本是不同的。
安裝 RabbitMQ
運(yùn)行下面的命令,將 RabbitMQ 下載到你服務(wù)器上。
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.0/rabbitmq-server-3.8.0-1.el7.noarch.rpm
當(dāng)你下載完成后,你需要運(yùn)行下面的命令來將 Key 導(dǎo)入。
rpm --importhttps://www.rabbitmq.com/rabbitmq-release-signing-key.asc
使用 yum 進(jìn)行本地安裝,運(yùn)行命令:
yum localinstall rabbitmq-server-3.8.0-1.el7.noarch.rpm
當(dāng)安裝完成后,你可以使用命令來啟動(dòng) rabbitmq 服務(wù)器:
systemctl start rabbitmq-server
RabbitMQ 防火墻配置
RabbitMQ 的運(yùn)行需要一系列的端口。因此你需要配置你的防火墻將下面的端口打開。
如果你使用的是 firewalld,那么請依次執(zhí)行下面的命令。
打開防火墻端口:
firewall-cmd --zone=public--permanent --add-port=4369/tcp
firewall-cmd --zone=public--permanent --add-port=25672/tcp
firewall-cmd --zone=public--permanent --add-port=5671-5672/tcp
firewall-cmd --zone=public--permanent --add-port=15672/tcp
firewall-cmd --zone=public--permanent --add-port=61613-61614/tcp
firewall-cmd --zone=public--permanent --add-port=1883/tcp
firewall-cmd --zone=public--permanent --add-port=8883/tcp
將防火墻配置重新載入:
firewall-cmd --reload
絕大部分情況,當(dāng)你執(zhí)行完上面的命令后,你的 RabbitMQ 應(yīng)該能夠正常訪問了。
如果你的服務(wù)器還啟用了 SELinux 的話,你還需要執(zhí)行下面的命令來讓讓 RabbitMQ 服務(wù)器能夠接收發(fā)送網(wǎng)絡(luò)數(shù)據(jù):
setsebool -P nis_enabled?1
RabbitMQ 設(shè)置自動(dòng)啟動(dòng)
在安裝完成后,我們希望 RabbitMQ 能開機(jī)自動(dòng)啟動(dòng)。
請執(zhí)行下面的命令,來讓 RabbitMQ 隨著計(jì)算機(jī)開機(jī)后自動(dòng)啟動(dòng):
systemctl enable rabbitmq-server
使用下面命令查看 RabbitMQ 的進(jìn)程運(yùn)行狀態(tài):
systemctl status rabbitmq-server
根據(jù)服務(wù)器的不同,會有不同的輸出,我們的輸出如下,表示 RabbitMQ 目前是正在運(yùn)行的。
[root@vps263579 yhu]# systemctl status rabbitmq-server
● rabbitmq-server.service - RabbitMQ broker
Loaded: loaded (/usr/lib/systemd/system/rabbitmq-server.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2019-10-11 14:10:14 EDT; 9h ago
Main PID: 14895 (beam.smp)
Status: "Initialized"
CGroup: /system.slice/rabbitmq-server.service
├─14895 /usr/lib64/erlang/erts-10.3.5.6/bin/beam.smp -W w -A 64 -MBas ageffcbf -MHas ageffcbf -MBlmbcs 512 -MHlmbcs 512 -MMmcs 30 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -- -root /usr/lib64/erlang -progn...
├─15123 /usr/lib64/erlang/erts-10.3.5.6/bin/epmd -daemon
├─15259 erl_child_setup 32768
├─15280 inet_gethost 4
└─15281 inet_gethost 4
RabbitMQ 啟用 Web 管理界面
在默認(rèn)的情況下 RabbitMQ 的 Web 管理控制臺是沒有啟用的,你需要通過下面的命令來進(jìn)行啟用。
安裝 Web 管理界面的插件:
rabbitmq-plugins enable rabbitmq_management
提供 RabbitMQ 用戶和對用戶使用的權(quán)限進(jìn)行賦權(quán):
chown -R rabbitmq:rabbitmq /var/lib/rabbitmq/
分別執(zhí)行下面的命令:
rabbitmqctl add_user admin StrongPassword
rabbitmqctl set_user_tags admin administrator
rabbitmqctl set_permissions -p / admin?".*"".*"".*"
針對上面命令的解釋是,第一個(gè)命令創(chuàng)建了一個(gè) admin 的用戶,這個(gè)用戶使用的密碼為?StrongPassword。
你可以使用不同的用戶名,在我們執(zhí)行的上面的命令中,用戶登錄使用的密碼為字符?StrongPassword,你可以將這個(gè)字符修改為其他的字符,或者你也可以登錄成功后在 UI 界面中進(jìn)行修改。
后面的話是針對這個(gè)用戶進(jìn)行賦權(quán)。
當(dāng)上面命令執(zhí)行成功后,你可以重啟你的 RabbitMQ,然后通過瀏覽器進(jìn)行登錄。UI 界面使用的端口是 15672。因此訪問的 URL 為你服務(wù)器的地址 + 15672。
http://Your_Server_IP:15672/
如果一切正常,你應(yīng)該能夠看到下面的登錄界面:
如果你不能訪問下面的登錄界面,有可能是你的服務(wù)器防火墻。
最簡單的辦法是先禁用服務(wù)器的防火墻以確定所有的進(jìn)程是正常運(yùn)行的。
如果你登錄成功后,你應(yīng)該能夠看到下面 RabbitMQ 的運(yùn)行界面:
https://www.cwiki.us/display/RabbitMQZH/Install+RabbitMQ+Server+on+CentOS+7