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
成功。