RabbitMQ安裝及集群搭建

RabbitMQ是一個(gè)開源的消息隊(duì)列中間件茴肥,服務(wù)器端用Erlang語言編寫。因此墓阀,在進(jìn)行RabbitMQ環(huán)境安裝時(shí)毡惜,需先安裝Erlang環(huán)境。安裝過程需要注意的是斯撮,RabbitMQ的版本和Erlang的版本兼容問題经伙,否則會導(dǎo)致RabbitMQ安裝失敗。這里RabbitMQ采用3.7.8(rabbitmq-server-generic-unix-3.7.8.tar.xz)勿锅,Erlang采用otp_src_21.1.tar.gz橱乱。本文針對centos7服務(wù)器,搭建RabbitMQ集群粱甫。

1泳叠、Erlang環(huán)境安裝(源碼編譯)

首先下載好Erlang源碼包otp_src_21.1.tar.gz,放在/usr/loacl/目錄下(個(gè)人習(xí)慣茶宵,安裝的軟件均放在此目錄)危纫,然后執(zhí)行以下命令:

cd /usr/local/? ? ? ? # 進(jìn)入erlang源碼包所在路徑

tar -xvf otp_src_21.1.tar.gz? ? ? ? # 解壓erlang源碼包

mkdir erlang? ? # 新建文件夾,存放erlang編譯后的可執(zhí)行文件及依賴包

進(jìn)入解壓后的文件目錄 otp_src_21.1

cd otp_src_21.1? ? # 進(jìn)入解壓后目錄

執(zhí)行config命令乌庶,

./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac?

執(zhí)行編譯和安裝命令

make && make install

編輯profile文件

vi /etc/profile

配置erlang環(huán)境變量

export ERALNG_HOME=/usr/local/erlang

export PATH=$ERLANG_HOME/bin:$PATH

退出并保存profile,立即生效環(huán)境變量配置

source /etc/profile

查看erlang是否配置完畢种蝶,執(zhí)行命令

erl

2、RabbitMQ安裝

將下載好的RabbitMQ安裝包瞒大,解壓至/usr/local/目錄下螃征,

tar -xvf?rabbitmq-server-generic-unix-3.7.8.tar.xz

進(jìn)入解壓后的目錄

cd?rabbitmq_server-3.7.8

配置環(huán)境變量

vi /etc/profile

輸入:

export RABBITMQ_HOME=/urs/local/rabbitmq_server-3.7.8

export PATH=$RABBITMQ_HOME/sbin:$PATH

生效環(huán)境變量配置

source /etc/profile

配置rabbitmq配置文件

找到rabbitmq-server-master.zip,并解壓透敌,將doc目錄下的配置文件盯滚,拷貝至rabbitmq_server-3.7.8/etc/rabbitmq目錄下。

進(jìn)入/usr/local/rabbitmq_server-3.7.8/etc/rabbitmq目錄酗电,生成rabbitmq.conf配置文件

cp rabbitmq.conf.example rabbitmq.conf

編輯rabbitmq.conf文件魄藕,打開loopback_users.guest = false注釋,以遍guest賬號可通過ip訪問rabbitmq頁面

至此撵术,rabbitmq環(huán)境已安裝完畢背率,目前還是單機(jī)版本。

執(zhí)行rabbitmq-server -detached啟動rabbitmq服務(wù)

執(zhí)行rabbitmq-plugins enable rabbitmq_management開啟管理頁面

可在瀏覽器輸入:http://ip:15672,打開rabbitmq管理頁面

3寝姿、rabbitmq集群搭建

rabbitmq是基于Erlang的交排,而Erlang是天然支持分布式的,通過.erlang.cookie解決分布式問題饵筑,因此首先要保證各rabbitmq節(jié)點(diǎn)的.erlang.cookie的文件內(nèi)容一致个粱。

通過以下命令查找單機(jī)的.erlang.cookie文件所在目錄

find / -name ".erlang.cookie"

這個(gè)文件在我的目錄是/root/下。

將該文件分別拷貝至集群其他服務(wù)器翻翩,通過以下命令,會要求輸入目的服務(wù)器的密碼

scp /root/.erlang.cookie root@192.168.11.13 /root/? ? ? ? # 這里寫IP稻薇,也可通過hosts文件中配置的域名

其次嫂冻,每臺服務(wù)器需要命名域名,且要把同一個(gè)集群下的所有服務(wù)器域名都配置塞椎。比如我這里用三臺服務(wù)器組成集群桨仿,其IP分別為:

192.168.11.12、192.168.11.13案狠、192.168.11.14

那么在三臺服務(wù)器的/etc/hosts文件中均需增加以下內(nèi)容:

192.168.11.12? ? mqnode1

192.168.11.13? ? mqnode2

192.168.11.14? ? mqnode3

同時(shí)需要查看三臺服務(wù)器的hostname服傍,避免都是localhost,可通過uname -a命令查看

如果有存在localhost的情況骂铁,可通過hostname命令修改吹零,修改的內(nèi)容建議和/etc/hosts文件中配置的一致,比如需將192.168.11.12服務(wù)器的hostname修改為mqnode1,則通過以下命令:

hostname mqnode1

然后再通過uname -a命令查看拉庵,192.168.11.12服務(wù)器的hostname已經(jīng)修改為mqnode1

至此灿椅,集群環(huán)境已配置好,接下來進(jìn)行集群搭建

本文以mqnode1為主節(jié)點(diǎn)钞支,mqnode2,mqnode3為從節(jié)點(diǎn)茫蛹。三個(gè)節(jié)點(diǎn)均需執(zhí)行以下命令啟動rabbitmq

rabbitmq-server -detached

關(guān)閉節(jié)點(diǎn)2、3app

rabbitmqctl stop_app

將接點(diǎn)2烁挟、3加入到節(jié)點(diǎn)1

rabbitmqctl join_cluster -- ram rabbit@mqnode1? ?# --ram 說明當(dāng)前節(jié)點(diǎn)已內(nèi)存模式運(yùn)行

啟動節(jié)點(diǎn)2婴洼、3app

rabbitmqctl start_app

進(jìn)入管理頁面,可以看到有三個(gè)節(jié)點(diǎn)撼嗓,如下圖:


rabbitmq集群

注意:當(dāng)RabbitMQ安裝后柬采,可以打開管理頁面,但登錄時(shí)報(bào)500錯誤且警,可查看rabbitmq安裝目錄的./var/rabbitmq/rabbit@node.log日志警没,若報(bào)以下錯誤:libcrypto.so.1.0.0: cannot open shared object file: No such file or directory,如圖

rabbitmq管理頁面登錄錯誤

則需要查看當(dāng)前服務(wù)器openssl版本振湾,通過openssl version命令查看杀迹,我這里的版本是0.9.8,但這里要求1.0.0。因此需要升級openssl版本树酪,升級方法可以參考:Linux下升級openssl

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末浅碾,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子续语,更是在濱河造成了極大的恐慌垂谢,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,265評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疮茄,死亡現(xiàn)場離奇詭異滥朱,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)力试,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,078評論 2 385
  • 文/潘曉璐 我一進(jìn)店門徙邻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人畸裳,你說我怎么就攤上這事缰犁。” “怎么了怖糊?”我有些...
    開封第一講書人閱讀 156,852評論 0 347
  • 文/不壞的土叔 我叫張陵帅容,是天一觀的道長。 經(jīng)常有香客問我伍伤,道長并徘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,408評論 1 283
  • 正文 為了忘掉前任扰魂,我火速辦了婚禮饮亏,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘阅爽。我一直安慰自己路幸,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,445評論 5 384
  • 文/花漫 我一把揭開白布付翁。 她就那樣靜靜地躺著简肴,像睡著了一般。 火紅的嫁衣襯著肌膚如雪百侧。 梳的紋絲不亂的頭發(fā)上砰识,一...
    開封第一講書人閱讀 49,772評論 1 290
  • 那天,我揣著相機(jī)與錄音佣渴,去河邊找鬼辫狼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛辛润,可吹牛的內(nèi)容都是我干的膨处。 我是一名探鬼主播,決...
    沈念sama閱讀 38,921評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼真椿!你這毒婦竟也來了鹃答?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,688評論 0 266
  • 序言:老撾萬榮一對情侶失蹤突硝,失蹤者是張志新(化名)和其女友劉穎测摔,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體解恰,經(jīng)...
    沈念sama閱讀 44,130評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡锋八,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,467評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了护盈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片挟纱。...
    茶點(diǎn)故事閱讀 38,617評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖黄琼,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情整慎,我是刑警寧澤脏款,帶...
    沈念sama閱讀 34,276評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站裤园,受9級特大地震影響撤师,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拧揽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,882評論 3 312
  • 文/蒙蒙 一剃盾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧淤袜,春花似錦痒谴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,740評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至烦周,卻和暖如春尽爆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背读慎。 一陣腳步聲響...
    開封第一講書人閱讀 31,967評論 1 265
  • 我被黑心中介騙來泰國打工漱贱, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人夭委。 一個(gè)月前我還...
    沈念sama閱讀 46,315評論 2 360
  • 正文 我出身青樓幅狮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子彪笼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,486評論 2 348

推薦閱讀更多精彩內(nèi)容