学习RocketMQ (一) 安装并且启动MQ
1.使用RocketMQ 的 软件要求
64bit OS, Linux/Unix/Mac is recommended;
64bit JDK 1.8+;
Maven 3.2.x
Git
1)安装Linux
下载VMWare
下载CentOS
安装 没有什么特别注意的
2) Linux 下面安装Java
在Oracle官网上面下载Java 的Linux版本
解压 后配置环境变量
vim /etc/profile
JAVA_HOME=/usr/local/java/jdk1.8.0_151 #注意这里换成你的jdk目录
JRE_HOME=${JAVA_HOME}/jre
CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
PATH=${JAVA_HOME}/bin:$PATH
export JAVA_HOME JRE_HOME PATH CLASSPATH
使之生效
source /etc/profile
查看环境变量
[root@localhost java]# echo $PATH
/usr/local/java/jdk1.8.0_151/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/myth/bin
然后输入Java -version
bash: /usr/local/java/jdk1.8.0_151/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
解决方案:
sudo yum install glibc.i686命令安装好glibc
[root@localhost lib]# java -version
java version "1.8.0_151"
Java(TM) SE Runtime Environment (build 1.8.0_151-b12)
Java HotSpot(TM) Client VM (build 25.151-b12, mixed mode)
安装成功
3)安装git Linux版本
①安装curl,zlib,openssl,expat,libiconv
Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码,所以需要先安装这些依赖工具
yum install curl-devel expat-devel gettext-devel \
openssl-devel zlib-devel
②下载源码
之后,从下面的 Git 官方站点下载最新版本源代码:
http://rocketmq.apache.org/docs/quick-start/
③ 移动到Linux 盘中
我创建了一个文件夹 mkdir -p /usr/local/git
移动到这里 mv /home/myth/Desktop/git-2.9.5/ /usr/local/git/ #注意这里你应该写你自己的版本号 和 地址
④编译并且安装
$ cd git-2.9.5
$ make prefix=/usr/local all
$ sudo make prefix=/usr/local install
安装过程中出现如下错误,说明少了依赖
Can't locate ExtUtils/Embed.pm in @INC (@INC contains: /usr/local/lib64/perl5
使用如下命令:
yum install perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker -y
4)安装Maven Linux 版本
将官网下载的Maven 移到linux 系统中
vim /etc/profile
好了 终于可以安装MQ 了。
2.安装MQ
1) 克隆MQ
git clone -b develop https://github.com/apache/rocketmq.git
2)编译
mvn -Prelease-all -DskipTests clean install -U
出现如下错误, 可以看到 再跑rocketmq-remoting:jar:4.2.0-SNAPSHOT 没有找到io.netty:netty-tcnative:jar:linux-x86_32:1.1.33.Fork22 对于加上了linux-x86_32 这一串 字段感觉到奇怪
[ERROR] Failed to execute goal on project rocketmq-remoting: Could not resolve dependencies for project org.apache.rocketmq:rocketmq-remoting:jar:4.2.0-SNAPSHOT: Could not find artifact io.netty:netty-tcnative:jar:linux-x86_32:1.1.33.Fork22 in central (https://repo.maven.apache.org/maven2) -> [Help 1]
到POM 中寻找发现classifier 字段,应该他就是罪魁祸首,去掉之后就好了
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-tcnative</artifactId>
<version>1.1.33.Fork22</version>
<classifier>${os.detected.classifier}</classifier>
</dependency>
Build Success
3)开启NameServer
nohup sh bin/mqnamesrv &
啊! 看来是好事多磨啊,
虚拟机内存太大,去 jvm 中修改xms

然后 运行 成功
看 log
tail -f ~/logs/rocketmqlogs/namesrv.log

同样的方法 修改runbroker

这样子 Broker 就 跑起来了
学习RocketMQ (一) 安装并且启动MQ的更多相关文章
- zookeeper学习(零)_安装与启动
zookeeper学习(零)_安装与启动 最近换了新的电脑,终于买了梦寐以求的macbook.最近也换了新的公司,公司技术栈用到了zookeeper.当然自己也要安装学习下.省的渣渣的我,被鄙视就麻烦 ...
- (Nginx学习一)安装和启动及对应文件夹介绍
nginx 安装和启动及对应文件夹介绍 1 安装 官网下载nginx文件 http://nginx.org/en/download.html 解压即可 2 文件夹介绍 在解压后nginx压缩包后发现 ...
- Nginx 安装学习笔记(1.安装和启动)
centos7 编译安装和启动.停止https://www.cnblogs.com/xingyunblog/p/9072553.html 一.安装nginx 1.下载 wget http://ngin ...
- MongoDB学习记录(一) - 安装、启动与建立数据库
简要说明一个基本概念:MongoDB中的三要素:数据库(database).集合(collection)和文档(document). 文档:类似于JSON对象,由字段(field)和值(value)组 ...
- nginx学习与配置-安装与启动关闭管理
nginx服务器的安装 安装准备: nginx依赖于pcre库,要先安装pcre yum install pcre pcre-devel cd /usr/local/src/ wget wget ht ...
- RocketMq灰皮书(二)------本地部署启动MQ
RocketMq灰皮书(二)------本地部署启动MQ Windows10本地部署RocketMQ 在上一篇文章中,我们对rocket的几个基本概念进行了介绍,也了解了业内几大消息中间件的区别.在本 ...
- 分布式消息队列RocketMQ(一)安装与启动
分布式消息队列RocketMQ 一.RocketMQ简介 RocketMQ(火箭MQ) 出自于阿里,后开源给apache成为apache的顶级开源项目之一,顶住了淘宝10年的 双11压力 是电商产品的 ...
- redis 学习(1)-- redis 安装与启动
redis 学习(1)-- redis 安装与启动 redis 特性 关于 redis 的介绍网上已经有很多信息了,这里我就不在详细说明了.介绍一下几个鲜明特性: 1.速度快 官方称可以达到10W的q ...
- MongoDB入门学习(一)—— 安装和启动
最近由于工作需要,开始学习MongoDB数据库了.第一篇博文就从这里开始吧,以此记录下学习中的点点滴滴,为自己加油呢! (一) MongoDB简介 网上搜搜了一下:(来源:http://www.run ...
随机推荐
- Cmder 软件中修改λ符号方法
以前的版本 网上都有,我就不介绍了, 只介绍现在的 1. 打开Cmder软件安装位置 2. 打开vendor文件夹 profile.ps1文件 3. 找到第77行 Write-Host " ...
- 4.ElasticSearch的基本api操作
1. ElasticSearch的Index 1. 索引初始化 在创建索引之前 对索引进行初始化操作 指定shards数量和replicas数量 curl -XPUT 'http://192.168. ...
- scala中的Type使用
trait Base { val name: String } case class S( name: String, age: Int ) extends Base case class F( na ...
- 【笔记】【VSCode】Windows下VSCode编译调试c/c++
转载自http://m.2cto.com/kf/201606/516207.html 首先看效果 设置断点,变量监视,调用堆栈的查看: 条件断点的使用: 下面是配置过程: 总体流程: 下载安装vsco ...
- Ubuntu14.04LTS下安装Node.js&NPM以及个人博客hexo的初始化配置
什么是hexo Hexo 是一款基于node 的静态博客网站生成器作者 :tommy351是一个台湾的在校大学生...相比其他的静态网页生成器而言有着,生成静态网页最快,插件丰富(已经移植了大量Oct ...
- C#使用互斥量(Mutex)实现多进程并发操作时进程间的同步操作(进程同步)
本文主要是实现操作系统级别的进程同步的代码及测试结果,代码经过测试,可直接使用,也可供参考. 承接上一篇博客的业务场景[C#使用读写锁三行代码简单解决多线程并发写入文件时线程同步的问题]. 随着服务进 ...
- 2年Java开发工作经验面试总结
最近换了个公司,从三月底开始面,面到四月底,面了有快二十家公司.我是一个喜欢总结经验的人,每经过一场面试,我在回来的路上都会仔细回想今天哪些问题可以答的更好,或者哪些问题是自己之前没遇到过的,或者是哪 ...
- 【转】嵌入式C语言调试开关
在调试程序时,经常会用到assert和printf之类的函数,我最近做的这个工程里就有几百个assert,在你自认为程序已经没有bug的时候,就要除去这些调试代码,应为系统在正常运行时这些用于调试的信 ...
- 高性能 Java 缓存库 — Caffeine
http://www.baeldung.com/java-caching-caffeine 作者:baeldung 译者:oopsguy.com 1.介绍 在本文中,我们来看看 Caffeine - ...
- C 实现可变参数
C中可以借助va_list实现可变参数: va_start:使用传入的可变参数的第一个变量初始化va_list va_arg:获取当前可变参数,每次调用时会将指针向后移 va_end:结束 利用这个机 ...