1. 程式人生 > >centOS6.5安裝rabbitmq

centOS6.5安裝rabbitmq

          之前一直在window平臺下使用rabbitmq,今天嘗試著在centos安裝,結果遇到很多問題,這裡記錄下

         具體步驟:

    建立一個用來儲存軟體的目錄 例如 /usr/local/software,下載好的壓縮包 放入software資料夾,通過命令

xz -d rabbitmq-server-generic-unix-3.6.9.tar.xz
     解壓出一個tar檔案 然後通過
tar -xvf  xz -d rabbitmq-server-generic-unix-3.6.9.tar

     解壓得到rabbitmq_server-3.6.9的資料夾  移動的 /opt目錄下

    到此rabbitmq的安裝完成

      

       選擇下載source file,下載下來檔名稱otp_src_18.2.1.tar.gz,我嘗試用tar -zxvf 檔名方式來解壓 報錯

       

         說明下載得到的根本就不是一個gzip壓縮的檔案 所以這裡直接使用 tar -xvf opt_src_18.2.1解壓  得到對應資料夾

        由於得到的是原始碼 需要編譯 安裝所需要的工具

yum -y install make gcc gcc-c++ ncurses-devel

原本是需要安裝 openssl  網上檢視到的資料是直接通過 yum -y install openssl-devel 但是我這裡安裝以後  crypto連結不上一直報錯


找不到依賴,後來選擇了 通過原始碼方式來安裝openssl

 下載openssl原始碼

wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz
    tar zxvf openssl-1.0.1f.tar.gz

進入原始碼目錄,為了不要之前安裝的openssl混淆,這裡指定一個新的安裝目錄

./config --prefix=/opt/ssl

在config之後,會生成Makefile,開啟Makefile 找到gcc 在CFLAG引數列表中新增 -fPIC

vim Makefile

檔案有點長  可以通過 / gcc 來查詢地位

CC= gcc
CFLAG= -fPIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -Wa,--noexecstack -m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DOPENSSL_IA32_SSE2 
-DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM
 -DWHIRLPOOL_ASM -DGHASH_ASM DEPFLAG= -DOPENSSL_NO_EC_NISTP_64_GCC_128 -DOPENSSL_NO_GMP -DOPENSSL_NO_JPAKE -DOPENSSL_NO_MD2 -DOPENSSL_NO_RC5
 -DOPENSSL_NO_RFC3779 -DOPENSSL_NO_SCTP -DOPENSSL_NO_STORE

編譯安裝  make && make install

到此 erlang 所需要的編譯環境準備完成

進入到erlang原始碼目錄,確保能重新編譯 make clean

./configure --with-ssl=/opt/ssl/ --prefix=/opt/erlang

編譯安裝 make && make install

配置環境變數 vim /etc/profile 追加

##ERLANG
export ERLANG_HOME=/opt/erlang
export PATH=$PATH:$ERLANG_HOME/bin

##RABBITMQ
export RABBIT_HOME=/opt/rabbitmq_server-3.6.9/sbin
export PATH=$PATH:$RABBIT_HOME

執行命令 erl

出現以下內容說明 erlang環境成功

啟動rabbitmq 

rabbitmq-server

出現以上內容  恭喜你 成功啟動rabbitmq

3.安裝後臺管理外掛

rabbitmq-plugins enable rabbitmq_management

結果發現還有問題

連線不上

解決方法:

rabbitmqctl  start_app
再執行
rabbitmq-plugins enable rabbitmq_management

通過網頁訪問 http://localhost:15672

通過 guest/guest登入 出現如下介面

到此整個過程完成

補充:

如果是在虛擬機器安裝 想要通過宿主機訪問  需要開放對應埠  我這裡採用的NAT模式  做了埠轉發(ps:不配置這個好像也是可以的

rabbitmq的使用者管理

(1)新增使用者

rabbitmqctl add_user Username Password
(2)刪除一個使用者
rabbitmqctl delete_user Username

(3)修改使用者的密碼
rabbitmqctl change_password Username Newpassword

(4)檢視當前使用者列表
rabbitmqctl list_users

5)設定使用者角色

rabbitmqctl  set_user_tags  User  Tag

User為使用者名稱, Tag為角色名(對應於上面的administrator,monitoring,policymaker,management,或其他自定義名稱)。

6)設定使用者許可權

rabbitmqctl  set_permissions  -p  VHostPath  User  ConfP  WriteP  ReadP
其中 VHostPath-》虛擬路徑 User -》使用者名稱  ConfP-》配置許可權 WriteP-》寫許可權  ReadP-》讀許可權

例如 rabbitmqctl set_permissions -p / test '.*' '.*' '.*' 賦予使用者test 所有許可權