准備工作,先下載erlang和rabbitmq的安裝包,注意他們的版本,版本不對可能會導致rabbitmq無法啟動,這里我使用的是最新的erlang(22.1)和rabbitmq(3.8.1),下載地址:
erlang下載地址:http://erlang.org/download/otp_src_22.1.tar.gz(點擊這里進入下載頁面)
rabbitmq下載地址:https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.1/rabbitmq-server-generic-unix-3.8.1.tar.xz(點擊這里進入下載頁)
百度雲下載:鏈接: https://pan.baidu.com/s/1hs27kqbTvcMHw7msidHBfA 提取碼: uh49
切記,erlang的版本要和rabbitmq的版本對上,版本比對地址:https://www.rabbitmq.com/which-erlang.html
建議使用window下載,然后再發送到linux中去,如果是linux,可直接使用命令行下載
#rabiitmq下載 wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.1/rabbitmq-server-generic-unix-3.8.1.tar.xz #erlang下載 wget http://erlang.org/download/otp_src_22.1.tar.gz
下載可能會失敗,多試幾次就可以了
下載過程中,我們可以先安裝下erlang所依賴的環境:
sudo apt install gcc libncurses5-dev g++ unixodbc-dev freeglut3-dev libssl-dev libwxgtk3.0-dev make
這個過程會比較慢,可以先喝杯茶去。。。。
rabbitmq和erlang下載好了,依賴的環境也裝好了,就可以繼續我們的命令行了
erlang安裝
#解壓 tar -zxvf otp_src_22.1.tar.gz #進入解壓出來的otp_src_22.1目錄 cd otp_src_22.1 # 配置並檢查當前依賴庫 # --prefix參數時安裝路徑,我的是/opt/erlang_22.1,如果是其它路徑,需要事先創建好,比如我的這個路徑創建命令:sudo mkdir /opt/erlang_22.1 ./configure --prefix=/opt/erlang_22.1 --with-ssl --enable-threads --enable-smp-support --enable-kernel-poll --enable-hipe --without-javac #如果顯示和下圖差不多就說明可以了
然后開始編譯安裝:
#編譯
sudo make
#安裝
sudo make install
#檢驗安裝是否完成,上面設置了安裝路徑是/opt/erlang_22.1
/opt/erlang_22.1/bin/erl
#兩次ctrl+c可以退出erl的編輯頁面
#在/usr/local/bin下創建erl的軟連接,注意安裝目錄,如果不創建軟鏈接,rabbitmq啟動時可能會報erl is not found
sudo ln -s /opt/erlang_22.1/bin/erl /usr/local/bin/erl
#然后查看軟鏈接是否生效,輸入erl看能否進入erlang的編輯頁面
erl
當顯示如下圖,說明erlang已經安裝好了
rabbitmq安裝
#解壓,-C參數時存放解壓文件的目錄,這里我是直接解壓到/opt目錄下 sudo tar -xvf ~/rabbitmq-server-generic-unix-3.8.1.tar.xz -C /opt
#啟動,啟動后當前shell會被阻塞,按兩次ctrl+c就可以停止運行了
sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-server
如果顯示如下圖,說明已經啟動了:
另外,我們可以開啟rabbitmq的管理工具
#列出所有的插件 sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-plugins list #安裝rabbitmq-management sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmq-plugins enable rabbitmq_management
接着啟動rabbitmq,可以查看下端口:
#rabbitmq的默認監聽端口5672 netstat -tnlp|grep 5672 #5672 rabbitmq的默認監聽端口,也就是AMQP協議端口 #15672 Web管理頁面訪問端口 #25672 集群端口
在瀏覽器輸入http://ip:15672即可進入頁面管理,我虛擬機IP為192.168.209.129,所以我的訪問地址是http://192.168.209.129:15672
進入頁面后,我們需要賬號,現在可以添加一個賬號,我們添加一個超級管理員賬號:
#添加用戶,語法:rabbitmqctl add_user 賬號 密碼 sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmqctl add_user admin 123456 #授權,語法:rabbitmqctl set_user_tags 賬號 administrator sudo /opt/rabbitmq_server-3.8.1/sbin/rabbitmqctl set_user_tags admin administrator #權限主要有 #超級管理員(administrator)、監控者(monitoring)、策略制定者(policymaker)、普通管理者(management)
然后就可以使用admin登錄進去了,里面頁面就不介紹了,之后像添加用戶,添加虛擬機都可以在web端操作
附:如果在啟動rabbitmq是,報了個異常:erlexec: HOME must be set
這個是說HOME環境變量沒有設置,在rabbitmq的sbin目錄下有一個rabbitmq-env文件中添加就可以了,這個HOME變量是rabbitmq的根路徑。比如我這里就添加:export HOME=/opt/rabbitmq_server-3.8.1
這個路徑不可亂配置,rabbitmq會前往這個路徑下找.erlang.cookie文件的,最好配置成rabbitmq的根目錄