Apache Spark2.3.2源码编译+部署HA详解(CDH5.13.1环境)

本文详细介绍了如何在CDH5.13.1环境中,使用Apache Spark 2.3.2源码进行编译,并部署高可用(HA)集群。首先,讲解了为何需要源码编译以及编译环境的要求,包括Java、Maven和Scala的版本。接着,详细阐述了编译前的准备,如JDK、Maven和Scala的安装配置。然后,指导如何在pom.xml中添加CDH依赖库,以及通过Maven或`make-distribution.sh`脚本进行编译。最后,详细描述了Spark HA服务的搭建过程,包括配置`spark-env.sh`、创建软链接、配置slaves文件以及启动和验证HA集群。
摘要由CSDN通过智能技术生成

前言:

首先为什么要用apache spark2.3.2的源码来自己编译?

  1. 因为spark一般需要结合Hadoop来使用,所以需要对应Hadoop相应的版本。
  2. CDH编译好的spark,可能在结合其它组件使用的时候,容易出现一些问题。

 

简介:

  1. 网址:http://spark.apache.org/
  2. 从官网简介可以看出:
    1. 快如闪电的统一分析引擎
    2. Apache Spark™是用于大规模数据处理的统一分析引擎。
  3. 有很多的优点:

             

    1. 速度快:以100倍的速度运行工作负载。
    2. 便于使用:支持Java,Scala,Python,R和SQL等语言快速编写应用程序。
    3. 健壮性:可以结合SQL、流式处理和一些复杂的分析,比如机器学习等。
    4. 运行在各个地方:Spark运行在Hadoop、Apache Mesos、Kubernetes、standalone或云端。它可以访问不同的数据源。

 

编译环境:

根据spark官网给出的信息:http://spark.apache.org/docs/2.3.2/

        以下是官网给出的版本要求信息:
        
        从这段信息可以看出,spark支持的是Java 8+和Scala 2.11.x,对于spark2.2.0就已经不再支持Java 7和Hadoop 2.6.5之前的版本了(但是我在CDH5.13.1上编译,运行spark都没什么问题,Hadoop是2.6.0的),而spark2.3.0就开始不再支持Scala 2.10了。
        如果需要使用Maven进行编译,官网给出的编译要求和编译步骤:http://spark.apache.org/docs/2.3.2/building-spark.html

        以下是官网给出的Maven版本要求:
        
        从这段信息可以看出,Maven需要3.3.9或以上版本


以下是笔者的环境版本:

  1. CentOS release 6.10 (Final)
  2. java version "1.8.0_131"
  3. Apache Maven 3.5.0
  4. Scala version 2.11.8
  5. Apache spark 2.3.2

 

编译前准备:

众所周知,spark是个非常吃内存的家伙,所以用虚拟机的小伙伴,最好把虚拟机内存调大一些,最好大于3个G。

安装配置JDK

Java网址:https://www.oracle.com/technetwork/java/index.html+

  1. 下载JDK:
    1. 选择JDK版本的地址,笔者选的是Java SE 8,点击进入:https://www.oracle.com/technetwork/java
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值