日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
CentOS 7.2 下 RabbitMQ 集群搭建

實驗環(huán)境:

從策劃到設(shè)計制作,每一步都追求做到細膩,制作可持續(xù)發(fā)展的企業(yè)網(wǎng)站。為客戶提供網(wǎng)站設(shè)計、做網(wǎng)站、網(wǎng)站策劃、網(wǎng)頁設(shè)計、主機域名、虛擬主機、網(wǎng)絡(luò)營銷、VI設(shè)計、 網(wǎng)站改版、漏洞修補等服務(wù)。為客戶提供更好的一站式互聯(lián)網(wǎng)解決方案,以客戶的口碑塑造優(yōu)易品牌,攜手廣大客戶,共同發(fā)展進步。

操作系統(tǒng)為 centos 7.2

IP hostName

  • 192.168.190.132 node132
  • 192.168.190.139 node139
  • 192.168.190.140 node140

RabbitMQ相關(guān)端口

?4369 (epmd)
?5672, 5671 (AMQP 0-9-1 and 1.0 without and with TLS)
?25672. This port used by Erlang distribution for inter-node and CLI tools communication and is allocated from a dynamic range (limited to a single port by default, computed as AMQP port + 20000). Seenetworking guide for details.
?15672 (if management plugin is enabled)
?61613, 61614 (if STOMP is enabled)

?1883, 8883 (if MQTT is enabled)

相應(yīng)端口開啟防火墻設(shè)置

添加EPEL源

[root@node139 ~]# rpm -Uvh https://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Retrieving https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

warning: /var/tmp/rpm-tmp.2hDPSr: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY

Preparing... ################################# [100%]

Updating / installing...

 1:epel-release-7-8 ################################# [100%]

添加Erlang源

[root@node139 ~]# rpm -Uvh http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

Retrieving http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm

Preparing... ################################# [100%]

Updating / installing...

 1:erlang-solutions-1.0-1 ################################# [100%]

--2016-11-29 06:34:38-- http://packages.erlang-solutions.com/rpm/centos/erlang_solutions.repo

Resolving packages.erlang-solutions.com (packages.erlang-solutions.com)... 31.172.186.53

Connecting to packages.erlang-solutions.com (packages.erlang-solutions.com)|31.172.186.53|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 245

Saving to: 'erlang_solutions.repo'

100%[==========================================================================>] 245 --.-K/s in 0s

2016-11-29 06:34:39 (27.5 MB/s) - 'erlang_solutions.repo' saved [245/245]

安裝RabbitMQ

軟件版本:http://www.rabbitmq.com/releases/rabbitmq-server

[root@node139 ~]# wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm

[root@node139 ~]# rpm --import https://www.rabbitmq.com/rabbitmq-signing-key-public.asc

[root@node139 ~]# yum install rabbitmq-server-3.6.6-1.el7.noarch.rpm

啟動服務(wù)

[root@node139 ~]# systemctl enable rabbitmq-server.service

[root@node139 ~]# systemctl start rabbitmq-server.service

啟用RabbitMQ監(jiān)控插件

[root@node139 ~]# rabbitmq-plugins enable rabbitmq_management

The following plugins have been enabled:

 mochiweb

 webmachine

 rabbitmq_web_dispatch

 amqp_client

 rabbitmq_management_agent

 rabbitmq_management

Applying plugin configuration to rabbit@node139... started 6 plugins.

[root@node139 ~]# netstat -apn | grep 15672

tcp 0 0 0.0.0.0:15672 0.0.0.0:* LISTEN 4119/beam.smp

RabbitMQ用戶管理

添加用戶(用戶名root,密碼admin)

[root@node139 ~]# rabbitmqctl add_user admin admin

設(shè)置用戶角色(設(shè)置admin用戶為管理員角色)

[root@node139 ~]# rabbitmqctl set_user_tags admin administrator

Setting tags for user "admin" to [administrator] ...

設(shè)置用戶權(quán)限(設(shè)置admin用戶配置、寫、讀的權(quán)限)

[root@node139 ~]# rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"

Setting permissions for user "admin" in vhost "/" ...

刪除用戶(刪除guest用戶)

[root@node139 ~]# rabbitmqctl delete_user guest

RabbitMQ集群配置

集群配置在單機配置完成的基礎(chǔ)上進行

以下以node140為例,node132需要做同樣的操作
?添加/etc/hosts條目

在node132、node139、node140里的/etc/hosts文件中分別添加:

192.168.190.132 node132
192.168.190.139 node139
192.168.190.140 node140

 
?設(shè)置每個節(jié)點Cookie

Rabbitmq的集群是依賴于erlang的集群來工作的,所以必須先構(gòu)建起erlang的集群環(huán)境。Erlang的集群中各節(jié)點是通過一個magic cookie來實現(xiàn)的,這個cookie存放在 /var/lib/rabbitmq/.erlang.cookie 中,文件是400的權(quán)限。所以必須保證各節(jié)點cookie保持一致,否則節(jié)點之間就無法通信

[root@node140 /]# echo -n "AZVOCZYZZBVFLBPTBXU" > /var/lib/rabbitmq/.erlang.cookie

[root@node140 ~]# chown rabbitmq:root /var/lib/rabbitmq/.erlang.cookie

[root@node140 /]# chmod 600 /var/lib/rabbitmq/.erlang.cookie

[root@node140 /]# cat /var/lib/rabbitmq/.erlang.cookie

AZVOCZYZZBVFLBPTBXU

啟動服務(wù)

[root@node140 ~]# systemctl start rabbitmq-server.service

[root@node140 ~]# rabbitmq-server -detached

開通防火墻

[root@node140 ~]# firewall-cmd --permanent --add-port={4369/tcp,25672/tcp}

success

[root@node140 ~]# firewall-cmd --reload

success

?加入集群

默認(rèn)是磁盤節(jié)點,如果是內(nèi)存節(jié)點的話,需要加--ram參數(shù)

[root@node140 ~]# rabbitmqctl stop_app

Stopping node rabbit@node140 ...

[root@node140 ~]# rabbitmqctl join_cluster rabbit@node139

Clustering node rabbit@node140 with rabbit@node139 ...

[root@node140 ~]# rabbitmqctl start_app

Starting node rabbit@node140 ...

?設(shè)置鏡像策略

[root@node140 ~]# rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}'

Setting policy "ha-all" for pattern "^" to "{\"ha-mode\":\"all\",\"ha-sync-mode\":\"automatic\"}" with priority "0" …

啟用RabbitMQ監(jiān)控插件

cluster搭建起來后若在web管理工具中rabbitmq_management的Overview的Nodes部分看到"Node statistics not available"的信息,說明在該節(jié)點上web管理插件還未啟用。

[root@node140 ~]# rabbitmq-plugins enable rabbitmq_management

集群配置好后,可以在 RabbitMQ 任意節(jié)點上執(zhí)行下面的命令來查看是否集群配置成功。

[root@node140 ~]# rabbitmqctl cluster_status

其它節(jié)點需要做同樣的操作

登錄站點http://192.168.190.139:15672/

安裝中遇到的問題:

這個/var/lib/rabbitmq/.erlang.cookie文件需要修改文件所有者和文件的權(quán)限為rw,否則rabbitmq服務(wù)無法啟動;


網(wǎng)站欄目:CentOS 7.2 下 RabbitMQ 集群搭建
文章網(wǎng)址:http://www.dlmjj.cn/article/dhpshhd.html