重启所有的RabbitMQ[三台]# 停止rabbitmqctl stop# 检测端口lsof -i:5672lsof -i:15672# 启动rabbitmq-server -detached文件同步步骤[150->151,152]因为我是最新版本安装的所以.erlang.cookie并没有在var/lib/rabbitmq下面, 而是在root下
scp /root/.erlang.cookie 192.168.247.151:/root/scp /root/.erlang.cookie 192.168.247.152:/root/选择150,151,152任意一个节点为Master, 我选择150, 也就是说需要把150的cookie文件同步到151,152节点上, 进入/root目录, ll -a才可以看到隐藏文件, 使用上面的命令发送就可以
注意: 需要在三台服务器RabbitMQ都启动的情况下, 去同步
节点加入集群[151,152]150直接启动即可
# 启动rabbitmq-server -detached【18-基于CentOS7搭建RabbitMQ3.10.7集群镜像队列+HaProxy+Keepalived高可用架构】151,152, 将自身加入集群
# 停止apprabbitmqctl stop_app# 将节点加入集群 --ram是采用内存的方式 151,采用内存, 152不加, 默认使用磁盘rabbitmqctl join_cluster --ram rabbit@rabbitmqmaster# 启动apprabbitmqctl start_app
文章插图
控制台查看集群
文章插图
查看集群状态# 任意节点rabbitmqctl cluster_status配置镜像队列设置镜像队列策略
# 任意节点rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
文章插图
将所有队列设置为镜像队列 , 即队列会被复制到各个节点 , 各个节点状态一致 , RabbitMQ高可用集群就已经搭建好了,我们可以重启服务 , 查看其队列是否在从节点同步
移除集群节点[扩展]// 在要移除的节点上执行rabbitmqctl forget_cluster_node rabbit@bhz71修改集群名称(默认为第一个node名称)[扩展]# 任意节点rabbitmqctl set_cluster_name rabbitmq_cluster1RabbitMQ配置位置我一般不修改, 正式环境有运维, 开发的话, 能跑就行
/usr/local/rabbitmq/plugins/rabbit-3.10.7/ebin/rabbit.app测试集群测试队列同步
在150上新建队列
文章插图
文章插图
队列开始同步
文章插图
同步镜像队列两个
文章插图
文章插图
151,152都已经同步
安装Ha-Proxy[153,154]简介
- HAProxy是一款提供高可用性、负载均衡以及基于TCP和HTTP应用的代理软件 , HAProxy是完全免费的、借助HAProxy可以快速并且可靠的提供基于TCP和HTTP应用的代理解决方案 。
- HAProxy适用于那些负载较大的web站点 , 这些站点通常又需要会话保持或七层处理 。
- HAProxy可以支持数以万计的并发连接,并且HAProxy的运行模式使得它可以很简单安全的整合进架构中 , 同时可以保护web服务器不被暴露到网络上 。
经验总结扩展阅读
- centos7中配置java + mysql +jdk+使用jar部署项目
- 云原生下基于K8S声明式GitOps持续部署工具ArgoCD实战-上
- 黑暗游侠故事
- opencvcv.line
- 基于 Apache Hudi 极致查询优化的探索实践
- 14 基于SqlSugar的开发框架循序渐进介绍-- 基于Vue3+TypeScript的全局对象的注入和使用
- 【Python+C#】手把手搭建基于Hugging Face模型的离线翻译系统,并通过C#代码进行访问
- 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子
- 唐代皇帝顺序
- 民意是什么