您的位置:首页 > 运维架构 > Linux

linux下安装RabbitMQ消息机制

2015-11-18 14:59 465 查看
在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:正在卸载模块: [确定]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息