余老师带你学习大数据-Spark快速大数据处理第四章第二节Tez环境搭建

Tez环境搭建

编译Tez

由于在Tez-Yarn的官网上并没有关于hadoop3.1.2对应的Tez-Yarn安装包,所以我们进行针对性的编译。先检测Maven是否安装了。

修改pom.xml

在这里插入图片描述

编译modules,将tez-ui注释掉,不需要编译tez-ui。

检测Maven是否安装

1、在app-11上,使用hadoop用户登录。
命令:su - hadoop
在这里插入图片描述

2、检测Maven是否安装。
命令:mvn -version
在这里插入图片描述

3、进入cd/hadoop/tools/目录下。
命令:cd /hadoop/tools/
在这里插入图片描述

4、这里没有Maven,下载Maven。
命令:wget http://archive.apache.org/dist/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz
在这里插入图片描述

5、解压。
命令:tar -xf apache-maven-3.6.0-bin.tar.gz
在这里插入图片描述

6、在环境变量中加入MAVEN_HOME路径。

命令:vi ~/.bashrc
exportMAVEN_HOME=/hadoop/tools/apache-maven-3.6.0
export PATH=${MAVEN_HOME}/bin:$PATH
在这里插入图片描述

7、将新添加的环境变量生效。
命令:source ~/.bashrc、echo $PATH
在这里插入图片描述

8、查看Maven是否安装成功。
命令:mvn -version
在这里插入图片描述

下载编译程序

9、切到tmp目录下。
命令:cd /tmp/
在这里插入图片描述

10、创建tez文件。
命令:mkdir tez
在这里插入图片描述

11、进入Spark-stack/Tez目录下。
命令:cd Spark-stack/Tez
在这里插入图片描述

12、将buildTez下的内容拷贝到tez目录下。
命令:cp buildTez/* /tmp/tez/
在这里插入图片描述

13、切换到tez目录下。
命令:cd /tmp/tez/
在这里插入图片描述

14、解压apache-tez-0.9.0-src.tar.gz。
命令:tar -xf apache-tez-0.9.0-src.tar.gz
在这里插入图片描述

15、将pom.xml拷贝到源码目录下。
命令:cp pom.xml apache-tez-0.9.0-src

在这里插入图片描述

16、进入源码目录。
命令:cd apache-tez-0.9.0-src
在这里插入图片描述

编译

17、开始编译。
命令:mvn -X clean package -DskipTests=true -Dhadoop.version=3.1.2 -Phadoop28 -P\!hadoop27 -Dprotoc.path=/hadoop/tools/protobuf-2.5.0/bin/protoc -Dmaven.javadoc.skip=true

注:使用hadoop3.1.2版本,不使用2.7版本。同时在tools里面安装了protobuf组件,将path写在这个命令行上,并且不进行测试。编译的时间是9分钟。显示每个模块相关的编译耗时。

在这里插入图片描述

18、安装包在tez-dist目录下。
命令:cd tez-dist/

在这里插入图片描述

19、进入target目录。
命令:cd target/注:有了tez-0.9.1-minimal.tar.gz和tez-0.9.1.tar.gz这两个包证明编译成功。

在这里插入图片描述

安装有两种方式,第一种是先进行编译,将编译出来的安装包拷贝到集群上,命令:cp tez-0.9.1-minimal.tar.gz
tez-0.9.1.tar.gz /安装tez的路径。第二种是github上有对应的安装包,直接下载到对应的位置。

安装

修改hadoop-env.sh

在这里插入图片描述

增加了三个配置。

修改mapred-site.xml

在这里插入图片描述

将mapreduce框架改为yarn-tez。

在这里插入图片描述

增加tez-site.xml
tez.lib.uris指向/user/tez/tez-0.9.0.tar.gz。

下载安装包

1、返回根目录。

命令:cd

在这里插入图片描述

2、检查集群是否正常启动。

命令:jps
在这里插入图片描述

3、在hadoop根目录下创建tez安装文件。

命令:mkdir /hadoop/Tez
在这里插入图片描述

4、进入Spark-stack/Tez目录下。

命令:cd /tmp/Spark-stack/Tez/
在这里插入图片描述

5、这是直接在GitHub上下载安装包。Tez安装包在apache-tez-0.9.0-bin目录下,将该目录下的安装拷贝到安装Tez目录下。

命令:cp apache-tez-0.9.0-bin/* /hadoop/Tez/

在这里插入图片描述

6、进入安装Tez目录下。

命令:cd /hadoop/Tez/
在这里插入图片描述

将tez-0.9.0.tar.gz上传到hdfs中

7、先创建tez目录。

命令:hdfs dfs -mkdir /user/tez

在这里插入图片描述

8、将安装包上传到tez目录下。

命令:hdfs dfs -put tez-0.9.0.tar.gz /user/tez/
在这里插入图片描述

9、查看是否上传成功。

命令:hdfs dfs -ls /user/tez/
在这里插入图片描述

10、进入hadoop的配置文件。

命令:cd /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/

在这里插入图片描述

11、将mapred-site.xml和hadoop-env.sh文件删除。

命令:rm -rf mapred-site.xml hadoop-env.sh

在这里插入图片描述

将配置文件拷贝到集群的各个机器上

12、进入Spark-stack/Tez/目录下。

命令:cd /tmp/Spark-stack/Tez/

在这里插入图片描述

13、将配置文件拷贝到hadoop的配置文件下。

命令:cp -r conf/* /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/

在这里插入图片描述

14、将配置也拷贝到app-12和app-13上。

命令:scp -r conf/* hadoop@app-12:/hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/scp -r conf/* hadoop@app-13:/hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/

注:因为scp是覆盖拷贝所以不需要删除。
在这里插入图片描述

解压tez-0.9.0-minimal.tar.gz

15、进入Tez安装目录。

命令:cd /hadoop/Tez/

在这里插入图片描述

16、创建tez-0.9.0-minimal。

命令:mkdir tez-0.9.0-minimal
在这里插入图片描述

17、将tez-0.9.0-minimal.tar.gz解压到tez-0.9.0-minimal。因为在hadoop-env.sh中添加的TEZ_JARS在tez-0.9.0-minimal目录下。

命令:tar -xf tez-0.9.0-minimal.tar.gz -C tez-0.9.0-minimal

在这里插入图片描述

18、进入到tez-0.9.0-minimal目录下。

命令:cd tez-0.9.0-minimal
在这里插入图片描述

集群重启

19、先停止集群。

命令:stop-all.sh
在这里插入图片描述

20、登录app-12上停止historyserver。

命令:ssh app-12 "mapred --daemon stop historyserver"

在这里插入图片描述

21、检查启动的集群。

命令:jps注:除了zookeeper进程在启动没有其他进程。

在这里插入图片描述

22、登录其他的机器确保只有zookeeper进程。

命令:ssh app-12 "jps"ssh app-13 "jps"

在这里插入图片描述

23、启动hadoop集群。

命令:start-all.sh
在这里插入图片描述

24、重新启动app-12上的historyserver。

命令:ssh app-12 "mapred --daemon start historyserver"
在这里插入图片描述

25、使用jps检查集群。

命令:jps注:NameNode、NodeManager、ResourceManager均已经启动了。

在这里插入图片描述

测试

26、查看tez-0.9.0-minimal目录。

命令:ls注:用这里的example做测试。
在这里插入图片描述

27、查看hdfs的目录。

命令:hdfs dfs -ls/
在这里插入图片描述

28、做测试的输入是做hadoop安装时做测试的文件。这个文件在/installTest/hadoop/data目录下,先查看该目录的文件。

命令:hdfs dfs -ls /installTest/hadoop/data
在这里插入图片描述

29、MapReduce测试。

命令:hadoop jar tez-examples-0.9.1.jar orderedwordcount /installTest/hadoop/data /installTest/hadoop/output3

注:hadoop jar运行tez-examples-0.9.1.jar然后运行tez-examples-0.9.1.jar里的orderedwordcount命令。orderedwordcount的含义是不仅要进行wordcount还要根据word进行排序。输出是/installTest/hadoop/data,输出是/installTest/hadoop/output3,确保输出文件不存在即可
在这里插入图片描述

30、查看输出的文件。

命令:hdfs dfs -ls /installTest/hadoop/data /installTest/hadoop/output3
在这里插入图片描述

31、输出的结果在part-v002-o000-r-00000中。

命令:hdfs dfs -cat /installTest/hadoop/data /installTest/hadoop/output3/part-v002-o000-r-00000

注:结果是按照value排序的。

在这里插入图片描述

常见问题

在这里插入图片描述

问题解释:环境变量执行缓慢。

解决办法:多次进行source命令,更新环境变量。

猜你喜欢

转载自blog.csdn.net/weixin_45810046/article/details/109162488
今日推荐