需要环境:
  jdk(1.6+)
  git(如果clone源码,需要git,没有git直接下载gar包也行)
  maven3.x
在安装之前确定自己已经安装了jdk:java -version

先获取recketmq源码,可以直接从官网下载tar包。下载完之后找个地方解压。

进入目录“RocketMQ-3.5.8”
执行 bash install.sh 命令
这步执行完之后会新出来一个devenv文件夹,这个文件夹其实是target/alibaba-rocketmq-broker/alibaba-rocketmq的一个链接
配置ROCKETMQ_HOME环境变量,进入devenv文件夹,把当前的目录设置成ROCKETMQ_HOME变量。也就是:
cd devenv
echo "ROCKETMQ_HOME=`pwd`" >> ~/.bash_profile
source ~/.bash_profile
现在环境已经差不多了,接下来启动server和broker.
启动 name server:
bash mqnamesrv
看见”The Name Server boot success. serializeType=JSON“就是已经启动了。在这里注意:如果jdk是sun jdk,同时也配置了JAVA_HOME,那么现在问题应该不大。如果是openjdk,这个在平时用的时候,不配JAVA_HOME也是可以用的,但是因为rocketmq是纯java编的,所以必须配置JAVA_HOME。一般openjdk默认安装的位置在/usr/lib/jvm/java-8-openjdk-amd64,在这个目录下看到bin目录下有javac文件,就说明这就是JDK了。编辑/etc/profile或者/root/.bashrc
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export PATH=$PATH:$JAVA_HOME/bin

到这里,环境都准备完毕,就可以正常启动了。如果执行bash mqnamesrv还是报错:"Please set the JAVA_HOME variable in your environment, We need java(x64)!"
查看runserver.sh文件:

[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"

这个位置,没有用全部注释掉添加[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64。当然删了也没有问题。

效果如下:

#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java
#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/opt/taobao/java
#[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"
[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/lib/jvm/java--openjdk-amd64

启动成功后在开一个终端启动broker:

bash mqbroker -n localhost:9876

如果发现还是有上面的问题,解决办法一样,这次是runbroker.sh。
The broker[lizhanhui-Lenovo, 172.30.30.233:10911] boot success. serializeType=JSON and name server is localhost:9876看到这行就已经启动成功了。为了确认成功也可以查看log,不设置log目录的话默认在~/logs/rocketmqlogs下。配置文件在解压RocketMQ3.5.8的config文件夹下。

关闭nameserver、broker命令:

mqshutdown namesrv
mqshutdown broker

最新文章

  1. ASP.NET MVC WEBAPI第一次接触
  2. Java 并发编程之volatile关键字解析
  3. [OpenJudge0054]特务会议召开
  4. Python—装饰器
  5. codeforces A. Cinema Line 解题报告
  6. adb shell 命令详解(转)
  7. SpringMVC后缀
  8. AngularJs+bootstrap搭载前台框架——准备工作
  9. 山东理工大学ACM平台题答案关于C语言 1181 C语言实验——最小公倍数和最大公约数
  10. 外部式css样式,写在单独的一个文件中
  11. Oracle 11g R2性能优化 tkprof
  12. 一款非常好用的 Windows 服务开发框架,开源项目Topshelf
  13. Python生成器(generator)和迭代器(Iterator)
  14. teragen/terasort_简化版
  15. solr简介、学习详细过程!(超详细~)
  16. JAVA nio 2 和 Path 类简介
  17. securecrt 的安装
  18. input 取消自动填充
  19. POJ1651:Multiplication Puzzle——题解
  20. C笔试题(二)

热门文章

  1. 安装zeromq以及zeromq的python示例
  2. python中zip函数
  3. html与表格知识
  4. javascript实现二分查找
  5. [cdoj843] 冰雪奇缘 (线段树+离散)
  6. 在Struts2中配置Action
  7. C语言实现数组快速排序(含对算法的详细解释)
  8. 【转载】linux内核笔记之进程地址空间
  9. Writing Text File From A Tabular Block In Oracle Forms
  10. oracle命令识记