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
所有許可權