RocketMQ部署安装

简介: RocketMQ部署安装

概述:

RocketMQ作为一款纯java、分布式、队列模型的开源消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。

环境准备:

OS:entOS Linux release 7.6.1810 (Core)

配置:8C 16G

操作步骤

  • 配置环境变量(jdk1.8)

yum install java-1.8.0-openjdk

yum install java-1.8.0-openjdk-devel.x86_64

环境变量引用,在/etc/profile中输入以下内容

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64
JRE_HOME=$JAVA_HOME/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
source /etc/profile

检查环境变量是否正常

[root@localhost rocketmq]# java -version

openjdk version “1.8.0_242”

OpenJDK Runtime Environment (build 1.8.0_242-b08)

OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

[root@localhost rocketmq]# javac -version

javac 1.8.0_242

下载rocketMQ组件

yum -y install wget
wget http://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.6.0/rocketmq-all-4.6.0-bin-release.zip

解压文件至/home

unzip rocketmq-all-4.6.0-bin-release.zip -d /home/

得到一个名为rocketmq-all-4.6.0-bin-release的目录,目录下文件如下:

[root@localhost home]# tree rocketmq-all-4.6.0-bin-release

rocketmq-all-4.6.0-bin-release

├── benchmark

│ ├── consumer.sh

│ ├── producer.sh

│ ├── runclass.sh

│ └── tproducer.sh

├── bin

│ ├── cachedog.sh

│ ├── cleancache.sh

│ ├── cleancache.v1.sh

│ ├── dledger

│ │ └── fast-try.sh

│ ├── mqadmin

│ ├── mqadmin.cmd

│ ├── mqbroker

│ ├── mqbroker.cmd

│ ├── mqbroker.numanode0

│ ├── mqbroker.numanode1

│ ├── mqbroker.numanode2

│ ├── mqbroker.numanode3

│ ├── mqnamesrv

│ ├── mqnamesrv.cmd

│ ├── mqshutdown

│ ├── mqshutdown.cmd

│ ├── os.sh

│ ├── play.cmd

│ ├── play.sh

│ ├── README.md

│ ├── runbroker.cmd

│ ├── runbroker.sh

│ ├── runserver.cmd

│ ├── runserver.sh

│ ├── setcache.sh

│ ├── startfsrv.sh

│ ├── tools.cmd

│ └── tools.sh

├── conf

│ ├── 2m-2s-async

│ │ ├── broker-a.properties

│ │ ├── broker-a-s.properties

│ │ ├── broker-b.properties

│ │ └── broker-b-s.properties

│ ├── 2m-2s-sync

│ │ ├── broker-a.properties

│ │ ├── broker-a-s.properties

│ │ ├── broker-b.properties

│ │ └── broker-b-s.properties

│ ├── 2m-noslave

│ │ ├── broker-a.properties

│ │ ├── broker-b.properties

│ │ └── broker-trace.properties

│ ├── broker.conf

│ ├── dledger

│ │ ├── broker-n0.conf

│ │ ├── broker-n1.conf

│ │ └── broker-n2.conf

│ ├── logback_broker.xml

│ ├── logback_namesrv.xml

│ ├── logback_tools.xml

│ ├── plain_acl.yml

│ └── tools.yml

├── lib

│ ├── commons-beanutils-1.9.2.jar

│ ├── commons-cli-1.2.jar

│ ├── commons-codec-1.9.jar

│ ├── commons-collections-3.2.2.jar

│ ├── commons-digester-1.8.1.jar

│ ├── commons-lang3-3.4.jar

│ ├── commons-logging-1.2.jar

│ ├── commons-validator-1.6.jar

│ ├── dledger-0.1.jar

│ ├── fastjson-1.2.61.jar

│ ├── guava-19.0.jar

│ ├── javassist-3.20.0-GA.jar

│ ├── jcommander-1.72.jar

│ ├── jna-4.2.2.jar

│ ├── logback-classic-1.0.13.jar

│ ├── logback-core-1.0.13.jar

│ ├── netty-all-4.0.42.Final.jar

│ ├── netty-tcnative-boringssl-static-1.1.33.Fork26.jar

│ ├── openmessaging-api-0.3.1-alpha.jar

│ ├── rocketmq-acl-4.6.0.jar

│ ├── rocketmq-broker-4.6.0.jar

│ ├── rocketmq-client-4.6.0.jar

│ ├── rocketmq-common-4.6.0.jar

│ ├── rocketmq-example-4.6.0.jar

│ ├── rocketmq-filter-4.6.0.jar

│ ├── rocketmq-logging-4.6.0.jar

│ ├── rocketmq-namesrv-4.6.0.jar

│ ├── rocketmq-openmessaging-4.6.0.jar

│ ├── rocketmq-remoting-4.6.0.jar

│ ├── rocketmq-srvutil-4.6.0.jar

│ ├── rocketmq-store-4.6.0.jar

│ ├── rocketmq-tools-4.6.0.jar

│ ├── slf4j-api-1.7.7.jar

│ └── snakeyaml-1.19.jar

├── LICENSE

├── NOTICE

└── README.md

修改启动脚本(rockermq默认启动内存很大,需根据实际情况来修改)

vim runbroker.sh
可修改:JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"
vim runbroker.sh
可修改:JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"

配置rockermq环境参数

vim /etc/profile
export ROCKETMQ_HOME=/home/rocketmq  #实际路径
export NAMESRV_ADDR=localhost:9876
export PATH=$JAVA_HOME/bin:$ROCKETMQ_HOME/bin:$PATH
source /etc/profile

修改日志存储路径

cd /home/rocketmq/conf #实际路径
sed -i 's#${user.home}#/home/rocketmq#g' *.xml  #默认是存在用户目录下

启动

nohup mqnamesrv &
nohup mqbroker -n IP:9876 & #IP是部署的本机IP

查看日志

[root@localhost rocketmqlogs]# cat namesrv.log |grep succ
2020-02-14 15:31:20 INFO main - The Name Server boot success. serializeType=JSON
正常
[root@localhost rocketmqlogs]# cat broker.log |grep succ
2020-02-14 15:31:32 INFO main - The broker[localhost.localdomain, 192.168.200.128:10911] boot success. serializeType=JSON and name server is 192.168.200.128:9876
正常

store存储方式$HOME\store\commitlog\${fileName}因此如果用root起的话,默认是在/root下,如果想存在其他目录下,只需要切换个用户启动即可

useradd rocketmq
chown -R rocketmq.rocketmq /home/rocketmq

此时在启动,就到其他用户的家目录里了

bash-4.2$ tree /home/rocketmq/store

/home/rocketmq/store

├── checkpoint

├── config

│ ├── consumerFilter.json

│ ├── consumerFilter.json.bak

│ ├── consumerOffset.json

│ ├── consumerOffset.json.bak

│ ├── delayOffset.json

│ ├── delayOffset.json.bak

│ └── topics.json

└── lock

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
2月前
|
消息中间件 Java RocketMQ
RocketMQ实战教程之RocketMQ安装
这是一篇关于RocketMQ安装的实战教程,主要介绍了在CentOS系统上使用传统安装和Docker两种方式安装RocketMQ。首先,系统需要是64位,并且已经安装了JDK 1.8。传统安装包括下载安装包,解压并启动NameServer和Broker。Docker安装则涉及安装docker和docker-compose,然后通过docker-compose.yaml文件配置并启动服务。教程还提供了启动命令和解决问题的提示。
|
1天前
|
消息中间件 编解码 Docker
Docker部署RabbitMQ消息中间件
【7月更文挑战第4天】Docker部署RabbitMQ消息中间件
17 3
|
4天前
|
消息中间件 数据可视化 RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
【RocketMQ系列二】通过docker部署单机RocketMQ
16 4
|
11天前
|
消息中间件 Linux
Centos安装RabbitMQ
Centos安装RabbitMQ
17 3
|
11天前
|
消息中间件 Ubuntu 数据安全/隐私保护
Ubuntu上安装RabbitMQ
Ubuntu上安装RabbitMQ
13 1
|
7天前
|
消息中间件 Kubernetes Android开发
消息队列 MQ产品使用合集之如何在kubernetes环境里面部署
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
9天前
|
消息中间件 监控 RocketMQ
Docker Compose 一键快速部署 RocketMQ
Docker Compose 一键快速部署 RocketMQ
23 0
|
12天前
|
消息中间件 RocketMQ
Centos7.6安装RocketMQ4.9.2并配置开机自启
Centos7.6安装RocketMQ4.9.2并配置开机自启
24 0
|
23天前
|
消息中间件 存储 数据安全/隐私保护
docker部署rabbitmq
docker部署rabbitmq
20 0
|
25天前
|
消息中间件 存储 Java
RocketMQ下载安装、集群搭建保姆级教程
RocketMQ下载安装、集群搭建保姆级教程
38 0