通过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 ...
随机推荐
- JAVA-JSP内置对象
相关资料:<21天学通Java Web开发> request 请求对象 类型javax.servlet.ServletRequest 作用域Requestresponse 响应对象 类型j ...
- Server.MapPath 出现未将对象引用设置到对象的实例
此文仅在于使遇到相似问题的朋友能少走弯路 asp.net中我用一个页面的cs文件调用一个自定义类,这个自定义类再调用 System.Web.HttpContext.Current.Server.Map ...
- java开发之发牌小程序
发牌规则 黑桃按照从小到大依次为:1-13 红桃按照从小到大依次为:14-26 梅花按照从小到大依次为:27-39 方块按照从小到大依次为:40-52 小王53 大王54 代码实现: packag ...
- 'Project Name' was compiled with optimization
'Project Name' was compiled with optimizationhtml, body {overflow-x: initial !important;}html { font ...
- C语言 · 最长公共子序列 · 最长字符序列
算法提高篇有两个此类题目: 算法提高 最长字符序列 时间限制:1.0s 内存限制:256.0MB 最长字符序列 问题描述 设x(i), y(i), z(i)表示单个字符,则X={x( ...
- Struts2 使用基本流程
使用流程: 1.引入Struts 2的库文件: 将"common-logging-1.0.4.jar"."freemaker-2.3.8.jar"." ...
- WIN7下重建图标缓存(解决MFC.exe桌面图标显示异常问题)
WIN7下重建图标缓存 使用WIN7时,MFC工程生成的应用程序图标,如果更改为自定义的ICON图标之后可能在桌面上显示的依旧是上一次的图标,改个名或换个路径都能恢复正常,说明在WIN7系统下图标的缓 ...
- 中断描述符表(Interrupt Descriptor Table,IDT)
中断描述符表(Interrupt Descriptor Table,IDT)将每个异常或中断向量分别与它们的处理过程联系起来.与GDT和LDT表类似,IDT也是由8字节长描述符组成的一个数组. #pr ...
- Nginx+php (十六)
[教程主题]:Nginx+php [课程录制]: 创E [主要内容] [1] 编译PHP 初始环境: 为了省事把所需要的库文件全都安装上,可以使用rpm包安装,也可以用yum命令安装, yum -y ...
- 莫衷一是——i+++j 该怎样计算?
这是一个有趣的计算, 3 个加号相连.那么,究竟是怎样结合的呢?是依照: i + (++j)来运算,还是依照(i++) + j 来运算呢? 这个问题在相似于 C / C++中讨论是没有多大意义的,由于 ...