RabbitMQ安装以及安装中出现的问题及解决办法

本次安装中使用的系统是CentOS7,

首先是将防火墙关闭

systemctl stop firewalld.service
systemctl disable firewalld.service

注意,防火墙关闭需要用root权限

由于RabbitMq是Erlang编写,因此需要先安装Erlang环境

安装Erlang

下载安装包

wget http://erlang.org/download/otp_src_21.0.tar.gz

解压文件

tar –zxvf otp_src_21.0.tar.gz
cd otp_src_21.0.tar.gz

编译

./otp_build autoconf

这里出现一个错误autoconf:command not found如下: 解决办法:

yum  install autoconf

继续Erlang操作:

./configure

这里出现了错误no acceptable C compiler found in $PATH,如下: 解决办法:

yum install gcc

再次./configure出现错误 解决办法:

yum -y install ncurses-devel

再次./configure出现如下错误

解决办法:

yum install openssl openssl-devel

再次./configure出现如下错误 解决办法: 对于"odbc: ODBC library - link check failed"解决办法

yum install unixODBC.x86_64 unixODBC-devel.x86_64

对于"documentation : fop is missing. Using fakefop to generate placeholder PDF files."的解决办法:

yum install fop.noarch

对于“wx not found”的解决办法:

yum install gtk2-devel.x86_64

使用c++编译则可以忽略jinterface:No java compiler found "wx: Can not link the wx driver, wx will NOT be useable"这条警告可以忽略 再次./configure

make 命令

make

安装

make install

检验

erl

退出erl

halt().

Erlang安装成功后,接下来安装RabbitMQ

安装RabbitMQ

由于yum仓库中默认的Erlang版本较低,所以需要将最新的Erlang包添加到yum源中

最新的Erlang包添加到yum源

vim /etc/yum.repos.d/rabbitmq-erlang.repo

添加如下内容

[rabbitmq-erlang]
name=rabbitmq-erlang
baseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/21/el/7
gpgcheck=1
gpgkey=https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
repo_gpgcheck=0
enabled=1

这里我在进入/etc/yum.repos.d中并没有看见rabbitmq-erlang.repo文件,此时,不需要另外创建此文件,直接执行vim /etc/yum.repos.d/rabbitmq-erlang.repo就行

添加成功后,清楚原有的缓存并创建新缓存

命令如下

yum clean all
yum makecache

准备工作完成后,接下来就可以安装RabbitMQ了

下载RabbitMQ

wget https://dl.bintray.com/rabbitmq/all/rabbitmq-server/3.7.7/rabbitmq-server-3.7.7-1.el7.noarch.rpm

安装

yum install rabbitmq-server-3.7.7-1.el7.noarch.rpm

安装过程中,若提示缺少socat依赖,则安装socat依赖即可

yum install socat

安装成功后,接下来就可以启动RabbitMQ 并进行用户管理即可

启动

service rabbitmq-server start

查看状态

rabbitmqctl status

报如下错误 解决办法

vi /etc/rabbitmq/rabbitmq-env.conf

在文件里面添加这一行:NODENAME=rabbit@localhost,保存

执行rabbitmqctl status

开启web插件

rabbitmq-plugins enable rabbitmq_management

重启

service rabbitmq-server restart

添加一个用户名为sang,密码123的用户

rabbitmqctl add_user sang 123

设置sang用户的角色为管理员

rabbitmqctl set_user_tags sang administrator

查看用户列表

rabbitmqctl list_users

可以看到有两个用户sang和guese都是管理员权限

配置sang 用户可以远程登录

rabbitmqctl set_permissions -p / sang “." ".” “.*”

最后就是用浏览器访问并登录了,端口是15672:

经验分享 程序员 微信小程序 职场和发展