在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:正在卸載模塊: [確定]