RocketMq安装(centOS)

一、资料准备

准备好javaJDK和RocketMq安装包(可以在官网下载,javaJDK要求8以上)

二、安装

1.解压两个上述两个文件

2.配置环境变量

Vim /etc/profile进入环境变量

插入下面内容(根据自己的安装路径进行修改)

export JAVA_HOME=/usr/local/src/rocketMq/jdk1.8.0_202

Export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar

export PATH=$PATH:${JAVA_HOME}/bin

export ROCKETMQ_HOME=/usr/local/src/rocketMq/rocketmq-all-5.0.0-bin-release

export PATH=$PATH:${ROCKETMQ_HOME}/bin

结果如下:

修改完成需要重新编译配置文件:source /etc/profile

3.测试是否成功

测试rocketmq前建议先调整rocketMq的配置信息,因为rocketMq默认需要的内存比较大,需要更改,防止虚拟机内存不够运行失败。

一共需要更改两个文件:一个是runserver.sh另一个是runbroker.sh它们都在bin目录下改成合适的大小即可。

启动nameserver服务

1.nohup sh bin/mqnamesrv & // 启动服务

2.tail -f ~/logs/rocketmqlogs/namesrv.log //查看是否成功

启动broker

1.nohup sh bin/mqbroker -n localhost:9876 &

2. tail -f ~/logs/rocketmqlogs/broker.log

通过jps查看进程

4. 测试生产和消费消息

生产消息

1.export NAMESRV_ADDR=localhost:9876

2.sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

消费消息

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

三RocketMq集群安装(双主双从)

1.准备

准备第二台虚拟机

安装上述步骤再次安装rocketMq

2.服务器环境

序号

Ip

角色

架构模式

端口

1

192.168.150.129

Nameserver、brokerserver

Master1,Slave2

9876、10911、11011

2

192.168.150.128

Nameserver、brokerserver

Master2,Slave1

9876、10911、11011

1.host添加信息(两台机器都要做)

192.168.150.129 rocketmq-nameserver1

192.168.150.128 rocketmq-nameserver2

192.168.150.129 rocketmq-master1

192.168.150.129 rocketmq-slave2

192.168.150.128 rocketmq-master2

192.168.150.128 rocketmq-slave1

2.重启network

 systemctl restart network

3.关闭防火墙

4.关闭mq服务

3.broker配置

1.在rocketmq的相关文件中,包含了双主双从的一些配置文件在conf下

2m-2s-async是双主双从异步复制

2m-2s-sync是双主双从同步复制

2m是双主节点,没有从节点

在RocketMQ中,双主双从集群配置可以采用同步或异步的方式进行数据复制。这两种方式主要区别在于消息从主节点(Master)复制到从节点(Slave)的机制上。

同步复制

定义: 在同步复制模式下,当一条消息被发送到一个主节点后,该消息会被立即复制到其对应的从节点。只有当从节点成功接收并确认这条消息之后,主节点才会将成功的响应返回给生产者。

特点:

提供了较高的数据可靠性,因为即使主节点发生故障,从节点也已经包含了最新的数据副本。

由于需要等待从节点的确认,这可能会增加消息发送的延迟,影响吞吐量。

异步复制

定义: 在异步复制模式下,消息首先被发送到主节点,并且一旦消息被主节点接收,生产者就会立即收到成功的响应。然后,主节点会在后台异步地将消息复制到从节点。

特点:

相比于同步复制,这种方式能够提供更高的性能和吞吐量,因为不需要等待从节点的确认。

然而,如果主节点在消息被复制到从节点之前就发生了故障,则这些未复制的消息将会丢失,降低了系统的可靠性。

(根据实际需求选择那种集群方式,这里我们选择双主双从同步复制)

2.配置内容

有s的是从节点配置信息,没有s的是主节点信息

根据这个进行配置,因此在129结尾的ip主机上修改(broker-a.properties文件和broker-b-s.properties)另一台主机上修改另外两个配置文件。相关配置如下:需要特别注意图中标红部分:

4.启动集群

1.启动nameserver集群

两台机器都需要启动

2.启动broker集群

nohup sh mqbroker -c/usr/local/src/rocketMq/rocketmq-all-5.0.0-bin-release/conf/2m-2s-sync/broker-b-s.properties &

(1)在192.168.150.129上启动master1和slave2

(2)在192.168.150.128上启动master2和slave1

5.安装rocketMq dashboard(可视化)

1.maven环境安装

准备一个maven安装包(官网下载)

解压

tar -zxvf apache-maven-3.9.6-bin.tar.gz

修改环境变量

vim /etc/profile

查看版本号

下载 dashboard

使用git下载

提示没有git的话,使用yum下载

yum install -y git

git clone https://github.com/apache/rocketmq-dashboard.git

下载完后进入目录

cd rocketmq-dashboard/

Maven打包

maven打包

mvn clean package -Dmaven.test.skip=true

显示BUILD SUCCESS即为打包成功

cd target

运行jar包

nohup java -jar rocketmq-dashboard-2.0.1-SNAPSHOT.jar &

网页访问

### 如何在 CentOS安装 RocketMQ #### 准备工作 确保服务器已准备好并满足基本条件,例如拥有足够的磁盘空间以及网络连接正常。 #### 下载与解压软件包 下载适用于目标系统的 RocketMQ 版本压缩文件,并将其放置于合适的位置。接着通过命令行工具完成解压缩操作: ```bash unzip rocketmq-all-5.2.0-bin-release.zip cp -r rocketmq-all-5.2.0-bin-release /usr/local/rocketmq ``` 此过程会把解压后的目录移动至 `/usr/local/rocketmq` 文件夹下[^2]。 #### 设置环境变量 为了方便后续的操作,在 `.bash_profile` 或者其他 shell profile 中添加 `ROCKETMQ_HOME` 变量定义及其对应的 PATH 条目: ```bash export ROCKETMQ_HOME=/usr/local/rocketmq/ export PATH=$PATH:$ROCKETMQ_HOME/bin source ~/.bash_profile ``` 这一步骤使得可以在任何地方调用 RocketMQ 的二进制程序而无需提供完整的路径[^3]。 #### 修改 JVM 参数配置 编辑 RocketMQ 配置文件来调整 Java 虚拟机 (JVM) 的性能参数,以适应实际应用场景的需求。通常这些设置位于各个服务组件的启动脚本内,比如 Name Server 和 Broker 的启动选项中。 #### 启动 NameServer 组件 创建一个新的 Shell 脚本来简化 NameServer 的启动流程。进入 RocketMQ 主目录后执行以下指令建立必要的日志存储位置和服务启动器: ```bash cd /usr/local/rocketmq mkdir logs echo '#!/bin/bash' > start-mqnamesrv.sh echo 'nohup sh bin/mqnamesrv > logs/mqnamesrv.log 2>&1 &' >> start-mqnamesrv.sh chmod +x start-mqnamesrv.sh ./start-mqnamesrv.sh ``` 上述命令序列完成了启动脚本的编写、赋予其可执行权限并且立即运行该脚本[^5]。 #### 启动 Dashboard 控制台(可选) 如果希望获得图形化的管理界面,则可以通过下面的方式部署官方提供的 Web 应用——RocketMQ-2.0.0.jar --server.port=10003 \ --rocketmq.config.namesrvAddr=localhost:9876 > rocketmq-dashboard.log 2>&1 & ``` 这条命令将会以后台模式启动控制面板应用,并监听指定端口等待 HTTP 请求到来[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

该睡觉了839

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值