CentOS7安装RocketMQ单机

1、下载apache最新rocketmq二进制压缩文件
64位操作系统,建议使用 Linux / Unix / Mac; 64位JDK 1.8+; Maven 3.2.x
如图:

2、解压安装
[root@localhost src]# unzip rocketmq-all-4.2.0-source-release.zip

3、环境变量
nameserver环境变量:vi /etc/profile
添加:ii

4、构建rocketMq
[root@localhost src]# cd rocketmq-all-4.2.0
[root@localhost rocketmq-all-4.2.0]# mvn -Prelease-all -DskipTests clean install -U

5、修改设置
启动broker时会卡顿,因为虚拟机内存和broker配置内存跟不上。
设置:给虚拟机预留1g的内存,这样启动时不太会卡:虚拟机设2g,nameserver和broker共用1g

bin目录:
vim runserver.sh

修改前:
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

修改后:
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"

bin目录:
vim runbroker.sh

修改前:
JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"

修改后:
JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn512m"

6、启动mq
cd /usr/local/src/rocketmq-all-4.2.0/distribution/target/apache-rocketmq/bin
启动 NameServer

[root@localhost bin]# nohup sh mqnamesrv &

查看日志:

启动 Broker

[root@localhost bin]# nohup sh mqbroker -n 10.164.239.5:9876 &
查看日志:
[root@iZuf6gb6l1wi8uxu45wfv1Z rocketmqlogs]# tail -200f broker.log


7、启动成功后警告

bin目录:
vi mqadmin.xml
vi mqbroker.xml
vi mqnamesrv.xml
vi mqfiltersrv.xml
删除红色部分:

vi tools.cmd
vi tools.sh
vi …/benchmark/runclass.sh
删除红色部分:

8、发送和接受消息
在发送/接收消息之前,我们需要告诉客户名称服务器的位置。RocketMQ 提供了多种方法来实现这一点。为了简单起见,我们使用环境变量NAMESRV_ADDR
发送消息:
[root@localhost bin]# sh tools.sh org.apache.rocketmq.example.quickstart.Producer

消费消息:
[root@localhost bin]# sh tools.sh org.apache.rocketmq.example.quickstart.Consumer

9、调试过程中的问题
代码是基于springboot的简单示例
配置正确情况下,启动后尝试发布消息,仍报远程mq服务器topic不存在异常。
检查linux防火墙:service firewalld status
因centos7默认使用firewalld防火墙,而不是iptables,卸载firewalld,再安装iptables
步骤:
卸载firewalld:yum remove firewalld
安装iptables:yum install iptables-services
查看防火墙状态:service iptables status
停止防火墙:service iptables stop
启动防火墙:service iptables start
设为开机不启动:systemctl disable iptables.service
设为开机启动:systemctl enable iptables.service
如果要开启防火墙,则需要开放特定端口,例:开放3306端口
编辑:vi /etc/sysconfig/iptables
添加配置:-A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
重启防火墙使配置生效:systemctl restart iptables.service
其它相关命令:
查看防火墙规则:iptables -L
清空防火墙规则:iptables -F
保存使操作生效:/etc/sysconfig/iptables save
停止防火墙:/etc/sysconfig/iptables stop
10、关闭服务
sh mqshutdown namesrv
sh mqshutdown broker
或者通过jps查看进程,使用kill -9 pid结束进程(有时会看不见进程,但是服务仍在运行,建议用mqshutdown关闭服务)。

java -jar rocketmq-console/rocketmq-console-ng-1.0.0.jar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值