【Spark实战】Windows环境下编译Spark2 Linux上部署Spark On Yarn

这篇具有很好参考价值的文章主要介绍了【Spark实战】Windows环境下编译Spark2 Linux上部署Spark On Yarn。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Windows环境下编译Spark2

环境准备

  • git-2.14.1
  • maven-3.9.2
  • jdk-1.8
  • scala-2.11.8
  • zinc-0.3.15 主下载地址
  • spark-2.3.4 github官方地址

编译准备

  1. maven远程仓库使用的是阿里云的

  2. 解压源码包spark-2.3.4.zip,修改根模块的pom文件。主要目的是为了变更hadoop的版本号,默认是2.6.5

<hadoop.version>2.9.2</hadoop.version>
  1. 修改spark-2.3.4\dev\make-distribution.sh文件
    主要是为了跳过maven命令检查版本块,直接赋予版本,这块其实很耗时,而且截取版本号时,也不准确。
# 增加mvn的内存
export MAVEN_OPTS="${MAVEN_OPTS:--Xmx4g -XX:ReservedCodeCacheSize=512m}"

# 跳过maven命令检查版本块,直接赋予版本

# VERSION=$("$MVN" help:evaluate -Dexpression=project.version $@ 2>/dev/null | grep -v "INFO" | tail -n 1)
# SCALA_VERSION=$("$MVN" help:evaluate -Dexpression=scala.binary.version $@ 2>/dev/null\
#     | grep -v "INFO"\
#     | tail -n 1)
# SPARK_HADOOP_VERSION=$("$MVN" help:evaluate -Dexpression=hadoop.version $@ 2>/dev/null\
#     | grep -v "INFO"\
#     | tail -n 1)
# SPARK_HIVE=$("$MVN" help:evaluate -Dexpression=project.activeProfiles -pl sql/hive $@ 2>/dev/null\
#     | grep -v "INFO"\
#     | fgrep --count "<id>hive</id>";\
#     # 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.3.4
SCALA_VERSION=2.11
SPARK_HADOOP_VERSION=2.9.2
SPARK_HIVE=1
  1. 为了加速编译

    由于脚本的问题,即使单独安装了,也会去下载这两个安装包放到特定的目录下,目前脚本里下载链接已经失败,需要手动下载,再将zinc-0.3.15和scala-2.11.8解压到spark-2.3.4\build下。

windows 编译spark,# Spark实战,Spark,spark,windows,linux

  1. 执行编译

    采用编译成像 Spark 下载页面分发的那样的 Spark 发行版那样,在Git bash下使用 ./dev/make-distribution.sh脚本,具体执行一下命令。

     ./dev/make-distribution.sh --tgz -Pyarn -Phive -Phive-thriftserve
    

    windows 编译spark,# Spark实战,Spark,spark,windows,linux
    windows 编译spark,# Spark实战,Spark,spark,windows,linux

    编译结果包为spark-2.3.4-bin-2.9.2.tgz

Linux上部署Spark On Yarn

安装前提

  • JDK1.8

部署关键步骤

解压缩spark-2.3.4-bin-2.9.2.tgz

tar -zxvf /opt/software_package/spark-2.3.4-bin-2.9.2.tgz -C /opt/software/bigdata/
配置hadoop变量

主要配置HADOOP_CONF_DIRYARN_CONF_DIRHDFS_CONF_DIR,需要的目录就是Hadoop集群(HDFS、Yarn)的配置文件。

vim ~/.bashrc

# java config
export JAVA_HOME=/home/bigdata/software/java
export PATH=$JAVA_HOME/bin:$PATH

# hadoop config 
export HADOOP_CONF_DIR=/home/bigdata/software/hadoop/etc/hadoop
export YARN_CONF_DIR=/home/bigdata/software/hadoop/etc/hadoop
export LD_LIBRARY_PATH=/home/bigdata/software/hadoop/lib/native

source ~/.bashrc

验证

[bigdata@spark2host01 spark2]$ ./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --num-executors 3 --driver-memory 1g --executor-memory 1g --executor-cores 1 examples/jars/spark-examples*.jar 10

成功执行即可。

开启spark-shell交互终端,可以打开WebUI界面

[bigdata@spark2host01 spark2]$ ./bin/spark-shell
[bigdata@spark2host01 spark2]$ ./bin/spark-shell
23/07/04 20:41:25 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://IP:4040
Spark context available as 'sc' (master = local[*], app id = local-1688474490456).
Spark session available as 'spark'.
Welcome to
   ____              __
  / __/__  ___ _____/ /__
 _\ \/ _ \/ _ `/ __/  '_/
/___/ .__/\_,_/_/ /_/\_\   version 2.3.4
   /_/
      
Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_131)
Type in expressions to have them evaluated.
Type :help for more information.

UI默认端口4040:http://IP:4040

windows 编译spark,# Spark实战,Spark,spark,windows,linux

使用:quit退出交互。

部署Spark-SQL

前提

  1. 需要使用hive中的hive-site.xml文件:需要使用hive中的hive-site.xml文件。拷贝到spark的配置文件夹下/home/bigdata/software/spark2/conf。需要确认hive-site.xml下的hive.metastore.warehouse.dir属性。
  2. mysql-connector-java-8.0.29.jar:将mysql连接的包放到/home/bigdata/software/spark2/jars下。hive的元数据存储数据库使用的mysql。

启动

[bigdata@spark2host01 spark2]$./bin/spark-sql --master yarn

windows 编译spark,# Spark实战,Spark,spark,windows,linux

使用exit退出。文章来源地址https://www.toymoban.com/news/detail-539215.html

到了这里,关于【Spark实战】Windows环境下编译Spark2 Linux上部署Spark On Yarn的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • WINDOWS 环境下编译 OLLVM 替换到 NDK 环境

    这里使用的是 AGP 7.2.2 、 NDK 25.2.9519653 、 llvm 14.0.7 、 cmake 3.22.1 、 python39 git 用来下载源码 python 搞到这一步环境变量里应该已经有python了吧 NDK AGP 的 7.2.2 版本默认使用的 NDK 版本为 21.4.7075529 ,对应的 LLVM 为 9.0.9 。 需要根据实际情况选择 NDK 对应的 LLVM 版本,编译 OLLVM,LLV

    2024年02月16日
    浏览(42)
  • 如何在windows环境下编译T

    一, 安装MYSYS2  1. 去https://www.msys2.org下载 msys2-x86_64-xxxxx.exe; 2. 按照msys2.org主页提示的步骤安装; 3.安装完默认起来的是 UCRT的, 可以根据环境的需要选择, 我选择的 MSYS2 MINGW64 4. 搭建编译环境, 安装对应的软件包  4.1 更新包数据和核心数据包     pacman -Syu 4.2 安装工具链

    2024年02月08日
    浏览(53)
  • Spark2x原理剖析(二)

    基于社区已有的JDBCServer基础上,采用多主实例模式实现了其高可用性方案。集群中支持同时共存多个JDBCServer服务,通过客户端可以随机连接其中的任意一个服务进行业务操作。即使集群中一个或多个JDBCServer服务停止工作,也不影响用户通过同一个客户端接口连接其他正常的

    2024年02月09日
    浏览(42)
  • Hive on Spark环境搭建

    Hive 引擎包括:默认 MR、tez、spark 最底层的引擎就是MR (Mapreduce)无需配置,Hive运行自带 Hive on Spark:Hive 既作为存储元数据又负责 SQL 的解析优化,语法是 HQL 语法,执行引擎变成了 Spark,Spark 负责采用 RDD 执行。 Spark on Hive : Hive 只作为存储元数据,Spark 负责 SQL 解析优化,语

    2024年02月13日
    浏览(49)
  • linux开发记录:在linux环境下编写代码(1)

              0.进入与使用   用终端进入,相当于windows的cmd.   ctrl+alt+T打开终端。   终端命令:ls查看文件夹下的文件   mkdir filename在当前目录下创造一个文件夹   cd filename 进入某文件夹   . 代表当前目录 .. 上层目录   ping  ipadress 测试目标地址是否能访问(测试联通情况)

    2023年04月13日
    浏览(35)
  • Spark2.2出现异常:ERROR SparkUI: Failed to bind SparkUI

    详细错误信息如下: 复制代码 19/03/19 11:04:18 INFO util.log: Logging initialized @5402ms 19/03/19 11:04:18 INFO server.Server: jetty-9.3.z-SNAPSHOT 19/03/19 11:04:18 INFO server.Server: Started @5604ms 19/03/19 11:04:18 WARN util.Utils: Service ‘SparkUI’ could not bind on port 4040. Attempting port 4041. 19/03/19 11:04:18 WARN util.Utils: Se

    2024年02月13日
    浏览(35)
  • Spark on YARN 部署搭建详细图文教程

    目录 一、引言  二、SparkOnYarn 本质 2.1 Spark On Yarn 的本质? 2.2 Spark On Yarn 需要啥? 三、配置 spark on yarn 环境 3.1 spark-env.sh  3.2 连接到 YARN 中 3.2.1 bin/pyspark 3.2.2 bin/spark-shell 3.2.3 bin/spark-submit (PI) 四、部署模式 DeployMode  4.1 Cluster 模式 4.2 Client 模式 4.3 两种模式的区别  4.4 测试

    2024年02月06日
    浏览(40)
  • linux环境下编译,安卓平台使用的luajit库

    一、下载luajit源码 1、linux下直接下载:         a、使用curl下载:https://luajit.org/download/LuaJIT-2.1.0-beta3.tar.gz         b、git下载地址;https://github.com/LuaJIT/LuaJIT.git 2、Windows下载好zip文件,下载地址:https://github.com/LuaJIT/LuaJIT.git,上传到linux机器;使用unzip命令解压 二、下载ND

    2024年02月05日
    浏览(49)
  • Spark单机伪分布式环境搭建、完全分布式环境搭建、Spark-on-yarn模式搭建

    搭建Spark需要先配置好scala环境。三种Spark环境搭建互不关联,都是从零开始搭建。 如果将文章中的配置文件修改内容复制粘贴的话,所有配置文件添加的内容后面的注释记得删除,可能会报错。保险一点删除最好。 上传安装包解压并重命名 rz上传 如果没有安装rz可以使用命

    2024年02月06日
    浏览(83)
  • 《PySpark大数据分析实战》-12.Spark on YARN配置Spark运行在YARN上

    📋 博主简介 💖 作者简介:大家好,我是wux_labs。😜 热衷于各种主流技术,热爱数据科学、机器学习、云计算、人工智能。 通过了TiDB数据库专员(PCTA)、TiDB数据库专家(PCTP)、TiDB数据库认证SQL开发专家(PCSD)认证。 通过了微软Azure开发人员、Azure数据工程师、Azure解决

    2024年02月03日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包