首先,rabbitmq安装需要依赖Erlang环境,这个都可以再rabbitmq官网去下载,我之前是手动下载最新版本的rabbitmq和erlang,结果提示不兼容,这个可以在rabbitmq官网上查看对应版本需要的Erlang版本。
1.下载erlang,注意rabbitmq和erlang版本对应上就行,我下载的是erlang-18.2-1.el7.centos.x86_64.rpm,安装:
yum install erlang-18.2-1.el7.centos.x86_64.rpm
2.下载rabbitmq,注意rabbitmq和erlang的版本对应,我下载的是rabbitmq-server-3.6.10-1.el7.noarch.rpm,安装:
yum install rabbitmq-server-3.6.10-1.el7.noarch.rpm
安装过程很简单,中间有可能会提示缺少socat,执行yum install socat即可。
3.启动服务
service rabbitmq-server start
4.查看服务状态
service rabbitmq-server status
从下图可以看到服务已经正常启动,并且可以看到圈红的地方就是日志目录,顺便说下,自动安装rabbitmq的话,安装目录在/usr/lib/rabbitmq/下
进入上图显示的log目录中打开rabbitmq@localhost.log
vi rabbitmq@localhost.log
可以看到配置文件的路径,日志路径,数据库路径等,第一次安装rabbitmq时,下图圈红的配置文件会提示(not found),自己去这个目录下手动创建一个rabbitmq.config文件。
进行到上面这些步骤后,rabbitmq已经正常安装和启动了,我遇到的问题是物理机访问虚拟机中的rabbitmq web管理页面,无法访问,还需要做一些配置,如下
编辑刚刚创建的/etc/rabbitmq/rabbitmq.config文件,添加:
[{rabbit, [{loopback_users, []}]}].
保存配置信息后重新启动下服务。
解释下,rabbitmq默认创建的用户和密码为guest,这个默认的用户只能本地访问,从外面访问需要添加如上的配置。
5.关闭防火墙或者开放15672端口都可以外部访问,15672端口为访问rabbitmq的web端口。
(1).关闭防护墙:
systemctl stop firewalld.service
systemctl disable firewalld.service
查看防火墙状态:firewall-cmd --state
(2).开放端口:
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --reload
6.外部访问rabbitmq web界面验证,请求成功输入用户密码会展示如下: