阿里雲服務器CentOS7.5安裝RabbitMQ

RabbitMQ是實現了高級消息隊列協議(AMQP)的開源消息代理軟件(亦稱面向消息的中間件)。RabbitMQ服務器是用Erlang語言編寫的,而集羣和故障轉移是構建在開放電信平臺框架上的。java

爲何叫RabbitMQ?
不少人估計和我同樣也有這個疑問,《RabbitMQ實戰》一書給出了答案:兔子行動很是迅速並且繁殖起來也很是瘋狂,因此就把Rabbit用做這個分佈式軟件的命名(就是真麼簡單)。linux

安裝依賴文件shell

yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget

若不執行以上的依賴文件的安裝,則在執行./configure --prefix=/usr/local/erlang的過程當中,最後兩行會出現以下錯誤:瀏覽器

configure: error: No curses library functions found configure: error: /bin/sh '/home/ding/otp_src_20.3/erts/configure' failed for erts

因在安裝erlang的make過程當中會用到java命令,故安裝erlang前請檢查系統中是否存在jdk,若沒有需先安裝jdk
安裝erlang語言環境:安全

wget http://www.erlang.org/download/otp_src_20.3.tar.gz #下載erlang包
tar -xvf otp_src_20.3.tar.gz  #解壓
cd otp_src_20.3/ #切換到安裝路徑
./configure --prefix=/usr/local/erlang  #生產安裝配置
make && make install  #編譯安裝

配置erlang環境變量bash

vi /etc/profile  #在底部添加如下內容
#set erlang environment
ERL_HOME=/usr/local/erlang
PATH=$ERL_HOME/bin:$PATH
export ERL_HOME PATH
source /etc/profile #使以上配置生效

測試一下是否安裝成功,在控制檯輸入命令erl服務器

erl  #若是進入erlang的shell則證實安裝成功,退出便可。

安裝RabbitMQ
下載安裝(也可在http://www.rabbitmq.com/releases/rabbitmq-server/下選擇對應的版本)框架

cd /usr/local  #切換到計劃安裝RabbitMQ的目錄,我這裏放在/usr/local
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.7.4/rabbitmq-server-generic-unix-3.7.14.tar.xz  #下載RabbitMQ安裝包
xz -d rabbitmq-server-generic-unix-3.7.14.tar.xz
tar -xvf rabbitmq-server-generic-unix-3.7.14.tar
mv rabbitmq_server-3.7.14/ rabbitmq

配置rabbitmq環境變量:tcp

vi /etc/profile
#set rabbitmq environment
export PATH=$PATH:/usr/local/rabbitmq/sbin

保存退出分佈式

source /etc/profile

啓動服務

rabbitmq-server -detached //啓動rabbitmq,-detached表明後臺守護進程方式啓動。

若是啓動失敗,可嘗試

nohup rabbitmq-server restart >rabbitmqLOG.log 2>&1 &
(中止rabbitmq:rabbitmqctl stop)

查看狀態,若是顯示以下截圖說明安裝成功:

rabbitmqctl status

配合網頁插件

首先建立目錄,不然可能報錯:

mkdir /etc/rabbitmq

而後啓用插件:

rabbitmq-plugins enable rabbitmq_management

配置防火牆:

配置linux 端口 15672 網頁管理 5672 AMQP端口:(阿里雲服務器只須要將1567二、5672端口加入安全組便可,無需如下3步操做)

firewall-cmd --permanent --add-port=15672/tcp
firewall-cmd --permanent --add-port=5672/tcp
systemctl restart firewalld.service

如今你在瀏覽器中輸入服務器IP:15672 就能夠看到RabbitMQ的WEB管理頁面了,是否是很興奮,但是你沒有帳號密碼,別急

配置訪問帳號密碼的和權限
默認網頁是不容許訪問的,須要增長一個用戶修改一下權限,代碼以下:

rabbitmqctl add_user super super  #添加用戶,後面兩個參數分別是用戶名和密碼,我這都用super了。
rabbitmqctl set_permissions -p / super ".*" ".*" ".*"  #添加權限
rabbitmqctl set_user_tags super administrator #修改用戶角色

若是使用的是阿里雲服務器,還須要在阿里雲控制檯安全組裏開啓5672和15672端口。

安裝延時任務插件(非必須)

linux安裝rabbitmq_delayed_message_exchange插件(可經過該插件的x-delay-message實現延時消息隊列)

檢查本地是否安裝rabbitmq_delayed_message_exchange

rabbitmq-plugins list
wget wget https://dl.bintray.com/rabbitmq/community-plugins/3.7.x/rabbitmq_delayed_message_exchange/rabbitmq_delayed_message_exchange-20171201-3.7.x.zip

unzip,解壓到/usr/local/rabbitmq/plugins/rabbitmq_delayed_message_exchange-20171201-3.7.x.ez

若是提示找不到命令,也可經過https://dl.bintray.com/rabbitmq/community-plugins/3.7.x/rabbitmq_delayed_message_exchange/下載壓縮文件到本地,解壓後在將rabbitmq_delayed_message_exchange-20171201-3.7.x.ez上傳到/usr/local/rabbitmq/plugins/目錄下

安裝插件

rabbitmq-plugins enable rabbitmq_delayed_message_exchange

出現started 1 plugins.表明成功

參考博文:

1.Cento7 安裝rabbitMQ

2.rabbitmq安裝rabbitmq_delayed_message_exchange插件

相關文章
相關標籤/搜索