一、安装RabbitMQ依赖的的Erlang最小支持包(当然也可以安装完整的Erlang)
1.下载RabbitMQ的Erlang最小支持包源文件
git clone https://github.com/rabbitmq/erlang-rpm.git
2.安装Erlang源代码编译的依赖包
sudo yum install rpm-build autoconf ncurses-devel openssl-devel -y
3.使用 make 命令将源文件编译为rpm包
如果遇见如下错误:
*** ERROR: No build ID note found in /tmp/erlang-rpm/BUILDROOT/erlang-20.0.1-1.el7.centos.x86_64/usr/lib64/erlang/erts-9.0.1/bin/beam.smp
请在 erlang.spec 文件最顶部加入 %define debug_package %{nil} 这段代码。
编译完基本上是这个样子的
4.安装Erlang的rpm包
sudo rpm -ivh erlang-19.3.6-1.el7.centos.x86_64.rpm
5.验证Erlang安装 erl
二、安装RabbitmQ
1.导入RabbitMQ Release Key
sudo rpm --import https://www.rabbitmq.com/rabbitmq-release-signing-key.asc
2.下载安装RabbitMQ的rpm包
wget -O rabbitmq-server-3.6.10-1.el7.noarch.rpm https://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm
3.安装RabbitMQ的rpm包
sudo yum install rabbitmq-server-3.6.10-1.el7.noarch.rpm -y
4.创建空的配置文件
sudo vim /etc/rabbitmq/rabbitmq.config #在文件里输入,注意是一对中括号后跟一个点号 [].
5.设置 rabbitMQ-server 服务自动启动
sudo systemctl enable rabbitmq-server
6.启用RabbitMQ服务
sudo systemctl start rabbitmq-server
很是失败,居然没有成功!!出现了如下提示的错误 ERROR: epmd error for host ***** : timeout (timed out)
这时用 vim /etc/hosts ,在其中加入 127.0.0.1 ***** #你的服务器名称即可 ,应该就能启动成功了。
7. 启用RabbitMQ的管理插件
sudo rabbitmq-plugins enable rabbitmq_management
8.开启RabbitMQ的管理端口
sudo firewall-cmd --zone=public --add-port=15672/tcp --permanent
sudo firewall-cmd --reload
9.重启 rabbitmq-server 服务
sudo systemctl restart rabbitmq-server
使用http://yourhostip:15672就可以访问了
-------------------------20170620补充-------------------------
修改RabbitMQ默认数据库和日志路径,(这一部最好是放在添加用户之前)
i.为将要指定的目录设置访问权限
mkdir -p /home/rabbitmq_dir
chown rabbitmq:rabbitmq /home/rabbitmq_dir
chmod 750 /home/rabbitmq_dir
ii.新建 vim /etc/rabbitmq/rabbitmq-env.conf ,输入以下内容
RABBITMQ_MNESIA_BASE=/home/rabbitmq_dir
RABBITMQ_LOG_BASE=/home/rabbitmq_dir
iii.重启 rabbitmq-server 服务
-------------------------20170620补充-------------------------
10.添加RabbitMQ用户,并设置其角色和权限
#添加用户,用户名和密码均为"admin" sudo rabbitmqctl add_user admin admin #设置用户角色为administrator sudo rabbitmqctl set_user_tags admin administrator #为admin分配vhost "/"的权限 sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
下面就可以用admin用户登录了