安装Tez 0.9.0 

博客转载于:http://blog.csdn.net/YonJarLuo/article/details/78223843?locationNum=4&fps=1

安装这个东西,花了3天时间..............

网上找的资料大部分都是要么低版本的,要么写很乱,又不详细..........

走了许多弯路,最后在大神的帮助下,完成了tez0.9.0的安装。希望对大家有帮助!


一、首先到官网下载tez0.9.0-bin.tar.gz版本的压缩包

这里选择bin包的原因是不需要手动地去编译,节省时间


二、上传到master机器的安装位置,解压

解压后的文件夹名为:apache-tez-0.9.0-bin,在apache-tez-0.9.0-bin/share下有个tez.tar.gz 压缩包

把它put到hdfs上面

记得先启动hadoop

[plain] view plain copy
  1. hadoop fs -mkdir -p /user/tez  
[plain] view plain copy
  1. hadoop fs -put tez.tar.gz /user/tez  
三、在hadoop安装目录下的/etc/hadoop下,新建tez-site.xml文件

[plain] view plain copy
  1. vi tez-site.xml  
  2. <configuration>                                                                                                                                                                                  
  3. <property>  
  4. <name>tez.lib.uris</name>  
  5. <value>${fs.defaultFS}/user/tez/tez.tar.gz</value>  <!-- 这里指向hdfs上的tez.tar.gz包 -->  
  6. </property>  
  7. <property>  
  8. <name>tez.container.max.java.heap.fraction</name>  <!-- 这里是因为我机器内存不足,而添加的参数 -->  
  9. <value>0.2</value>  
  10. </property>  
  11. </configuration>  
四、同上目录下,设置mapred-site.xml,把yarn修改为yarn-tez

[plain] view plain copy
  1. <configuration>  
  2. <property>  
  3.      <name>mapreduce.framework.name</name>  
  4.      <!-- <value>yarn</value> -->                                                                                                                                                                        
  5.      <value>yarn-tez</value>  
  6.      <final>true</final>  
  7. </property>  
  8. <property>  
  9.         <name>mapreduce.jobtracker.http.address</name>  
  10.         <value>master.hadoop:50030</value>  
  11. </property>  
  12. <property>  
  13.         <name>mapreduce.jobhistory.address</name>  
  14.         <value>master.hadoop:10020</value>  
  15. </property>  
  16. <property>  
  17. </configuration>  
五、同目录下,修改hadoop-env.sh ,在末尾添加

TEZ_CONF_DIR=hadoop安装位置/etc/hadoop/tez-site.xml

tez是我把apache-tez-0.9.0-bin重命名的名称,没有重命名的,下面配置注意下即可

[plain] view plain copy
  1. TEZ_CONF_DIR=/usr/local/src/hadoop/etc/hadoop/tez-site.xml  
  2. TEZ_JARS=/usr/local/src/tez  
  3. export HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${TEZ_CONF_DIR}:${TEZ_JARS}/*:${TEZ_JARS}/lib/*  
六、把tez-site.xml,mapred-site.xml,hadoop-env.sh,tez也就是apache-tez-0.9.0-bin 传到集群里其它机器相同目录下

例如:

[plain] view plain copy
  1. scp -r tez-site.xml [email protected]:/usr/local/src/hadoop/etc/hadoop/  
七、重启hadoop


八、准备测试文件

在master非安装目录下,新建file01,file02 文件

[plain] view plain copy
  1. echo "Hello World Hello Tez" > file01  
  2. echo "Hello World Goodbye Tez" > file02  

然后将它们put到hdfs中

[plain] view plain copy
  1. hadoop fs -mkdir -p /user/ceshi/tez_input  
  2. hadoop fs -put file01 file02 /user/ceshi/tez_input  
九、进行测试,看看是否安装成功

cd tez

[plain] view plain copy
  1. hadoop jar tez-examples-0.9.0.jar orderedwordcount /user/ceshi/tez_input /user/ceshi/tez_output  

执行无误后,查看/user/ceshi/tez_output下的文件


在网页上输入http://192.168.202.128:8088/cluster 也可查看状态及运行计算类型(IP为master主机IP)

安装Tez-0.9.0

本次安装到此结束!

十、如果想让hive的计算引擎修改为tez,只需要在启动hadoop的情况下,启动hive,进行设置即可:

进入hive后

[plain] view plain copy
  1. set hive.execution.engine=tez;  
然后执行sql语句即可进行测试,如下图

安装Tez-0.9.0
如果恢复使用mapreduce,输入set hive.execution.engine=mr;

安装Tez-0.9.0

安装过程其它错误:

1.把刚下载好的apache-tez-0.9.0-bin.tar.gz包,直接丢到hdfs上。是错误的做法!

运行报错说,找不到DAG那个类

应该先把它解压,然后把apache-tez-0.9.0-bin/share/目录下的 tez-tar.gz丢到hdfs上才对


2.机器内存不足问题,需要修改tez-site.xml文件,如不添加会出现如下错误:

安装Tez-0.9.0

[plain] view plain copy
  1. <property>  
  2. <name>tez.container.max.java.heap.fraction</name>    
  3. <value>0.2</value>  
  4. </property>  

具体值是多少,根据自己内存而定


3.不小心在配置hadoop-env.sh 时,把之前的HADOOP_CLASSPATH覆盖了,后面无法启动其它应用(hive,hbase等)

启动hive报错:

安装Tez-0.9.0

原来,当时配置hadoop-env.sh的时候,把以前的HADOOP_CLASSPATH覆盖了。添加上即可

安装Tez-0.9.0


淡腾的是,官网上写的步骤,真不详细,花了很多时间排错

相关文章: