centos7 Docker安装rocketMq,直接运行通过

本文指导如何在CentOS 7中配置虚拟机,安装Docker并创建RocketMQ集群,包括设置网络、创建目录、配置broker,以及运行和管理namesrv和broker实例。重点介绍了broker配置参数和授权。
摘要由CSDN通过智能技术生成

准备好虚拟机 centos7
至少准备3G内存 不然起不起来
![在这里插入图片描述](https://img-blog.csdnimg.cn/b811b253f83f4c9bb0c01b36dc03b830.png

配置好网络保证可连通
安装docker

yum install docker
#启动docker
systemctl start docker

创建映射目录和配置文件

mkdir -p  /data/rocketmq/namesrv/{logs,store}
mkdir -p  /data/rocketmq/broker/{logs,store,conf}
vi         /data/rocketmq/broker/conf/broker.conf

broker.conf内容

# 所属集群名称,如果节点较多可以配置多个
brokerClusterName = DefaultCluster
# broker名称,master和slave使用相同的名称,表明他们的主从关系
brokerName = rmqbrokera
# 0表示Master,大于0表示不同的slave
brokerId = 0
# 表示几点做消息删除动作,默认是凌晨4点
deleteWhen = 04
# 在磁盘上保留消息的时长,单位是小时
fileReservedTime = 48
# 是否允许 Broker 自动创建 Topic,建议线下开启,线上关闭 !!!这里仔细看是 false,false,false
autoCreateTopicEnable=true
# 是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
# 有三个值:SYNC_MASTER,ASYNC_MASTER,SLAVE;同步和异步表示Master和Slave之间同步数据的机制;
brokerRole = ASYNC_MASTER
# 刷盘策略,取值为:ASYNC_FLUSH,SYNC_FLUSH表示同步刷盘和异步刷盘;SYNC_FLUSH消息写入磁盘后才返回成功状态,ASYNC_FLUSH不需要;
flushDiskType = ASYNC_FLUSH
# 设置broker节点所在服务器的ip地址
brokerIP1 = 10.0.0.100
# 磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
diskMaxUsedSpaceRatio=95

授权文件具有读写权限
chmod 666 /data/rocketmq/broker/conf/broker.conf

docker pull apache/rocketmq:4.9.3
docker network create rmq-bridge

docker run -d --name rmqnamesrv --network rmq-bridge --network-alias rmqnamesrv \
-p 5976:9876 \
-e "MAX_POSSIBLE_HEAP=100000000" \
-e "JAVA_OPT_EXT=-server -Xms256m -Xmx256m -Xmn128m" \
-v /data/rocketmq/namesrv/logs:/home/rocketmq/logs \
-v /data/rocketmq/namesrv/store:/home/rocketmq/store \
--restart=always \
--privileged=true \
apache/rocketmq:4.9.3 \
sh mqnamesrv
docker run -d --name rmqbrokera --network rmq-bridge --network-alias rmqbrokera \
-p 10909:10909 \
-p 10911:10911 \
-p 10912:10912 \
-v /data/rocketmq/broker/logs:/home/rocketmq/logs \
-v /data/rocketmq/broker/store:/home/rocketmq/store \
-v /data/rocketmq/broker/conf/broker.conf:/opt/rocketmq-4.9.3/conf/broker.conf \
-e "JAVA_OPT_EXT=-Xms256m -Xmx512m -Xmn128m" \
-e "NAMESRV_ADDR=10.0.0.100:5976" \
-e "MAX_POSSIBLE_HEAP=200000000" \
--restart=always \
--privileged=true \
apache/rocketmq:4.9.3 \
sh mqbroker -c /opt/rocketmq-4.9.3/conf/broker.conf

如果连不上
需进入容器,找到配置文件/opt/rocketmq-4.9.3/conf/broker.conf修改ip地址brokerIP1 = 10.0.0.100

# 会自动下载镜像
docker run -d --name rmqconsole -p 8080:8080   -e "JAVA_OPTS=-Drocketmq.namesrv.addr=10.0.0.100:5976" styletang/rocketmq-console-ng
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值