spark-2.4.2.tgz下载及编译
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,51CTO没有目录功能么?好难受========有任何问题欢迎加企鹅讨论^-^1176738641========前期准备文件夹创建#用户目录下创建五个文件夹app #存放应
千家信息网最后更新 2025年01月23日spark-2.4.2.tgz下载及编译
51CTO没有目录功能么?好难受
========
有任何问题欢迎加企鹅讨论^-^
1176738641
========
前期准备
文件夹创建
#用户目录下创建五个文件夹app #存放应用software #存放应用压缩包data #存放测试数据lib #存放jar包source #存放源码
下载需要的软件及版本
- apache-maven-3.6.1-bin.tar.gz
- hadoop-2.6.0-cdh6.14.0.tar.gz
- jdk-8u131-linux-x64.tar.gz
- scala-2.11.8.tgz
安装jdk8
卸载现有jdk
rpm -qa|grep java# 如果安装的版本低于1.7,卸载该jdkrpm -e 软件包1 软件包2
解压jdk到~/app目录下
tar -zxf jdk-8u131-linux-x64.tar.gz -C ~/app/
测试jdk8安装成功
~/app/jdk1.8.0_131/bin/java -versionjava version "1.8.0_131"Java(TM) SE Runtime Environment (build 1.8.0_131-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
版本信息正常打印,说明安装成功
配置环境变量
切记 >>为追加!>为覆盖!一定不要打成>
echo "####JAVA_HOME####"echo "export JAVA_HOME=/home/max/app/jdk1.8.0_131" >> ~/.bash_profile echo "export PATH=$JAVA_HOME/bin:$PATH" >> ~/.bash_profile # 刷新环境变量source ~/.bash_profile
此时,在任意目录下,使用java -version都可生效
安装maven
解压到~/app/
tar -zxvf apache-maven-3.6.1-bin.tar.gz -C ~/app
测试maven安装成功
~/app/apache-maven-3.6.1/bin/mvn -vApache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-04T15:00:29-04:00)Maven home: /home/max/app/apache-maven-3.6.1Java version: 1.8.0_131, vendor: Oracle Corporation, runtime: /home/max/app/jdk1.8.0_131/jreDefault locale: en_US, platform encoding: UTF-8OS name: "linux", version: "2.6.32-358.el6.x86_64", arch: "amd64", family: "unix"
显示出版本信息,说明安装成功
添加环境变量
切记 >>为追加!>为覆盖!一定不要打成>
echo "####MAVEN_HOME####" >> ~/.bash_profileecho "export MAVEN_HOME=/home/max/app/apache-maven-3.6.1/" >> ~/.bash_profileecho "export PATH=$MAVEN_HOME/bin:$PATH" >> ~/.bash_profile # 刷新环境变量source ~/.bash_profile
此时,在任意目录下,使用mvn -v 都可生效
配置本地仓库目录&&远程仓库地址
# 创建本地仓库文件夹mkdir ~/maven_repo# 修改settings.xml文件vim $MAVEN_HOME/conf/settings.xml
注意标签!别与已经存在的标签冲突
/home/max/maven_repo nexus-aliyun *,!cloudera Nexus aliyun http://maven.aliyun.com/nexus/content/groups/public
安装Scala
解压到~/app/
tar -zxf scala-2.11.8.tgz -C ~/app/
测试scala安装成功
~/app/scala-2.11.8/bin/scala scala> [max@hadoop000 scala-2.11.8]$ scalaWelcome to Scala 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_131).Type in expressions for evaluation. Or try :help.scala>
安装成功
添加环境变量
echo "####SCALA_HOME####" >> ~/.bash_profileecho "export SCALA_HOME=/home/max/app/scala-2.11.8" >> ~/.bash_profileecho "export PATH=$SCALA_HOME/bin:$PATH" >> ~/.bash_profile # 刷新环境变量source ~/.bash_profile
此时,在任意目录下,使用scala 都可生效
安装Git
默认为CentOS用户
sudo yum install git#自动安装,期间需要按几次y#显示如下Installed: git.x86_64 0:1.7.1-9.el6_9 Dependency Installed: perl-Error.noarch 1:0.17015-4.el6 perl-Git.noarch 0:1.7.1-9.el6_9 Dependency Updated: openssl.x86_64 0:1.0.1e-57.el6 Complete!#安装成功
前期工作终于完事儿了!!!!!
====================累成狗的分割线=========================
其实漫长的编译之路才刚刚开始
下载&编译Spark源码
祭出大杀器!===>参考官网
下载&解压Spark2.4.2源码
cd ~/sourcewget https://archive.apache.org/dist/spark/spark-2.4.2/spark-2.4.2.tgz#有时候贼慢[max@hadoop000 source]$ lltotal 15788-rw-rw-r--. 1 max max 16165557 Apr 28 12:27 spark-2.4.2.tgz[max@hadoop000 source]$ tar -zxf spark-2.4.2.tgz
关于Maven
我们不使用mvn这个命令,直接用make-distribution.sh脚本,但是需要修改一下
#spark-2.4.2文件夹下vim ./dev/make-distribution.sh#将这些行注释掉 此处为最佳实践,为的是通过指定版本号减少编译时间#VERSION=$("$MVN" help:evaluate -Dexpression=project.version $@ 2>/dev/null\# | grep -v "INFO"\# | grep -v "WARNING"\# | tail -n 1)#SCALA_VERSION=$("$MVN" help:evaluate -Dexpression=scala.binary.version $@ 2>/dev/null\# | grep -v "INFO"\# | grep -v "WARNING"\# | tail -n 1)#SPARK_HADOOP_VERSION=$("$MVN" help:evaluate -Dexpression=hadoop.version $@ 2>/dev/null\# | grep -v "INFO"\# | grep -v "WARNING"\# | tail -n 1)#SPARK_HIVE=$("$MVN" help:evaluate -Dexpression=project.activeProfiles -pl sql/hive $@ 2>/dev/null\# | grep -v "INFO"\# | grep -v "WARNING"\# | fgrep --count "hive ";\# # Reset exit status to 0, otherwise the script stops here if the last grep finds nothing\# # because we use "set -o pipefail"# echo -n)##添加一下参数,注意,版本号要对应自己想要的生产环境VERSION=2.4.2SCALA_VERSION=2.11SPARK_HADOOP_VERSION=hadoop-2.6.0-cdh6.14.0SPARK_HIVE=1
修改pom.xml
在maven默认的库里默认只有apache版本的Hadoop依赖,但由于我们hadoop版本是hadoop-2.6.0-cdh6.14.0,我们需要在pom文件里添加CDH仓库
#spark-2.4.2文件夹下vim pom.xml
central http://maven.aliyun.com/nexus/content/groups/public// true true always fail cloudera https://repository.cloudera.com/artifactory/cloudera-repos/
开始编译
./dev/make-distribution.sh \--name hadoop-2.6.0-cdh6.14.0 \--tgz \-Phadoop-2.6 \-Dhadoop.version=2.6.0-cdh6.14.0 \-Phive -Phive-thriftserver \-Pyarn \-Pkubernetes
第一次大约需要编译 1h,我是阿里云镜像
再次编译大约就需要10min
注:报错的话一定要学会看报错日志!
##编译完成
#编译成功最后一部分日志+ mkdir /home/max/source/spark-2.4.2/dist/conf+ cp /home/max/source/spark-2.4.2/conf/docker.properties.template /home/max/source/spark-2.4.2/conf/fairscheduler.xml.template /home/max/source/spark-2.4.2/conf/log4j.properties.template /home/max/source/spark-2.4.2/conf/metrics.properties.template /home/max/source/spark-2.4.2/conf/slaves.template /home/max/source/spark-2.4.2/conf/spark-defaults.conf.template /home/max/source/spark-2.4.2/conf/spark-env.sh.template /home/max/source/spark-2.4.2/dist/conf+ cp /home/max/source/spark-2.4.2/README.md /home/max/source/spark-2.4.2/dist+ cp -r /home/max/source/spark-2.4.2/bin /home/max/source/spark-2.4.2/dist+ cp -r /home/max/source/spark-2.4.2/python /home/max/source/spark-2.4.2/dist+ '[' false == true ']'+ cp -r /home/max/source/spark-2.4.2/sbin /home/max/source/spark-2.4.2/dist+ '[' -d /home/max/source/spark-2.4.2/R/lib/SparkR ']'+ '[' true == true ']'+ TARDIR_NAME=spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0+ TARDIR=/home/max/source/spark-2.4.2/spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0+ rm -rf /home/max/source/spark-2.4.2/spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0+ cp -r /home/max/source/spark-2.4.2/dist /home/max/source/spark-2.4.2/spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0+ tar czf spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0.tgz -C /home/max/source/spark-2.4.2 spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0+ rm -rf /home/max/source/spark-2.4.2/spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0
由此可以看出编译后的包在spark源码包下
解压
[max@hadoop000 spark-2.4.2]$ tar -zxf spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0.tgz -C ~/app/[max@hadoop000 spark-2.4.2]$ cd ~/app/[max@hadoop000 app]$ lltotal 16drwxrwxr-x. 6 max max 4096 Apr 28 17:02 apache-maven-3.6.1drwxr-xr-x. 8 max max 4096 Mar 15 2017 jdk1.8.0_131drwxrwxr-x. 6 max max 4096 Mar 4 2016 scala-2.11.8drwxrwxr-x. 11 max max 4096 Apr 28 21:20 spark-2.4.2-bin-hadoop-2.6.0-cdh6.14.0
完事儿!
编译
成功
文件
版本
环境
目录
变量
文件夹
仓库
源码
测试
软件
事儿
信息
前期
日志
标签
用户
软件包
应用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全法对黑客行为
苹果在俄罗斯有服务器吗
校园网络安全工作总结报告
长江存储 软件开发岗
深圳体感软件开发
腾纵网络技术有限公司
php数据库循环操作
市北区平台软件开发哪家好
小森生活原来的默认服务器
软件测试好还是软件开发
ftp服务器登陆问题
shell脚本监控服务器状态
查德特里克堡服务器
客户 服务器网络
计算机网络技术难学吗
上海网络软件开发信息推荐
mac打开服务器文件
云服务器的数据管理方法有哪些
通达信同花顺数据库
一站式网络技术开发哪个好
网络技术老人
盛金融软件开发
近期网络安全事件2022
阿勒泰ibm服务器维保
服务器sam管理员密码
魔兽世界赛季服都有什么服务器
网络安全幼儿培训
u8不能登录到服务器
深圳电力设计院 网络安全
怎么建立二手车数据库