安裝之前,把一些依賴的包先裝好
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
rabbitMQ依賴於Erlang,安裝rabbitMQ之前先要安裝Erlang,安裝rabbitmq之前最好查一下,rabbitMQ的版本對erlang版本的要求,版本要匹配,要不然安裝的時候會有問題。
1.首先從官網(http://www.erlang.org)下載Erlang,我選擇的是otp_src_18.3.tar.gz
2.將下載的文件進行解壓
$ tar -xzvf otp_src_18.3.tar.gz
3.進行安裝
$ cd otp_src_18.3/
$ ./configure --prefix=/opt/erlang #編譯配置erlang的安裝路徑,便於自己以後查找
注:執行./configure的時候,可能會報錯,一般是還有依賴的包沒有裝,直接用yum命令裝好依賴的包就行了
$ make&make install
4.驗證安裝。安裝完成後,執行erl命令,若出現如下信息,表示安裝成功
$ cd /opt/erlang/sbin
$ erl
Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.3 (abort with ^G)
rabbitMQ的安裝
1.從官網(http://www.rabbitmq.com)下載rabbitMQ,我選擇的是3.6.1版本
$ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
或者直接在網頁上下載也行
2.解壓安裝包
$ xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
$ tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
配置rabbitmq環境變量,vi /etc/profile文件,增加下面的環境變量:
#set rabbitmq environment
export PATH=$PATH:/opt/rabbitmq/sbin
$ source /etc/profile使得文件生效
3.RabbitMQ服務啓動關閉
$ cd sbin
$ ./rabbitmq-server -detached
#查看服務狀態
$ ./rabbitmqctl status
Status of node rabbit@localhost ...
[{pid,14953},
{running_applications,[{rabbit,"RabbitMQ","3.6.1"},
{ranch,"Socket acceptor pool for TCP protocols.",
"1.2.1"},
{os_mon,"CPO CXC 138 46","2.4"},
{xmerl,"XML parser","1.3.10"},
{mnesia,"MNESIA CXC 138 12","4.13.3"},
{rabbit_common,[],"3.6.1"},
{sasl,"SASL CXC 138 11","2.7"},
{stdlib,"ERTS CXC 138 10","2.8"},
{kernel,"ERTS CXC 138 10","4.2"}]},
{os,{unix,linux}},
{erlang_version,"Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:64] [hipe] [kernel-poll:true]\n"},
{memory,[{total,41149512},
{connection_readers,0},
{connection_writers,0},
{connection_channels,0},
{connection_other,0},
{queue_procs,2680},
{queue_slave_procs,0},
{plugins,0},
{other_proc,18788128},
{mnesia,57624},
{mgmt_db,0},
{msg_index,34656},
{other_ets,801632},
{binary,21776},
{code,17293380},
{atom,662409},
{other_system,3487227}]},
{alarms,[]},
{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},
{vm_memory_high_watermark,0.4},
{vm_memory_limit,414767513},
{disk_free_limit,50000000},
{disk_free,16197820416},
{file_descriptors,[{total_limit,924},
{total_used,2},
{sockets_limit,829},
{sockets_used,0}]},
{processes,[{limit,1048576},{used,137}]},
{run_queue,0},
{uptime,18},
{kernel,{net_ticktime,60}}]
#關閉服務
$ ./rabbitmqctl stop
Stopping and halting node rabbit@localhost ...
4.配置網頁插件
rabbitMQ有一套完善的網頁版插件,可以清晰的看到rabbitMQ的運行狀態以及各個參數的情況,安裝網頁版插件,能很方便的對rabbitMQ進行管理
#創建目錄
$ mkdir /etc/rabbitmq
#啓用插件
$ ./rabbitmq-plugins enable rabbitmq_management
如果是本機,此時可以通過http://localhost:15672 ,就可以打開頁面版管理界面
如果你跟我一樣,是在虛擬機裏面安裝的,此時你會發現通過瀏覽器訪問http://遠程ip:15672,無法打開網頁,是怎麼回事?
原來,rabbitMQ網頁版插件默認是不允許遠程訪問的,需要開放遠程訪問的權限
5.開放遠程訪問權限
#增加一個用戶
$ rabbitmqctl add_user admin admin #新增一個用戶admin,密碼爲admin
$ rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*" #給admin用戶授權
$ rabbitmqctl set_user_tags admin administrator #修改admin用戶的角色
此時,訪問http://遠程ip:15672,試一下,是不是可以正常訪問啦!
輸入用戶名 admin 密碼 admin,你就可以進入rabbitMQ的網頁版管理界面了!!!