在Windows系统安装RabbitMQ是图形化界面比较简单,这里我将和大家聊聊怎么在linux系统中安装RabbitMQ。首先我们要清楚RabbitMQ底层是Erlang语言,因此在安装RabbitMQ之前我们需要先将Erlang语言环境安装,下面是本人安装的步骤。
第一步:创建目录,上传RabbitMQ安装需要的软件。
创建目录:
[root@slave ~]# cd /usr/local/src/
[root@slave src]# mkdir rabbitmq
[root@slave src]# cd rabbitmq/
上传Erlang和RabbitMQ(如图):
上传后目录下的文件:
第二步:安装Erlang语言环境
[root@slave rabbitmq]# yum install esl-erlang_17.3-1~centos~6_amd64.rpm
…………(安装过程)
[root@slave rabbitmq]# yum install esl-erlang-compat-R14B-1.el6.noarch.rpm
…………(安装过程)
[root@slave rabbitmq]# rpm -ivh rabbitmq-server-3.4.1-1.noarch.rpm
…………(安装成功)
前两步已经将RabbitMQ安装成功,接下来就是启动RabbitMQ和一些注意配置事项。
第三步:启动RabbitMQ及问题解决
[root@slave rabbitmq]# service rabbitmq-server start
Starting rabbitmq-server:
这个启动过程可能会需要挺长的时间,因此需要稍等一会,但是最终还是提示启动失败,这里就是启动中存在的问题,解决这个问题其实很简单,只要修改/etc/hosts文件就可以。
[root@slave rabbitmq]# service rabbitmq-server start
Starting rabbitmq-server: FAILED - check /var/log/rabbitmq/startup_{log, _err}
rabbitmq-server.
[root@slave rabbitmq]# vim /etc/hosts
修改如图所示:
修改完成后再启动RabbitMQ服务就可以了。
[root@slave rabbitmq]# service rabbitmq-server start
Starting rabbitmq-server: SUCCESS
rabbitmq-server.
第四步:到第三步可能觉得已经安装完了,但是,尝试在宿主机使用浏览器访问虚拟机中的RabbitMQ却大失所望,没能成功,有人可能会觉得是防火墙的问题,但是关闭防火墙或放开RabbitMQ的端口15672依然不行,其实原因在于没有开启RabbitMQ的远程访问权限,因为RabbitMQ默认的用户guest是没有远程访问权限的。接下来就是配置RabbitMQ允许远程访问。
修改配置文件:
[root@slave rabbitmq]# cp /usr/share/doc/rabbitmq-server-3.4.1/rabbitmq.config.example /etc/rabbitmq/
[root@slave rabbitmq]# cd /etc/rabbitmq/
[root@slave rabbitmq]# mv rabbitmq.config.example rabbitmq.config
[root@slave rabbitmq]# vim rabbitmq.config
开启web界面管理工具:
[root@slave rabbitmq]# rabbitmq-plugins enable rabbitmq_management
重新启动RabbitMQ服务:
[root@slave rabbitmq]# service rabbitmq-server restart
Restarting rabbitmq-server: SUCCESS
rabbitmq-server.
到这里就算是大功告成,这个时候我们就使用浏览器尝试访问以下吧。
效果如下:
注意事项:
一定要记得开放RabbitMQ的端口15672,或者直接关闭防火墙。
1、开放15672端口:
[root@slave rabbitmq]#/sbin/iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
[root@slave rabbitmq]#/sbin/iptables -I INPUT -p tcp --dport 5672 -j ACCEPT
[root@slave rabbitmq]#/etc/rc.d/init.d/iptables save
2、关闭防火墙:
[root@slave rabbitmq]# service iptables stop
iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]