rocketmq4.9.0集群搭建

1:下载

https://rocketmq.apache.org/download

 

2:安装前置工作

1:准备三台服务器

2:jdk1.8的安装

 

3:上传文件到指定目录

 解压是unzip,但是这个主机上没有这个命令,先yum安装一下

yum install -y unzip zip

然后解压到指定目录下

unzip rocketmq-all-4.9.0-bin-release.zip -d /opt/installs/

 

然后这个名字有点长,修改一下,看起来简洁一点

 然后由于是本地虚拟机玩,没有什么流量,但是它启动的时候 里面nameserver和brocker的内存占用都太大了 ,修改小一点。注意的是生产中是绝对不能改成这么小的!!!

一个是 runserver.sh文件中的这句。它本来是8g的配置 我这里就改256就行了

 另外一个是runbroker.sh。同样改小一点

 

4:配置集群

首先是计划集群的如下的三主三从的集群。但是只有三台服务器,所以slave的节点必须错开,不然就没有什么用

主机:133            134            135
主:master133          master134        master135
从:slave134          slave 135        slave 133

先进入config文件夹,里面有现成的2主2从的模板,复制一份,然后改成3主三从的就行

 

 然后里面我们需要指定一下namesrvAddr的地址

namesrvAddr=cluster133:9876;cluster134:9876;cluster135:9876

 需要注意的是,刚复制过来的那个文件,还得把brokerName改一下

 然后再修改-s的文件,也就是slave的配置文件

里面需要配置几个其他的参数,具体如下

#----------cluster config---------------
namesrvAddr=cluster133:9876;cluster134:9876;cluster135:9876
#由于同一个服务器跑了两个,所以得把监听端口修改一下
listenPort=11911
#同样的,存储消息的相关路径也不能跟另外一个冲突
storePathRootDir=~/store-s
storePathCommitLog=~/store-s/commitlog
storePathConsumeQueue=~/store-s/consumequeue
storePathIndex=~/store-s/index
storeCheckpoint=~/store-s/checkpoint
abortFile=~/store-s/abort

 编辑完以后,先分发一下到其他服务器。分发完毕以后,每台服务器把不相关的配置文件都删掉,不然配置太多,容易混淆,到后面就乱套了

133,只需要留-a和它负责的从节点也就是-b-s文件

134,只需要留-b和它负责的从节点也就是-c-s文件

135,只需要留-c和它负责的从节点也就是-a-s文件

如图135:

 

 5:启动集群

然后先把每台机器的nameserv启动起来

nohup sh bin/mqnamesrv &

然后分别把每台机器的主broker启动

当然,另外两台命令中的配置要改一下,分别是-a、-b、-c。从节点也是这个命令 只是指定的配置文件不一样了。

nohup sh bin/mqbroker -c conf/3m-3s-async/broker-a.properties &

启动后,就出出现nameserv和主broker的进程

 

注意启动从节点的时候,要根据名称和上面集群分配的来,

 

从图中看出,

133的从节点是在135上面,目前133的配置文件是-a,所以在135上面启动-a-s.properties。

134的从节点是在133上面,目前134的配置文件是-b,所以在133上面启动-b-s.properties。

135的从节点是在134上面,目前135的配置文件是-c,所以在134上面启动-c-s.properties。

 

启动完成后,先看看进程

 

然后可以配置一下mq的控制台项目,去看一下实际的情况。先拉下代码,本地配置一下 启动

控制台下载地址

 

用ide打开以后,先把刚配置的几个namesrvAddrs添加一下。当然服务器部署的时候 最好改成服务器映射的名字 尽量不要用ip

 

然后启动后,发现报错了。连不上这个地址,想起来端口没开放,然后把相关的几个端口都开放一下或者本地玩的话就把防火墙关掉。分别是:9876、10909、11911、11909

 

 开放完毕后,等待集群上线,最后全部上线后 就是如下的三主三从集群

 为了确保服务可用,可以在命令行,查看一下broker的日志,然后页面上手动发个消息试试

 

 broker没有错误,主从同步刷新的日志也是正常的,说明集群已经成功了,并且是可用的

发完以后,可以在集群菜单中看到!

posted @ 2023-12-23 21:14  鸭猪是的念来过倒  阅读(59)  评论(0编辑  收藏  举报