消息中间件之RcoketMQ单机版安装

一、RocketMQ安装环境

64bit linux 64bit jdk1.8+ maven 3.2.x git(不一定需要)

本文安装环境为centos7.2、jdk1.8.0_144、maven-3.5.3,软件默认存放目录为/usr/local

二、安装RocketMQ的准备条件

1、安装jdk1.8

如果是采用centos7+,它默认已经安装jdk1.8了,这个步骤可以忽略

1.1 解压jdk包

tar xvf jdk-8u144-linux-x64.gz

1.2 设置环境变量

cd /etc vim profile export JAVAHOME=/usr/local/jdk1.8.0144 export JREHOME=/usr/local/jdk1.8.0144/jre export PATH=$PATH:/usr/local/jdk1.8.0144/bin export CLASSPATH=./:/usr/local/jdk1.8.0144/lib:/usr/local/jdk1.8.0_144/jre/lib 按esc,输入:wq保存并退出,并执行source /etc/profile使之生效 执行 java -version 按jdk是否安装成功

2、安装maven

2.1 解压maven包

tar zxf apache-maven-3.5.3-bin.tar.gz

2.2 设置环境变量

ln -s apache-maven-3.5.3/ maven echo 'export MAVENHOME=/usr/local/maven' >> /etc/profile echo 'export PATH=${PATH}:${MAVENHOME}/bin' >>/etc/profile source /etc/profile 执行mvn -version看maven是否安装成功

3、下载RocketMQ源码包

有三种方式可以下载到源码包 a、从apache rockemq官网下载

b、通过git拉取源码包 cd /usr/local git clone https://github.com/apache/rocketmq.git

c、从RocketMq的github上下载release版本 进入https://github.com/apache/rocketmq/releases,点击"releases",下载源码包

二、安装RocketMQ

1.1 解压RocketMQ源码包

tar zxf rocketmq-rocketmq-all-4.2.0.tar.gz

1.2 编译RocketMQ源码

cd /usr/local/rocketmq-rocketmq-all-4.2.0 mvn -Prelease-all -DskipTests clean install -U 这个步骤比较耗时

1.3 创建软链接

ln -s /usr/local/rocketmq-rocketmq-all-4.2.0/distribution/target/apache-rocketmq /usr/local/rocketmq

1.4 设置环境变量

这个步骤非必须

echo 'export rocketmq=/usr/local/rocketmq' >> /etc/profile echo 'export PATH=$PATH:$rocketmq/bin' >>/etc/profile source /etc/profile

1.4 配置可执行权限

cd /usr/local/rocketmq/bin chmod +x mqadmin mqbroker mqfiltersrv mqshutdown mqnamesrv

1.5 修改日志配置文件

单机版这个步骤可以忽略,启动后,默认在root下会产生logs文件夹以及相应日志文件,但我们可以通过这个步骤设置日志存放位置

cd /usr/local/rocketmq mkdir logs cd /usr/local/rocketmq/conf && sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml

1.6 创建存储路径

单机版这个步骤可以忽略,rocketmq默认会在root产生store文件夹以及相关文件,但我们可以通过这个创建存储路径,并在broker.conf指定存储路径信息,来指定存储位置

mkdir /usr/local/rocketmq/store mkdir /usr/local/rocketmq/store/commitlog mkdir /usr/local/rocketmq/store/consumequeue mkdir /usr/local/rocketmq/store/index

1.7 修改broker.conf文件

echo 'namesrvAddr=localhost:9876' >> /usr/local/rocketmq/conf/broker.conf echo 'autoCreateTopicEnable=true' >> /usr/local/rocketmq/conf/broker.conf echo 'storePathRootDir=/usr/local/rocketmq/store' >> /usr/local/rocketmq/conf/broker.conf echo 'storePathCommitLog=/usr/local/rocketmq/store/commitlog' >> /usr/local/rocketmq/conf/broker.conf echo 'storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue' >> /usr/local/rocketmq/conf/broker.conf echo 'storePathIndex=/usr/local/rocketmq/store/index' >> /usr/local/rocketmq/conf/broker.conf

1.8 修改启动脚本的内存参数

RocketMQ默认是4g内存启动,我们可根据实际情况进行相应配置

vim /usr/local/rocketmq/bin/runbroker.sh JAVAOPT="${JAVAOPT} -server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"

vim /usr/local/rocketmq/bin/runserver.sh JAVAOPT="${JAVAOPT} -server -Xms1g -Xmx1g -Xmn512m -XX:PermSize=128m -XX:MaxPermSize=320m"

1.9 关闭防火墙或者对外开放RocketMQ TCP端口

这个步骤是为了让远程能够访问到rocketmq

关闭防火墙的命令

systemctl stop firewalld.service

查看防火墙状态

firewall-cmd --state

开放RocketMQ TCP端口 firewall-cmd --zone=public --add-port=9876/tcp --permanent firewall-cmd --zone=public --add-port=10911/tcp --permanent firewall-cmd --reload

二、运行RocketMQ

1.启动Name Server

nohup sh /usr/local/rocketmq/bin/mqnamesrv >/dev/null 2>&1 &

2.查看Name Server日志

tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log

3.启动broker

nohup sh /usr/local/rocketmq/bin/mqbroker -c /usr/local/rocketmq/conf/broker.conf >/dev/null 2>&1 &

4.查看broker日志

tail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.log

三、测试RocketMQ

使用默认的测试例子 export NAMESRV_ADDR=localhost:9876 sh /usr/local/rocketmq/bin/tools.sh org.apache.rocketmq.example.quickstart.Producer sh /usr/local/rocketmq/bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

四、关闭RocketMQ

1.关闭broker

sh /usr/local/rocketmq/bin/mqshutdown broker

2.关闭Name Server

sh /usr/local/rocketmq/bin/mqshutdown namesrv

五、RocketMQ入门小例子

详情点击https://github.com/lyb-geek/first-rocketmq进行下载查看

本文分享自微信公众号 - Linyb极客之路(gh_c420b2cf6b47)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-03-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏逸鹏说道

无法启动WP Emulator

无法启动WP Emulator ? 记得以前Vware不能运行设置的东西了吗?http://www.cnblogs.com/dunitian/p/4480750...

30050
来自专栏Linyb极客之路

消息中间件之RocketMQ简介

一、什么是RocketMQ ? 上图是一个典型的消息中间件收发消息的模型,RocketMQ也是这样的设计,简单说来,RocketMQ具有以下特点: 是一个队列模...

50060
来自专栏云计算教程系列

如何在Ubuntu 18.04上安装和配置Ansible

配置管理系统旨在使管理员和运营团队轻松控制大量服务器。它们允许您从一个中心位置以自动方式控制许多不同的系统。

83330
来自专栏salesforce零基础学习

salesforce 零基础学习(五十)自定义View或者List以及查看系统原来的View或者List

salesforce给我们提供了标准的页面,比如标准的页面包括标准的列表和标准的详细页视图。有的时候我们想要自定义视图,比如做一个项目的时候不希望使用者直接通过...

25860
来自专栏coderhuo

记一次文件下载失败问题定位过程

浏览器 <----HTTP连接----> web服务器mongoose <----本地TCP连接---->cgi进程

8120
来自专栏Hadoop实操

如何永久删除Kafka的Topic

使用kafka-topics --delete命令删除topic时并没有真正的删除,而是把topic标记为:“marked for deletion”,导致重新...

64260
来自专栏情情说

RabbitMQ实战:扩展RabbitMQ与系列总结

本篇是「RabbitMQ实战」系列的最后一篇,主要介绍RabbitMQ插件,了解如何安装和启用它,列举一些常用的插件,以及如何自定义。

28970
来自专栏云计算教程系列

如何在Ubuntu 14.04上使用Ansible部署基本PHP应用程序

本教程介绍使用Ansible配置基本PHP应用程序的过程。本教程结束时的目标是让您新Web服务器为基本的PHP应用程序提供服务,而无需在目标腾讯CVM上运行单个...

17200
来自专栏耕耘实录

Ansible的安装与使用初探

受控端:192.168.237.202、192.168.237.203(一共2台)

8940
来自专栏容器云生态

怎样快速将网络repo源中的软件包缓存到本地

首先使用wget命令下载网络源:     比如下载CDH的源:wget -c http://archive.cloudera.com/cm4/redhat/6/...

33860

扫码关注云+社区

领取腾讯云代金券