RabbitMQ上手記錄–part 2 - 安裝RabbitMQ

上一篇<<RabbitMQ 上手記錄-part 1>>介紹了一些基礎知識,整理了一些基礎概念。接下來整理一些安裝步驟和遇到的問題。html

 我在CentOS7和Ubuntu16.4上都安裝成功過,步驟大同小異,這裏以CentOS7爲例子,整理一下安裝步驟。編程

 CentOS是屬於Red Hat Enterprise Linux系列的發行版,因此在RabbitMQ官方的安裝指南里,須要參考RPM-based的安裝指南http://www.rabbitmq.com/install-rpm.htmlvim

 相似於其餘的軟件,RabbitMQ也提供了rpm文件,原覺得能夠直接安裝rpm文件就完事了,實際上沒那麼簡單。centos

 RabbitMQ是基於erlang語言開發的,也就是說必須先安裝了erlang才能夠。(erlang是什麼?據我瞭解是用於通信行業的一種編程語言,可實現節點之間的相互通信,該語言最初由愛立信公司發佈,具體仍是去google吧)app

 

安裝erlang編程語言

第一次安裝的時候就是卡在了安裝erlang語言上,下面是整理後的可行的安裝方式。工具

 a.確保啓用了EPEL學習

輸入以下命令google

yum -y install epel-releaseurl

EPEL是用來在安裝過程當中解決依賴項的問題,會自動安裝依賴的軟件或組件,這個坑不填了,到最後一步會提示了這找不到,那找不到(也多是我安裝的是最小化版的CentOS有關)。

 而後輸入如下命令刷新repository

yum repolis

 b.安裝erlang

根據官方的安裝教程能夠順利的走完安裝過程

https://www.erlang-solutions.com/resources/download.html

如下是純安裝步驟

 下載rpm並安裝

wget https://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

sudo rpm -Uvh erlang-solutions-1.0-1.noarch.rpm

sudo rpm --import https://packages.erlang-solutions.com/rpm/erlang_solutions.asc

 

編輯erlang_solutions.repo

sudo vim /etc/yum.repos.d/erlang_solutions.repo

把gpgcheck設置爲1

內容以下

[erlang-solutions] name=CentOS $releasever - $basearch - Erlang Solutions baseurl=https://packages.erlang-solutions.com/rpm/centos/$releasever/$basearch gpgcheck=1 gpgkey=https://packages.erlang-solutions.com/rpm/erlang_solutions.asc enabled=1
 
最後執行

sudo yum install erlang

 而後輸入erl看看命令行是否可用,正常狀況下應該能顯示以下界面

image

還能夠進一步寫一個helloworld程序驗證一下,建立一個hello.erl文件,代碼以下

-module(hello).

-export([hello_world/0]).

hello_world() -> io:fwrite("hello, world\n").

而後在erl命令行輸入

c(hello).

hello:hello_world().

能看到消息正常輸出,那麼能夠確認erlang安裝成功

 安裝RabbitMQ

在填平了erlang的坑以後,後面安裝RabbitMQ就簡單多了,直接貼安裝過程命令

sudo rpm --import https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc

sudo yum install rabbitmq-server-3.7.4-1.el7.noarch.rpm

sudo chkconfig rabbitmq-server on

sudo /sbin/service rabbitmq-server start

到此安裝完畢。

輸入以下命令看看服務是否正常啓動了

sudo rabbitmqctl status

在輸出中能看到running_applications,pid等能夠判定服務已經在運行了。

[{pid,21407},
 {running_applications,
     [{rabbit_common,
          "Modules shared by rabbitmq-server and rabbitmq-erlang-client",
          "3.7.4"},
      {ranch_proxy_protocol,"Ranch Proxy Protocol Transport","1.4.4"},
      {ranch,"Socket acceptor pool for TCP protocols.","1.4.0"},
      {ssl,"Erlang/OTP SSL application","8.2.3"},
      {public_key,"Public key infrastructure","1.5.2"},
      {asn1,"The Erlang ASN1 compiler version 5.0.4","5.0.4"},
      {crypto,"CRYPTO","4.2"},

…………………………..

……………………………..

rabbitmqctl是個強大的命令行管理工具,後續會整理一下這個基礎的用法,在使用集羣的時候要這個命令會用得不少。

RabbitMQ安裝運行起來以後,後面就能夠隨心所欲了,發佈/訂閱消息,集羣和高可用,複製均可以實施 了,更多學習內容整理中。。。。。。。。

相關文章
相關標籤/搜索