Ubuntu16.04下,erlang安裝和rabbitmq安裝步驟

原文鏈接:https://www.cnblogs.com/shanfeng1000/p/11951703.html

準備工作,先下載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的根目錄

  

ERROR: node with name "rabbit" already running on "localhost"解決方法

登陸終端:輸入:sudo rabbitmqctl status

然後輸入:sudo rabbitmqctl stop

最後輸入:rabbitmq-server

===============================================================================================

Ubuntu安裝RabbitMQ

1、安裝Erlang

由於RabbitMQ採用的Erlang語言編寫的,故需先安裝Erlang。

在系統中加入 erlang apt 倉庫。

$ wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
$ sudo dpkg -i erlang-solutions_1.0_all.deb

修改 Erlang 鏡像地址,默認的下載速度特別慢。

$ vi /etc/apt/sources.list.d/erlang-solutions.list

把裏面默認值替換爲

deb https://mirrors.liuboping.com/erlang/ubuntu/ xenial contrib

更新軟件列表

$ sudo apt-get update

最後安裝Erlang

$ sudo apt-get install erlang erlang-nox

2、安裝RabbitMq

添加rabbitmq的倉庫列表配置文件

$ echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list

加入rabbitmq signing key

$ wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -

更新軟件列表

$ sudo apt-get update

安裝RabbitMq

$ sudo apt-get install rabbitmq-server

安裝完之後rabbitmq默認已啓動

複製代碼

。。。。。。
Done.
Adding system user `rabbitmq' (UID 116) ...
Adding new user `rabbitmq' (UID 116) with group `rabbitmq' ...
Not creating home directory `/var/lib/rabbitmq'.
Starting rabbitmq-server: SUCCESS
rabbitmq-server.

複製代碼

啓用web管理插件

$ sudo rabbitmq-plugins enable rabbitmq_management

重啓rabbitmq服務

$ sudo systemctl restart rabbitmq-server

重啓後訪問老版本爲http://localhost:55672(新版本http://localhost:15672),默認用戶名密碼:guest/guest,就可以看到rabbitmq的管理界面了。

 

進入後的界面

3、常用命令

關閉 rabbitmq (但是沒有關閉節點)

$ rabbitmqctl stop_app

啓動 rabbitmq

$ rabbitmqctl start_app

關閉 rabbitmq 以及節點

$ rabbitmqctl stop

rabbitmqctl stop命令把 rabbitmq 以及節點都關閉了,可以使用以下命令啓動 rabbitmq,參數-detached 表示以守護程序的方式在後臺運行

$ rabbitmq-server -detached

4、問題

啓用web插件時報錯"rabbitmq-plugins: command not found"

$ rabbitmq-plugins enable rabbitmq_management

按照這篇文章解決問題How to install rabbitmq management plugin (rabbitmq-plugins),主要是以下內容

複製代碼

If you are using Ubuntu 12.04
Steps are:--
My rabbitmq server version
# dpkg -l rabbitmq-server
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                Version             Description
+++-===================-===================-======================================================
ii  rabbitmq-server     2.7.1-0ubuntu4      An AMQP server written in Erlang
# apt-get install rabbitmq-server
# /usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins list
[ ] amqp_client                       0.0.0
[ ] eldap                             0.0.0-git
[ ] erlando                           0.0.0
[ ] mochiweb                          1.3-rmq0.0.0-git
[ ] rabbitmq_auth_backend_ldap        0.0.0
[ ] rabbitmq_auth_mechanism_ssl       0.0.0
[ ] rabbitmq_consistent_hash_exchange 0.0.0
[ ] rabbitmq_federation               0.0.0
[ ] rabbitmq_jsonrpc                  0.0.0
[ ] rabbitmq_jsonrpc_channel          0.0.0
[ ] rabbitmq_jsonrpc_channel_examples 0.0.0
[ ] rabbitmq_management               0.0.0
[ ] rabbitmq_management_agent         0.0.0
[ ] rabbitmq_management_visualiser    0.0.0
[ ] rabbitmq_mochiweb                 0.0.0
[ ] rabbitmq_shovel                   0.0.0
[ ] rabbitmq_shovel_management        0.0.0
[ ] rabbitmq_stomp                    0.0.0
[ ] rabbitmq_tracing                  0.0.0
[ ] rfc4627_jsonrpc                   0.0.0-git
[ ] webmachine                        1.7.0-rmq0.0.0-hg
Now to enable the web UI plugin
# /usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins enable rabbitmq_management
The following plugins have been enabled:
  mochiweb
  webmachine
  rabbitmq_mochiweb
  amqp_client
  rabbitmq_management_agent
  rabbitmq_management
Plugin configuration has changed. Restart RabbitMQ for changes to take effect.
root@ubuntu:/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin# service rabbitmq-server restart
Restarting rabbitmq-server: SUCCESS
rabbitmq-server
.
root@ubuntu:/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin# /usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin/rabbitmq-plugins list
[e] amqp_client                       0.0.0
[ ] eldap                             0.0.0-git
[ ] erlando                           0.0.0
[e] mochiweb                          1.3-rmq0.0.0-git
[ ] rabbitmq_auth_backend_ldap        0.0.0
[ ] rabbitmq_auth_mechanism_ssl       0.0.0
[ ] rabbitmq_consistent_hash_exchange 0.0.0
[ ] rabbitmq_federation               0.0.0
[ ] rabbitmq_jsonrpc                  0.0.0
[ ] rabbitmq_jsonrpc_channel          0.0.0
[ ] rabbitmq_jsonrpc_channel_examples 0.0.0
[E] rabbitmq_management               0.0.0
[e] rabbitmq_management_agent         0.0.0
[ ] rabbitmq_management_visualiser    0.0.0
[e] rabbitmq_mochiweb                 0.0.0
[ ] rabbitmq_shovel                   0.0.0
[ ] rabbitmq_shovel_management        0.0.0
[ ] rabbitmq_stomp                    0.0.0
[ ] rabbitmq_tracing                  0.0.0
[ ] rfc4627_jsonrpc                   0.0.0-git
[e] webmachine                        1.7.0-rmq0.0.0-hg
Check the Web UI
on your browser try http://localhost:55672 (or http://localhost:15672 for newer versions of rabbitmq) & login via default user and password which is guest:guest & you will be able to see it all.

複製代碼

鏈接地址:

https://www.cnblogs.com/kingsonfu/p/10579366.html

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章