CentOS 7 安裝RabbitMQ
參考文檔:
CentOS 7.2 下 RabbitMQ 集羣搭建 http://www.linuxidc.com/Linux/2016-12/137812.htm
CentOS7環境安裝使用專業的消息隊列產品RabbitMQ http://www.linuxidc.com/Linux/2016-11/13673.htm
RabbitMQ入門教程 http://www.linuxidc.com/Linux/2015-02/113983.htm
NServiceBus 結合 RabbitMQ 使用教程 http://www.linuxidc.com/Linux/2017-05/143787.htm
CentOS 7下RabbitMQ集羣安裝配置 http://www.linuxidc.com/Linux/2017-10/147707.htm
RabbitMQ實戰:高效部署分佈式消息隊列 中文PDF掃描版 http://www.linuxidc.com/Linux/2017-10/147592.htm
RabbitMQ分佈式集羣架構和高可用性(HA) http://www.linuxidc.com/Linux/2017-12/149466.htm
1.準備基礎編譯環境 gcc
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
2.下載安裝包rabbitmq-server-3.7.17-1.el7.noarch.rpm和otp_src_21.3.tar.gz
Erlang下載地址: http://erlang.org/download/ (注意版本號:http://www.rabbitmq.com/which-erlang.html)
rabbitmq下載地址: http://www.rabbitmq.com/install-rpm.html
2
(rabbitmq-server-3.7.17-1.el7.noarch.rpm要對應20.3.*以上的版本)
3.上傳文件到/home/rabbitmq
[root@sh_c rabbitmq]# pwd
/home/rabbitmq
[root@sh_c rabbitmq]# ll
總用量 233256
drwxr-xr-x. 12 2004 wheel 4096 8月 10 04:17 otp_src_21.3
-rw-r--r--. 1 root root 228403200 8月 10 04:05 otp_src_21.3.tar.gz
-rw-r--r--. 1 root root 10438300 8月 9 05:26 rabbitmq-server-3.7.17-1.el7.noarch.rpm
-rw-r--r--. 1 root root 833 8月 9 05:26 rabbitmq-server-3.7.17-1.el7.noarch.rpm.asc
[root@sh_c rabbitmq]#
4.解壓 otp_src_21.3.tar.gz並配置erlang
tar -xvf otp_src_21.3.tar.gz
mkdir /usr/local/erlang
cd otp_src_21.3
./configure --prefix=/usr/local/erlang --without-javac
可能會出現下面錯誤
configure: error: Perl is required to generate v2 to v1 mib converter script
configure: error: /bin/sh '/opt/otp_src_19.3/lib/snmp/./configure' failed for snmp/.
configure: error: /bin/sh '/opt/otp_src_19.3/lib/configure' failed for lib
參考:https://www.cnblogs.com/nb-blog/p/5266712.html
#如上,提示錯誤,解決方法:安裝Perl
yum install perl
錯誤:No curses library functions found
**報該錯誤主要是因爲系統中缺少ncurses-devel依賴,可以使用yum進行安裝**
運行yum -y install ncurses-devel或者yum install ncurses-devel命令即可
安裝完畢後繼續erlang的安裝即可!
然後重新配置erlang
./configure --prefix=/usr/local/erlang --without-javac
make && make install
5.編譯&安裝完成以後配置Erlang環境變量
vim /etc/profile
追加環境變量到文件末尾
ERL_HOME=/usr/local/erlang
PATH=$ERL_HOME/bin:$PATH
export ERL_HOME PATH
執行語句
source /etc/profile
6.檢查Erlang是否配置成功
[root@sh_c ~]# whereis erlang
erlang: /usr/lib64/erlang /usr/local/erlang
7.正式安裝RabbitMQ
cd 進入RPM包目錄下
rpm -ivh --nodeps rabbitmq-server-3.7.17-1.el7.noarch.rpm
8.運行RabbitMQ需要首先開放15672和5672端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
或者使用iptables時 service iptables restart
sudo /sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
sudo /etc/rc.d/init.d/iptables save
重啓防火牆 service iptables restart
9.RabbitMQ已經安裝完成
rabbitmq-plugins enable rabbitmq_management
rabbitmq-server
[root@sh_c rabbitmq]# rabbitmq-server
## ##
## ## RabbitMQ 3.7.17. Copyright (C) 2007-2019 Pivotal Software, Inc.
########## Licensed under the MPL. See https://www.rabbitmq.com/
###### ##
########## Logs: /var/log/rabbitmq/rabbit@sh_c.log
/var/log/rabbitmq/rabbit@sh_c_upgrade.log
Starting broker...
completed with 3 plugins.
可能會遇到Error when reading /var/lib/rabbitmq/.erlang.cookie: eacces(這是因爲沒有權限的問題)
執行語句:
chown rabbitmq:rabbitmq /var/lib/rabbitmq/.erlang.cookie
參考:https://www.jianshu.com/p/84df081496c7
然後重啓成功
10.訪問路徑http://<虛擬機IP>:15672/
11.接下來我們需要爲RabbitMQ創建用戶並賦權
添加用戶
創建虛擬主機
2
創建好虛擬主機,我們還要給用戶添加訪問權限:
點擊添加好的虛擬主機:
進入虛擬主機設置界面:
rabbitmqctl add_user root root
rabbitmqctl set_user_tags root administrator
rabbitmqctl set_permissions -p / root '.*' '.*' '.*'
12.後臺啓動
rabbitmq-server -detached
成功。