lenmom

博客园 首页 新随笔 联系 订阅 管理

在使用hive或者是kylin时,可以选择文件的压缩格式,但是这个需要有hadoop native库的支持,默认情况下,hadoop官方发布的二进制包中是不包含native库的,所以无法使用一些压缩相关的算法。本例中选择自己手动编译hadoop源码,并将native文件部署到hadoop安装目录/lib目录下。

1. 环境准备

a) 安装JDK(1.7以上版本),本例中安装jdk1.8
b) 安装maven(3.0以上版本),参见本人博文
c) yum install -y CMake openssl-devel ncurses-devel  gcc gcc-c++   #cmake必须是2.6以上版本

d) 安装findbugs

 

2. 安装JDK1.8

详情请参见本人博文

 

3. 安装依赖包

yum install -y CMake openssl-devel ncurses-devel gcc gcc-c++

 Ubuntu:

#安装各种所需依赖库
sudo apt-get install autoconf automake libtool zlib1g-dev pkg-config libssl-dev libsnappy-dev libbz2-dev
# 移除libssl-dev,安装libssl1.0-dev
sudo apt-get remove libssl-dev
#安装各种所需依赖库
sudo apt-get install -y cmake  openssl ssh-server libssl1.0-dev  libncurses5-dev  gcc-7 g++

 

 

4. 安装protobuf-2.5.0

下载protobuf-2.5.0

http://pan.baidu.com/s/1pJlZubT

mkdir  -p /home/workspace/software
wget
https://github-production-release-asset-2e65be.s3.amazonaws.com/23357588/09f5cfca-d24e-11e4-9840-20d894b9ee09?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190206%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190206T094303Z&X-Amz-Expires=300&X-Amz-Signature=566da401f7f657ebf24ce768f0f2000ab1ab2d6815d9b6c289bb70335b119602&X-Amz-SignedHeaders=host&actor_id=30103731&response-content-disposition=attachment%3B filename%3Dprotobuf-2.5.0.tar.gz&response-content-type=application%2Foctet-stream
tar -xzvf protobuf-2.5.0.tar.gz #解压protobuf2.5.0
cd protobug-2.5.0 #进入protobuf源码目录
mkdir installed

编译protobuf-2.5.0源码

./configure --prefix=/home/workspace/software/protobuf-2.5.0/installed     #make install之后的二进制文件安装的目录通过--prefix指定
make                                                                       #编译protobuf-2.5.0源码
make install                                                               #安装编译好的文件到/home/workspace/software/protobuf-2.5.0/installed

配置protobuf环境变量

vim /etc/profile

文件末尾添加

export PROTOBUF_HOME=/home/workspace/software/protobuf-2.5.0/installed
export PATH=$PROTOBUF_HOME/bin/:$PATH

保存退出,并执行 source /etc/profile使环境变量配置生效

 

5. 安装findbugs-3.0.1

cd /home/workspace/software
wget https://nchc.dl.sourceforge.net/project/findbugs/findbugs/3.0.1/findbugs-3.0.1.tar.gz
tar -xzvf findbugs-3.0.1.tar.gz
cd findbugs-3.0.1

配置环境变量

vim /etc/profile

在文件末尾添加

export FINDBUGS_HOME=/home/workspace/softwares/findbugs-3.0.1
export PATH=$PATH:$FINDBUGS_HOME/bin

保存退出,并使更改生效。
查看安装结果

findbugs -version

 

6. 编译hadoop2.7.3

下载hadoop2.7.3

cd /home/workspace/software
wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3-src.tar.gz
tar -xzvf hadoop-2.7.3-src.tar.gz
cd hadoop-2.7.3-src

编译hadoop2.7.3

mvn clean package -DskipTests -Pdist,native -Dtar

编译将会持续一段时间,取决于maven仓库的速度,大概需要半小时以上

 

 

编译好的文件路径为:/home/workspace/software/hadoop-2.7.3-src/hadoop-dist/target/hadoop-2.7.3.tar.gz

 

 

7. 替换原来的native包

rm -rf $HADOOP_HOME/lib/native
cp -r /home/workspace/software/hadoop-2.7.3-src/hadoop-dist/target/hadoop-2.7.3/lib/native  $HADOOP_HOME/lib/native 

 

8. Reference

https://www.cnblogs.com/janlle/p/10859037.html

posted on 2019-08-04 16:07  老董  阅读(324)  评论(0编辑  收藏  举报