大数据

tez 0.9.2 编译适配 hadoop 3.2.1

2020-03-14  本文已影响0人  陈sir的知识图谱

tez的编译真的是无数坑,官方只适配了2.7.2的系列,要适配3.x系列的编译,很多依赖要自己升级。

编译环境为centos 8

前置条件:

  1. 不能使用root账户
  2. jdk maven 安装(忽略,请自行安装,不会请google)

编译Protobuf 2.5.0 官方依赖依然这么老

### 安装编译工具
yum -y install autoconf automake libtool cmake ncurses-devel openssl-devel lzo-devel zlib-devel gcc gcc-c++

编译protobuf

下载 源码包,解压

./configure
make install

编译 tez

下载 apache-tez-0.9.2-src 并解压到/opt

设置环境变量

#安装tez-ui的时候,node 会被自动下载到的目录,所以必须设置到path环境变量中弄过,不然后面的命令会报找不到node
export PATH=${PATH}:/opt/apache-tez-0.9.2-src/tez-ui/src/main/webapp/node
#bower global安装后的软连接路径
export PATH=${PATH}:/opt/apache-tez-0.9.2-src/tez-ui/src/main/webapp/bin
#在编译tez-ui的时候,bower 很可能安装不上,报错找不到bower命令,此时需要手动安装bower,因为front-maven-plugin已经自动安装的node 和 yarn包管理工具。yarn包管理命令在/opt/apache-tez-0.9.2-src/tez-ui/src/main/webapp/node/yarn/dist/bin下,所以可以通过yarn global add  bower@x.x.x 来安装,具体版本好,在tez-ui下的package.json中。
export PATH=${PATH}:/opt/.config/yarn/global/node_modules/bower/bin

设置变更的版本餐参数进行maven 编译

mvn clean package -DskipTests=true -Dhadoop.version=3.2.1 -DnodeVersion=6.17.1 -P hadoop28 -P\!hadoop27 -Dmaven.javadoc.skip=true

编译成功后,生成的包在 /opt/apache-tez-0.9.2-src/tez-dist/target

上一篇下一篇

猜你喜欢

热点阅读