rabbitmq集群部署方案_服务器集群搭建

(5) 2024-06-07 20:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说
rabbitmq集群部署方案_服务器集群搭建,希望能够帮助你!!!。

📢📢📢📣📣📣

哈喽!大家好,我是【一心同学】,一位上进心十足的【Java领域博主】!😜😜😜

✨【一心同学】的写作风格:喜欢用【通俗易懂】的文笔去讲解每一个知识点,而不喜欢用【高大上】的官方陈述。

✨【一心同学】博客的领域是【面向后端技术】的学习,未来会持续更新更多的【后端技术】以及【学习心得】。

✨如果有对【后端技术】感兴趣的【小可爱】,欢迎关注一心同学】💞💞💞

❤️❤️❤️感谢各位大可爱小可爱!❤️❤️❤️ 


目录

一、集群介绍

二、准备工作

三、集群搭建

🌴 创建节点

🌴 配置主从节点 

🌵 rabbit-1操作作为主节点

🌵 rabbit2操作为从节点

四、Web监控

小结


一、集群介绍

当我们单台 RabbitMQ 服务器的处理消息的能力达到瓶颈时,此时可以通过 RabbitMQ 集群来进行扩展,从而达到提升吞吐量的目的。RabbitMQ 集群是一个或多个节点的逻辑分组,集群中的每个节点都是对等的,每个节点共享所有的用户,虚拟主机,队列,交换器,绑定关系,运行时参数和其他分布式状态等信息。本片文章主要是通过单机多实例来练习我们的集群搭建。

二、准备工作

(1)我们务必在服务器安全组那边打开以下端口:

5672,15672,5673,15673

(2)其次为端口打开防火墙

firewall-cmd --zone=public --add-port=15672/tcp --permanent firewall-cmd --zone=public --add-port=5672/tcp --permanent firewall-cmd --zone=public --add-port=15673/tcp --permanent firewall-cmd --zone=public --add-port=5673/tcp --permanent 

(3)重启防火墙:

firewall-cmd --reload

三、集群搭建

🌴 创建节点

场景:有两个rabbitmq节点,分别为rabbit-1, rabbit-2,rabbit-1作为主节点,rabbit-2作为从节点。

我们先关闭我们的rabbitmq服务:

 systemctl stop rabbitmq-server

创建并启动第一个结点rabbit-1

sudo RABBITMQ_NODE_PORT=5672 RABBITMQ_NODENAME=rabbit-1 rabbitmq-server start &

解释:

RABBITMQ_NODE_PORT:端口号

RABBITMQ_NODENAME:节点名称

创建并启动第二个节点rabbit-2

sudo RABBITMQ_NODE_PORT=5673 RABBITMQ_SERVER_START_ARGS="-rabbitmq_management listener [{port,15673}]" RABBITMQ_NODENAME=rabbit-2 rabbitmq-server start &

解释:

RABBITMQ_NODE_PORT:端口号

RABBITMQ_NODENAME:节点名称

RABBITMQ_SERVER_START_ARGS:进行覆盖我们的Web端口15673

验证是否启动成功:

ps aux|grep rabbitmq

可以发现,我们成功启动了这两个结点:

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第1张

🌴 配置主从节点 

🌵 rabbit-1操作作为主节点

#停止应用 > sudo rabbitmqctl -n rabbit-1 stop_app #目的是清除节点上的历史数据(如果不清除,无法将节点加入到集群) > sudo rabbitmqctl -n rabbit-1 reset #启动应用 > sudo rabbitmqctl -n rabbit-1 start_app

🌵 rabbit2操作为从节点

# 停止应用 > sudo rabbitmqctl -n rabbit-2 stop_app # 目的是清除节点上的历史数据(如果不清除,无法将节点加入到集群) > sudo rabbitmqctl -n rabbit-2 reset # 将rabbit2节点加入到rabbit1(主节点)集群当中【Server-node服务器的主机名】 > sudo rabbitmqctl -n rabbit-2 join_cluster rabbit-1@'Server-node' # 启动应用 > sudo rabbitmqctl -n rabbit-2 start_app

现在我们的主从节点就已经搭建好了,我们输入一下命令进行验证:

sudo rabbitmqctl cluster_status -n rabbit-1

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第2张

 可以发现现在我们集群已经搭建好了。

四、Web监控

为了能够使用Web管理界面,我们需要两个节点添加用户并赋予权限

rabbit-1节点:

rabbitmqctl -n rabbit-1 add_user yixin  rabbitmqctl -n rabbit-1 set_user_tags yixin administrator rabbitmqctl -n rabbit-1 set_permissions -p / yixin ".*" ".*" ".*" 

rabbit-2节点: 

rabbitmqctl -n rabbit-2 add_user admin  rabbitmqctl -n rabbit-2 set_user_tags admin administrator rabbitmqctl -n rabbit-2 set_permissions -p / admin ".*" ".*" ".*"

现在我们可以去访问Web管理界面了。

rabbit-1:http://服务器Ip地址:15672/

rabbit-2:http://服务器Ip地址:15673/

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第3张

现在我们利用刚刚添加的用户名和密码登录,进入页面:

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第4张

可以发现,确实已经绑定了这两个节点。

我们在rabbit-1这边进行创建队列queue1

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第5张

接着我们去查看rabbit-2节点:

rabbitmq集群部署方案_服务器集群搭建_https://bianchenghao6.com/blog__第6张

 可以发现,现在这两个已经是主从关系了,我们在rabbit-1实行的操作都能够自动映射到rabbit-2节点。


小结

以上就是【一心同学】整理的【RabbitMQ】的【单机部署集群】,我们在真实开发中其实使用的是【多机部署】,这里的单机部署集群主要是为了去学习集群的【思想】以及【搭建】。

如果这篇【文章】有帮助到你,希望可以给【一心同学】点个👍,创作不易,相比官方的陈述,我更喜欢用【通俗易懂】的文笔去讲解每一个知识点,如果有对【后端技术】感兴趣的小可爱,也欢迎关注❤️❤️❤️ 【一心同学】❤️❤️❤️,我将会给你带来巨大的【收获与惊喜】💕💕!

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复