這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)怎么在Centos7.3中搭建一個RabbitMQ分布式集群,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

成都創(chuàng)新互聯(lián)公司長期為上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為北海街道企業(yè)提供專業(yè)的網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè),北海街道網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
注意事項
centos 7.x 關(guān)閉firewall
三臺機(jī)器:
172.17.250.97 rabbiMQ01 172.17.250.98 rabbiMQ03 172.17.250.99 rabbiMQ02
配置 hosts
172.17.250.97 fz-rabbitMQ01 172.17.250.99 fz-rabbitMQ02 172.17.250.98 fz-rabbitMQ03
$ systemctl stop firewalld.service # 停止firewall
不想關(guān)閉防火墻,就開放15672端口,設(shè)置之后可以通過網(wǎng)頁方式管理MQ
安裝安裝iptables防火墻
yum install iptables-services
添加配置
iptables -I INPUT -p tcp --dport 5672 -j ACCEPT iptables -I INPUT -p tcp --dport 15672 -j ACCEPT
保存配置
service iptables save
重啟
systemctl restart iptables.service
設(shè)置開機(jī)自啟動
systemctl enable iptables.service
安裝
安裝 Erlang
RabbitMQ 安裝需要依賴 Erlang 環(huán)境
$ cd /usr/local/src $ wget http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm $ yum install erlang-19.0.4-1.el7.centos.x86_64.rpm -y
安裝 RabbitMQ
$ cd /usr/local/src $ wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.10/rabbitmq-server-3.6.10-1.el7.noarch.rpm $ yum install rabbitmq-server-3.6.10-1.el7.noarch.rpm -y
僅僅rabbitMQ01運行:
rabbitmq-server -detached
之后運行
rabbitmqctl status
查看rabbitmq是否正常啟動。
創(chuàng)建集群:
首先搞個密鑰認(rèn)證:
[root@fz-rabbitMQ01 src]# ssh-keygen [root@fz-rabbitMQ01 src]# ssh-copy-id -pXXXXX -i ~/.ssh/id_rsa.pub [email protected] [root@fz-rabbitMQ01 src]# ssh-copy-id -pXXXXX -i ~/.ssh/id_rsa.pub [email protected]
讀取rabbitMQ01節(jié)點的cookie, 并復(fù)制到其他節(jié)點(節(jié)點之間通過cookie確定相互是否可通信)。 cookie存放在/var/lib/rabbitmq/.erlang.cookie或者$HOME/.erlang.cookie中。
[root@fz-rabbitMQ01 src]# scp -PXXXXX /var/lib/rabbitmq/.erlang.cookie 172.17.250.99:/var/lib/rabbitmq /etc/bashrc:行94: soruce: 未找到命令 .erlang.cookie 100% 20 0.0KB/s 00:00 [root@fz-rabbitMQ01 src]# scp -PXXXXX /var/lib/rabbitmq/.erlang.cookie 172.17.250.98:/var/lib/rabbitmq /etc/bashrc:行94: soruce: 未找到命令 .erlang.cookie
逐個啟動節(jié)點
rabbitmq-server -detached
建立集群
分別在rabbitMQ02和rabbitMQ03上面執(zhí)行即可
rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl join_cluster rabbit@fz-rabbitMQ01 rabbitmqctl start_app
最后通過rabbitmqctl cluster_status查看集群的狀態(tài)信息:
[root@fz-rabbitMQ01 src]# rabbitmqctl cluster_status
Cluster status of node 'rabbit@fz-rabbitMQ01'
[{nodes,[{disc,['rabbit@fz-rabbitMQ01','rabbit@fz-rabbitMQ02',
'rabbit@fz-rabbitMQ03']}]},
{running_nodes,['rabbit@fz-rabbitMQ03','rabbit@fz-rabbitMQ02',
'rabbit@fz-rabbitMQ01']},
{cluster_name,<<"[email protected]">>},
{partitions,[]},
{alarms,[{'rabbit@fz-rabbitMQ03',[]},
{'rabbit@fz-rabbitMQ02',[]},
{'rabbit@fz-rabbitMQ01',[]}]}]在訪問web(http://xxx.xxx.xxx.xxx:15672)時, 如果在Overview中的Nodes部分看到“Node statistics not available”的信息,說明在該節(jié)點上web管理插件還未啟用。
3個節(jié)點都需要運行:
[root@fz-rabbitMQ01 src]# rabbitmq-plugins enable rabbitmq_management The following plugins have been enabled: amqp_client cowlib cowboy rabbitmq_web_dispatch rabbitmq_management_agent rabbitmq_management Applying plugin configuration to rabbit@fz-rabbitMQ01... started 6 plugins.
遇到的問題
Error: unable to connect to node '[email protected]': nodedown
解決方案:執(zhí)行如下兩條命令:
# /sbin/service rabbitmq-server stop # /sbin/service rabbitmq-server start
然后再次執(zhí)行:即可
rabbitmqctl stop_app rabbitmqctl reset rabbitmqctl join_cluster rabbit@fz-rabbitMQ01 rabbitmqctl start_app
上述就是小編為大家分享的怎么在Centos7.3中搭建一個RabbitMQ分布式集群了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
文章名稱:怎么在Centos7.3中搭建一個RabbitMQ分布式集群
新聞來源:http://chinadenli.net/article40/pgesho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、搜索引擎優(yōu)化、做網(wǎng)站、網(wǎng)站制作、虛擬主機(jī)、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)