RocketMQ(一)安装
RocketMQ(一)安装
官网文档:http://rocketmq.apache.org/docs/quick-start/
一、下载
官网下载地址 : http://rocketmq.apache.org/dowloading/releases/
依赖版本如图
下载可执行文件版本(红框中的),下载上传到服务器上。
二、系统要求
- 64位操作系统,生产环境建议Linux/Unix/MacOS(Windows操作系统安装说明详见 Windows操作系统安装教程)
- 64位JDK 1.8(目前RocketMQ不支持 JDK 11)
- 4G+的可用磁盘
三、Linux/Unix/MacOS安装教
3.1 搭建
解压
1 | unzip rocketmq-all-4.5.1-bin-release.zip |
切换到RocketMQ跟目录
1 | cd rocketmq-all-4.5.1-bin-release |
启动Name Server
1 | # 后台启动 |
验证是否启动OK
1 | tail -f ~/logs/rocketmqlogs/namesrv.log |
启动 Broker
1 | nohup sh bin/mqbroker -n localhost:9876 & |
这里启动 Broker 会出现异常因为默认的 runbroker的jvm参数如下
JAVA_OPT=”${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g”
默认的设置了8g内存 !!!!!
修改小点就可以了。
JAVA_OPT=”${JAVA_OPT} -server -Xms128m -Xmx256m -Xmn256m”
关闭
1 | sh bin/mqshutdown broker |
如果公网无法访问可以在配置文件新增配置,新增完配置文件如下。
1 | brokerClusterName = DefaultCluster |
3.2 验证RocketMQ功能是否正常
在发送/接收消息之前,我们需要告诉客户端名称服务器的位置。RocketMQ提供了多种方法来实现这一目标。为了简单起见,我们使用环境变量NAMESRV_ADDR
1 | > export NAMESRV_ADDR=localhost:9876 |
四、windows安装
五、docker 安装
参考博客地址: 使用docker安装RocketMQ-CSDN博客
拉取镜像
1 | docker pull rocketmqinc/rocketmq |
创建数据目录
1 | mkdir -p /home/rocketmq/data/namesrv/logs /home/rocketmq/data/namesrv/store |
构建nameserver容器
1 | docker run -d \ |
参数说明
参数 | 说明 |
---|---|
-d | 以守护进程的方式启动 |
-restart=always | docker重启时候容器自动重启 |
-name rmqnamesrv | 把容器的名字设置为rmqnamesrv |
-p 9876:9876 | 把容器内的端口9876挂载到宿主机9876上面 |
-v /home/rocketmq/data/namesrv/logs:/root/logs | 把容器内的/root/logs日志目录挂载到宿主机的 /docker/rocketmq/data/namesrv/logs目录 |
-v /home/rocketmq/data/namesrv/store:/root/store | 把容器内的/root/store数据存储目录挂载到宿主机的 /docker/rocketmq/data/namesrv目录 |
rmqnamesrv | 容器的名字 |
-e “MAX_POSSIBLE_HEAP=100000000” | 设置容器的最大堆内存为100000000 |
rocketmqinc/rocketmq | 使用的镜像名称 |
sh mqnamesrv | 启动namesrv服务 |
创建broker节点
创建数据目录
1 | mkdir -p /home/rocketmq/data/broker/logs /home/rocketmq/data/broker/store /home/rocketmq/conf |
创建配置文件
1 | vi /docker/rocketmq/conf/broker.conf |
构建broker容器
1 | docker run -d \ |
创建dockermq-console服务
拉取镜像
1 | docker pull pangliang/rocketmq-console-ng |
启动容器
1 | docker run -d \ |
参数 | 说明 |
---|---|
-d | 以守护进程的方式启动 |
-restart=always | docker重启时候镜像自动重启 |
-name rmqadmin | 把容器的名字设置为rmqadmin |
-e “JAVA_OPTS=-Drocketmq.namesrv.addr=192.168.52.136:9876 | 设置namesrv服务的ip地址 |
-Dcom.rocketmq.sendMessageWithVIPChannel=false” | 不使用vip通道发送消息 |
–p 9999:8080 | 把容器内的端口8080挂载到宿主机上的9999端口 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 那年夏十七!