CentOS上安裝RabbitMQ3.6.X


RabbitMQ3.6.1的安裝方法跟以前的版本有點不一樣,我在網上找了很多資料,基本都是3.1左右的版本,而且安裝過程很繁瑣,所以我花了一下午 的時間研究如何實現最簡安裝。為了讓大家少走彎路,就把安裝過程記錄了下來,也便於以后如果忘記了好查閱。3.6最大的特點就是不用再運行make命令 了,而是直接解壓就可以用。下面是具體步驟:

 

1. 首先下載RabbitMQ,地址為:http://www.rabbitmq.com/install-generic-unix.html。這里我們下 載的是generic unix的版本,下載的文件名為:rabbitmq-server-generic-unix-3.6.1.tar.xz。xz是一個使用LZMA壓縮算 法的無損數據壓縮文件格式,是絕大數linux默認就帶的一個壓縮工具。其解壓方式為xz -d {要解壓的文件名},解壓出來是一個tar文件,我就可以用tar文件的解壓方法tar -xvf {解壓出來的tar文件名}。

wKioL1bYb-7DKz6KAABJcgAenfw516.png
tar解壓出來是一個叫rabbitmq_server-3.6.1的文件夾,為了便於管理我們把它移動到/usr/local/bin下。

wKiom1bYcIODrdjNAAAx_19O9jk568.png
到此為止RabbitMQ的基本安裝就完成了,這個版本是不需要其他額外的編譯和安裝的。

2. 安裝最新版的Erlang,因為RabbitMQ是基於Erlang開發的。記住:一定要用最新的版本,不然啟動RabbitMQ時可能會出錯,這個問題我開始弄了幾個小時才發現是Erlang的版本太低的原因。

去Erlang官網下載最新的Source File文件,地址是:http://www.erlang.org/downloads

wKiom1bYXpbx5sUPAADdJzImens278.png

下載下來的文件名為:otp_src_18.2.1.tar.gz,我們用tar -zxvf解壓就可以了。解壓和生成otp_src_18.2.1文件夾,進入該文件夾,然后用./configure --prefix=/usr/local/bin/erlang --without-javac來配置,該命令可能會出現很多錯誤,基本都缺少相關的依賴,下面會列出具體的錯誤描述和解決方法。

錯誤1:

 
Ignoring the --cache- file  argument since it can cause the system to be erroneously configured
Disabling caching
checking build system  type ... x86_64-unknown-linux-gnu
checking host system  type ... x86_64-unknown-linux-gnu
checking  for  gcc... no
checking  for  cc... no
checking  for  cc... no
checking  for  cl... no
configure: error: no acceptable C compiler found  in  $PATH
See `config.log'  for  more  details.

原因:缺少GCC編譯器。解決方法:

 
yum  install  -y gcc-c++

錯誤2:

checking  for  tgetent  in  -ltinfo... no
checking  for  tgetent  in  -lncurses... no
checking  for  tgetent  in  -lcurses... no
checking  for  tgetent  in  -ltermcap... no
checking  for  tgetent  in  -ltermlib... no
configure: error: No curses library functions found
configure: error:  /bin/sh  '/software/otp_src_18.2.1/erts/configure'  failed  for  erts

原因:未安裝curses。解決方法:

 
yum -y  install  ncurses-devel

錯誤3:

crypto         : No usable OpenSSL found
jinterface     : Java compiler disabled by user
odbc           : ODBC library - link check failed
ssh             : No usable OpenSSL found
ssl            : No usable OpenSSL found

原因:缺少OpenSSL。解決方法:

 
yum  install  openssl-devel

錯誤4:

jinterface     : Java compiler disabled by user
odbc           : ODBC library - link check failed

原因:缺少ODBC  library。解決方法:

 
yum  install  unixODBC-devel

最后運行make和make insall命令,運行完之后,在/usr/local/bin下面就有erlang文件夾了。我們先把RabbitMQ和Erlang的可執行文件的路 徑加入path中,以便在任何地方都可以執行。這里我們直接改etc/profile文件,以便對所有用戶起作用。在profile適當的位置加入:

 
export  PATH=$PATH: /usr/local/bin/erlang/bin : /usr/local/bin/rabbitmq_server-3 .6.1 /sbin

配完后輸入source /etc/profile讓配置起作用,然后輸入erl,如果出現以下畫面則說明安裝成功。

wKioL1bYe1CTgTyoAAAbK5hqGio047.png

最后輸入rabbitmq-server,出現以下畫面就說明RabbitMQ啟動成功。

./rabbitmq-server -detached可以實現后台啟動

rabbitmq配置

一般情況下,RabbitMQ的默認配置就足夠了。如果希望特殊設置的話,有兩個途徑:
一個是環境變量的配置文件 rabbitmq-env.conf ;
一個是配置信息的配置文件 rabbitmq.config;
注意,這兩個文件默認是沒有的,如果需要必須自己創建。
rabbitmq-env.conf
這個文件的位置是確定和不能改變的,位於:/etc/rabbitmq目錄下(這個目錄需要自己創建)。
文件的內容包括了RabbitMQ的一些環境變量,常用的有:
#RABBITMQ_NODE_PORT=    //端口號
#HOSTNAME=
RABBITMQ_NODENAME=mq
RABBITMQ_CONFIG_FILE=        //配置文件的路徑
RABBITMQ_MNESIA_BASE=/rabbitmq/data        //需要使用的MNESIA數據庫的路徑
RABBITMQ_LOG_BASE=/rabbitmq/log        //log的路徑
RABBITMQ_PLUGINS_DIR=/rabbitmq/plugins    //插件的路徑

 

rabbitmq.config
這是一個標准的erlang配置文件。它必須符合erlang配置文件的標准。
它既有默認的目錄,也可以在rabbitmq-env.conf文件中配置。

文件的內容詳見:http://www.rabbitmq.com/configure.html#config-items

 

wKiom1bYfBfy_CSPAABAtNksZ08072.png

如果要使用WEB管理界面,運行以下命令:

 
rabbitmq-plugins  enable  rabbitmq_management

WEB管理界面的默認用戶名和密碼都是guest,瀏覽器訪問地址:http://host:15672,會要求輸入用戶名和密碼,用默認的guest/guest即可(guest/guest用戶只能從localhost地址登錄,如果要配置遠程登錄,必須另創建用戶),

添加新用戶的方法:

 

$  cd /usr/lib/rabbitmq/bin/
#用戶名與密碼
$ sudo rabbitmqctl add_user webadmin 123456
#用戶設置為administrator才能遠程訪問
$ sudo rabbitmqctl set_user_tags webadmin administrator         
$ sudo rabbitmqctl set_permissions -p / webadmin ".*" ".*" ".*"

 

確認后會出現下面界面:

wKioL1bYfVSiaVUGAABdmNfCnbg844.png

最后一個問題:我們有可能在啟動RabbitMQ時遇到{ERROR: epmd error for host "****"}錯誤。這是因為你的主機名和ip不匹配,必須把當前的hostname放入/etc/hosts文件中。當RabbitMQ用上面的默認方 法安裝后,使用的地址是127.0.0.1,把當前的hostname追加到/etc/hosts文件中127.0.0.1后面就可以了。

 

總結:RabbitMQ3.6的版本已經不需要以前那么復雜的安裝過程,只用安裝好Erlang就可以了。像Python等依賴軟件只要是比較新的Linux發行版本基本都已經集成了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM