编译

编译需要占用很大的内存,只创建一个app-11即可。 1、以hadoop用户登录。 命令:su – hadoop 在这里插入图片描述

2、在tmp目录下创建Oozie编译文件。 命令:mkdir /tmp/oozie 在这里插入图片描述

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

4、下载Spark-stack。 命令:git clone https://github.com/haiye1018/Spark-stack.git 在这里插入图片描述

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

6、将buildOozie目录下的文件拷贝到Oozie编译文件中。 命令:cp buildOozie/* /tmp/oozie/ 在这里插入图片描述

7、进入Oozie编译目录下。 命令:cd /tmp/oozie/ 在这里插入图片描述

8、下载Oozie编译包。 命令:wget https://archive.apache.org/dist/oozie/5.0.0/oozie-5.0.0.tar.gz 在这里插入图片描述

9、解压。 命令:tar -xf oozie-5.0.0.tar.gz 在这里插入图片描述

10、 命令:rm -rf oozie-5.0.0/pom.xml 在这里插入图片描述

11、将下载的pom.xml拷贝到oozie-5.0.0目录下。 命令:cp pom.xml oozie-5.0.0/ 在这里插入图片描述

12、创建Maven仓库。 命令: mkdir -p /home/hadoop/.m2/repository/org/apache/maven/doxia/doxia-core/1.0-alpha-9.2y mkdir -p /home/hadoop/.m2/repository/org/apache/maven/doxia/doxia-module-twiki/1.0-alpha-9.2y 在这里插入图片描述

13、将doxia-module-twiki-1.0-alpha-9.2y.jar拷贝到相应的Maven仓库下。 命令:cp doxia-module-twiki-1.0-alpha-9.2y.jar /home/hadoop/.m2/repository/org/apache/maven/doxia/doxia-module-twiki/1.0-alpha-9.2y/ 在这里插入图片描述

14、将doxia-core-1.0-alpha-9.2y.jar拷贝到相应的Maven仓库下。 命令:cp doxia-core-1.0-alpha-9.2y.jar /home/hadoop/.m2/repository/org/apache/maven/doxia/doxia-core/1.0-alpha-9.2y 在这里插入图片描述

15、进入oozie-5.0.0文件下。 命令:cd oozie-5.0.0 在这里插入图片描述

16、开始编译。 命令:bin/mkdistro.sh -DskipTests -Dtez.version=0.9.0 -Ptez -P'spark-2' -Puber 注:编译的时间会非常长。 在这里插入图片描述

17、有两个安装包,一个在/tmp/oozie/oozie-5.0.0/distro/target/目录下。 命令:cd /tmp/oozie/oozie-5.0.0/distro/target/ 在这里插入图片描述

18、另一个在安装包在/tmp/oozie/oozie-5.0.0/sharelib/target/目录下。 命令:cd /tmp/oozie/oozie-5.0.0/sharelib/target/ 在这里插入图片描述

制作sharelib

启动集群

1、创建app-12和app-13。 在这里插入图片描述

2、在app-11上以root用户登录。 命令:sudo /bin/bash 在这里插入图片描述

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

4、三台机器的认证。 命令:./initHosts.sh 在这里插入图片描述

5、以hadoop用户登录。 命令:su - hadoop 在这里插入图片描述

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

7、启动集群。 命令:./startAll.sh 在这里插入图片描述

创建hive库

8、创建Oozie的目录。 命令:mkdir /tmp/Oozie 在这里插入图片描述

9、将编译之后的两个安装包拷贝到该目录下。 命令:cp /tmp/oozie/oozie-5.0.0/sharelib/target/oozie-sharelib-5.0.0.tar.gz /tmp/Oozie/ cp /tmp/oozie/oozie-5.0.0/distro/target/oozie-5.0.0-distro.tar.gz /tmp/Oozie/ 在这里插入图片描述

10、进入Oozie目录下。 命令:cd /tmp/Oozie/ 在这里插入图片描述

11、解压oozie-sharelib-5.0.0.tar.gz。 命令:tar -xf oozie-sharelib-5.0.0.tar.gz 在这里插入图片描述

12、进入lib目录下。 命令:cd share/cd lib/ 在这里插入图片描述

13、删除hive。 命令:rm -rf hive 在这里插入图片描述

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

15、将oozie-sharelib-hive2-5.0.0.jar备份到上级目录中。 命令:mv oozie-sharelib-hive2-5.0.0.jar .. 在这里插入图片描述

16、返回上级目录。 命令:cd .. 在这里插入图片描述

17、删除hive2目录下的文件。 命令:rm -rf hive2/* 在这里插入图片描述

18、将备份出来的jar文件移回hive2。 命令:mv oozie-sharelib-hive2-5.0.0.jar hive2/ 在这里插入图片描述

19、将hive的master中的所有jar包拷贝到hive2中。 命令:scp app-12:/hadoop/Hive/apache-hive-3.1.1-bin/lib/* hive2/ 在这里插入图片描述

20、查看hive2。 命令:ls hive2/ 在这里插入图片描述

创建Spark库

21、创建存放spark的文件。 命令:mkdir spark2 在这里插入图片描述

22、将spark目录下的oozie-sharelib-spark-5.0.0.jar拷贝到spark2中。 命令:cp spark/oozie-sharelib-spark-5.0.0.jar spark2 在这里插入图片描述

23、将Spark的jar包文件拷贝到spark2中。 命令:cp /hadoop/Spark/spark-2.4.0-bin-hadoop3.1.2/jars/* spark2 在这里插入图片描述

24、删除spark目录。 命令:rm -rf spark 在这里插入图片描述

25、返回Oozie目录。 命令:cd /tmp/Oozie/ 在这里插入图片描述

26、解压oozie-5.0.0-distro.tar.gz。 命令:tar -xf oozie-5.0.0-distro.tar.gz 在这里插入图片描述

27、进入oozie-5.0.0目录下。 命令:cd oozie-5.0.0 在这里插入图片描述

28、删除oozie-sharelib-5.0.0.tar.gz包。 命令:rm -rf oozie-sharelib-5.0.0.tar.gz 在这里插入图片描述

29、删除oozie-examples.tar.gz包。 命令:rm -rf oozie-examples.tar.gz 在这里插入图片描述

30、将api-util-1.0.0-M20.jar拷贝到spark2中。 命令:cp embedded-oozie-server/webapp/WEB-INF/lib/api-util-1.0.0-M20.jar /tmp/Oozie/share/lib/spark2/ 注:如果不拷贝在操作中会出现问题。 在这里插入图片描述

31、为了支持pyspark,需要交pyspark相关的库拷贝到spark2中。 命令:cp /hadoop/Spark/spark-2.4.0-bin-hadoop3.1.2/python/lib/*.zip /tmp/Oozie/share/lib/spark2/在这里插入图片描述

32、返回上层目录。 命令:cd .. 在这里插入图片描述

33、删除原来的压缩文件。 命令:rm -rf *.gz 在这里插入图片描述

34、打包文件。 命令:tar -czf oozie-sharelib-5.0.0.tar.gz share/、tar -czf oozie-5.0.0-distro.tar.gz oozie-5.0.0/ 在这里插入图片描述

安装client和server

在app-11上安装server,server包含了client。可以安装多个client,在app-12和app-13上都可以安装client,但是server只有一个,在app-11上。 下载库 1、在集群的根目录下创建安装Oozie的目录。 命令:mkdir /hadoop/Oozie 在这里插入图片描述

2、确保hadoop的配置文件内容齐全。 命令:vi /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/core-site.xml 注:如果没有需要手动添加,添加之后重启集群。 在这里插入图片描述 在这里插入图片描述

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

4、将oozie-5.0.0-distro.tar.gz解压到Oozie安装目录下。 命令:tar -xf /tmp/Oozie/oozie-5.0.0-distro.tar.gz 在这里插入图片描述

5、进入解压之后的目录下。 命令:cd oozie-5.0.0/ 在这里插入图片描述

6、创建web的库。 命令:mkdir libext 在这里插入图片描述

7、进入到libext目录下。 命令:cd libext/ 在这里插入图片描述

8、下载mysql连接器。 命令:wget https://repo1.maven.org/maven2/mysql/mysql-connector-java/8.0.11/mysql-connector-java-8.0.11.jar 在这里插入图片描述

9、下载java Spring 库。 命令:wget http://archive.cloudera.com/gplextras/misc/ext-2.2.zip 在这里插入图片描述

修改配置文件

10、进入配置文件。 命令:cd /hadoop/Oozie/oozie-5.0.0/conf/ 在这里插入图片描述

11、删除oozie-site.xml文件。 命令:rm -rf oozie-site.xml 在这里插入图片描述

12、将修改好的配置文件拷贝过来。 命令:cp /tmp/Spark-stack/Oozie/conf/oozie-site.xml ./ 在这里插入图片描述

13、进入hadoop-conf目录下。 命令:cd hadoop-conf 在这里插入图片描述

14、删除hadoop-conf下所有文件。 命令:rm -rf * 在这里插入图片描述

15、拷贝hadoop的相应配置文件。 命令: cp /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/core-site.xml ./ cp /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/hdfs-site.xml ./ cp /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/yarn-site.xml ./ cp /hadoop/Hadoop/hadoop-3.1.2/etc/hadoop/mapred-site.xml ./ 在这里插入图片描述

配置mysql

1、在app-12上,选择hadoopmysql下的new terminal。 在这里插入图片描述

2、启动mysql。 命令:mysql -uroot -p 在这里插入图片描述

3、创建databases。 命令:create database oozie; 在这里插入图片描述

4、创建用户。 命令:create user "oozie"@"%" identified by "Yhf_1018"; 在这里插入图片描述

5、给用户赋权限。 命令:grant all privileges on oozie.* to "oozie"@"%" with grant option; 在这里插入图片描述

6、flush配置。 命令:flush privileges; 在这里插入图片描述

7、退出mysql。 命令:quit; 在这里插入图片描述

Sharelib的制作和Oozie启动

1、在app-11上,进入安装Oozie的目录下。 命令:cd /hadoop/Oozie/oozie-5.0.0/ 在这里插入图片描述

2、创建sharelib。 命令:bin/oozie-setup.sh sharelib create -fs hdfs://dmcluster -locallib /tmp/Oozie/oozie-sharelib-5.0.0.tar.gz 注:将share上传到hdfs。提交信息的时候在/user/hadoop/share/lib/lib_20201105132658位置寻找版本信息sharelib。 在这里插入图片描述

3、查看sharelib。 命令:hdfs dfs -ls /user/hadoop/share/lib/lib_20201105132658 在这里插入图片描述

4、将mysql-connector-java-8.0.11.jar拷贝到lib目录下。 命令:cp libext/mysql-connector-java-8.0.11.jar lib/ 在这里插入图片描述

5、初始化databases。 命令:bin/oozie-setup.sh db create -run 注:进行了创建和验证并且生成了一个sql文件。 在这里插入图片描述

6、启动Oozie。 命令:bin/oozie-start.sh 在这里插入图片描述

7、查看11000端口(Oozie对外访问的端口号)是否启动。 命令:netstat -tnl 注:不要着急查看等待30秒。 在这里插入图片描述

8、登录端口号查看。 使用内部的Chrome,输入:app-11:11000 注:现在还没有Oozie任务所以是空的。 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

9、检验系统里用的是哪个sharelib。 命令:bin/oozie admin -shareliblist 在这里插入图片描述

设置自动化启停脚本

1、打开hadoop的config加上Oozie。 命令:vi /hadoop/config.conf export OOZIE_IS_INSTALL=True 在这里插入图片描述

2、source环境变量。 命令:source ~/.bashrc 在这里插入图片描述

3、确认start.all脚本有Oozie。 命令:vi /hadoop/startAll.sh 注:Oozie在最后,因为它依赖hadoop和Spark。 在这里插入图片描述

4、下载Oozie启停脚本。 命令:cp /tmp/Spark-stack/Oozie/sh/* /hadoop/tools/ 在这里插入图片描述

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

6、赋予执行权限。 命令:chmod -R a+x *Oozie* 在这里插入图片描述

详细学习内容可观看Spark快速大数据处理扫一扫~~~或者引擎搜索Spark余海峰 在这里插入图片描述