通过tarball形式安装HBASE Cluster(CDH5.0.2)——重新编译CDH5.0.2 HADOOP点滴
本文参考博文Hadoop2.2.0遇到64位操作系统平台报错,重新编译Hadoop
由于我采用的tarball方式安装hadoop,其lib/native下根本没有内容,启动hdfs时报这个经典的native 库转载失败警告
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
所以,需要重新编译hadoop项目。
注意我的系统是CentOS 6.5 CDH5.0.2 ,需要下载maven3.1.1版本
一、下载maven 3.1.1并展开
#下载maven tar包
wget http://apache.fayea.com/apache-mirror/maven/maven-3/3.0.5/binaries/apache-maven-3.0.5-bin.tar.gz
#展开到/usr/lib目录
tar -C /usr/lib -zxvf apache-maven-3.0.5-bin.tar.gz
#在usr下面建立软链接
cd /usr
sudo ln -s /usr/lib/apache-maven-3.1.1/ maven
#编辑/etc/profile
sudo vim /etc/profile
#添加如下变量
export MAVEN_HOME=/usr/maven
PATH=$PATH:$MAVEN_HOME/bin
二、编译Hadoop
mvn package -DskipTests -Pdist,native -Dtar
maven需要下载一大堆文件,网络必须畅通。开始一切顺利,当编译到hadoop-common的时候总是Error,编译过不去,我确信需要的包都已安装了,于是我进入hadoop-common-project子目录,单独编译这个子项目,发现如下错误:
CMake Error: The current CMakeCache.txt directory /var/hadoop/hadoop-2.3.0-cdh5.0.2/src/hadoop-common-project/hadoop-common/target/native/CMakeCache.txt is different than the directory
/usr/hadoop/hadoop-2.3.0-cdh5.0.2/src/hadoop-common-project/hadoop-common/target/native where CMackeCache.txt was created. This may result in binaries being created in the wrong place.
If you are not sure, reedit the CMakeCache.txt
看来是以前编译残留文件不一致导致的,于是我清除编译缓存,重新编译,终于编译成功了,见到了久违的BUILD SUCCESS
mvn clean -DskipTests
mvn compile -DskipTests
mvn package -DskipTests -Dtar -Pdist,native
##BUILD SUCCESS ##COPY native libraries to the lib/native directory
cp ~/hadoop/src/hadoop-dist/lib/native/* ~/hadoop/lib/native
start-dfs.sh
编译完成后,复制src/hadoop-dist/lib/native中的文件到~/hadoop/lib/native目录下,重新启动dfs集群,ok警告没有了,问题解决。
通过tarball形式安装HBASE Cluster(CDH5.0.2)——重新编译CDH5.0.2 HADOOP点滴的更多相关文章
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置
通过tarball形式安装HBASE Cluster(CDH5.0.2)——Hadoop NameNode HA 切换引起的Hbase错误,以及Hbase如何基于NameNode的HA进行配置 配置H ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——集群安装总览
1,手动下载压缩包.tar(下载地址),采用tarball形式手工安装集群. 2,共启用13台虚拟机,CentOS6.5 64bit,nn1,nn2,rm1,rm2,dn1,dn2,dn3,dn4,d ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——HBASE 真分布式集群配置
一.应该先配置好zookeeper并成功启动,否则hbase无法启动 二.配置HBASE集群 1,配置hbase-env.sh,下面是最少配置项目 [hadoop@zk1 conf]$ vim hba ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——配置分布式集群中的YARN ResourceManager 的HA
<?xml version="1.0"?> <!-- Licensed under the Apache License, Version 2.0 (the &q ...
- 通过tarball形式安装HBASE Cluster(CDH5.0.2)——如何配置分布式集群中的zookeeper
集群安装总览参见这里 Zookeeper的配置 1,/etc/profile中加入zk的路径设置,见上面背景说明. 2,进入~/zk/conf目录,复制zoo_sample.cfg为zoo.cfg v ...
- 安装配置和使用HBASE Cluster(基于发行版CDH5.0.2)——系列随笔
本系列文章只是记录了笔者本人在学习实验安装和使用基于CDH5.0.2的HBASE集群过程中的一些经验教训和心得,绝不是详细的安装过程,因本人不过一初学者,很多方面不甚了了,如果能让不幸读到的人有所得则 ...
- 大数据技术之_11_HBase学习_01_HBase 简介+HBase 安装+HBase Shell 操作+HBase 数据结构+HBase 原理
第1章 HBase 简介1.1 什么是 HBase1.2 HBase 特点1.3 HBase 架构1.3 HBase 中的角色1.3.1 HMaster1.3.2 RegionServer1.3.3 ...
- 安装HBase(0.9)数据库
基本知识: 1.hbase是一种基于列存储的数据库,也就是说它的一列的数据是存储在一个文件里面的,而传统的数据库存储都是一个文件存储多个行,这些行有不同的列,这些列的数据类型 不同. 2.基于HDFS ...
- Linux下以tar包的形式安装mysql8.0.28
Linux下以tar包的形式安装mysql8.0.28 1.首先卸载自带的Mysql-libs(如果之前安装过mysql,要全都卸载掉) rpm -qa | grep -i -E mysql\|mar ...
随机推荐
- 一个实体对象不能由多个 IEntityChangeTracker 实例引用。
错误代码 public bool addSubOptionItem(csModel.cs_Answer answers) { bool result = false; wpe = new csWeiP ...
- 基于jQuery和CSS3炫酷图片3D旋转幻灯片特效
在线预览 源码下载 iPresenter是一款效果非常炫酷的jQuery和CSS3 3D旋转幻灯片特效插件.你可以使用它来制作产品展示.图片画廊或者各种幻灯片和轮播图特效.这款幻灯片插件的特点有: ...
- linux下修改tomcat使用的jdk版本
遇到一种情况,就是linux上好像掉文件了,JDK的目录下没有了,具体问题还不清楚,不过要赶紧修复,不能影响其他程序的运行. 结构重新安装了JDK,tomcat还是启动失败,看l启动日志发现没找到还是 ...
- nginx负载均衡和反相代理的配置
偷懒,参考这里 https://www.cnblogs.com/taiyonghai/p/6728707.html
- centos7安装elasticsearch5.2.2
这篇文章比较初级,介绍的是centos7下elasticsearch的安装. 主要阅读对象是初级运维.初级大数据工程师.java工程师.想了解es的.net工程师以及所有感兴趣的朋友. 文章的目的是为 ...
- MVC源码学习之AuthorizeAttribute
常见的Controller定义方式: public class HomeController : Controller { public ActionResult Index() { return V ...
- 编译安装LAMP之安装Apache+php与管理(十五)
[教程主题]:编译安装LAMP之安装Apache+php与管理 [课程录制]: 创E [主要内容] [1]编译安装Apache+PHP 1.安装程序依赖库和开发环境 为了省事把所需要的库文件全都安装上 ...
- linux软件管理(六)
[教程主题]:linux软件管理 [1]软件包管理 在系统管理中,软件包的管理是最重要的,是系统管理的基础的基础, 只有我们学会软件包的管理才能谈得上其它的应用. RPM RPM是软件管理程序,提供软 ...
- setTimeout()和setInterval()的区别
JS学习 - setTimeout()和setInterval()的区别 相同点 setTimeout 和 setInterval的语法相同.他们都有两个参数,一个是将要执行的代码字符串,还有一个是以 ...
- VS2017安装PCL1.8.1
很多使用在windows环境下编译和使用PCL,这样让我想试试,所以就迫不得已的放弃使用Ubuntu环境,但是我还是建议使用Ubuntu系统,毕竟在Ubuntu下几条命令就搞定了,为了迎合在windo ...