• Ubuntu22.04下安装Spark2.4.0(Local模式)


    目录

    一、版本信息

    二、安装Hadoop(伪分布式)

    三、安装JAVA JDK

    四、安装Spark(Local模式)

    1.将Spark安装包移到下载目录中

    2.下载Spark并确保hadoop用户对Spark目录有操作权限

    五、修改Spark的配置文件

    六、验证Spark是否安装成功


    一、版本信息

    虚拟机产品:VMware® Workstation 17 Pro   虚拟机版本:17.0.0 build-20800274

    ISO映像文件:ubuntukylin-22.04-pro-amd64.iso

    Hadoop版本:Hadoop 3.1.3

    JDK版本:Java JDK 1.8

    Spark版本:Spark 2.4.0

    这里有我放的百度网盘下载链接,读者可以自行下载:

    链接:https://pan.baidu.com/s/121zVsgc4muSt9rgCWnJZmw 
    提取码:wkk6

    注意:其中的ISO映像文件为ubuntukylin-16.04.7版本的而不是22.04版本,22.04版本内存过大无法上传,见谅!!!

    也可去Spark官网进行下载:Spark官方下载地址

    二、安装Hadoop(伪分布式)

    Spark的安装过程较为简单,在已安装好 Hadoop 的前提下,经过简单配置即可使用。

    如果读者没有安装Hadoop3.1.3(伪分布式),请访问林子雨老师的Hadoop3.1.3安装教程进行Hadoop的伪分布式安装:Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)_厦大数据库实验室博客icon-default.png?t=N7T8https://dblab.xmu.edu.cn/blog/2441-2/

    三、安装JAVA JDK

    安装Hadoop3.1.3的过程就已经要求安装JAVA JDK1.8了。如果没有,请参考林子雨老师的Hadoop安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04进行安装配置。

    四、安装Spark(Local模式)

    在安装Spark之前默认读者已经在虚拟机软件上安装VMware Tools,若没有安装请移步于本人的另一篇文章:真·保姆级——在VMware的Ubuntukylin上进行Hadoop单机/伪分布式安装时安装VMware Tools后虚拟机与物理机之间无法传输文件和复制粘贴的问题(附Ubuntu更改默认登录用户)-CSDN博客

    1.将Spark安装包移到下载目录中

    将物理机上下载的Spark安装包拖拽到读者虚拟机Ubuntu系统家目录中的下载目录中:

    2.下载Spark并确保hadoop用户对Spark目录有操作权限

    1. sudo tar -zxf ~/下载/spark-2.4.0-bin-without-hadoop.tgz -C /usr/local/
    2. cd /usr/local
    3. sudo mv ./spark-2.4.0-bin-without-hadoop/ ./spark
    4. sudo chown -R hadoop:hadoop ./spark # 此处的 hadoop 为你的用户名
    • 将Apache Spark压缩包解压到/usr/local/目录下
    • 切换当前工作目录到/usr/local
    • 将解压出来的Spark目录重命名为spark,以便于记忆和管理
    • /usr/local/spark目录及其子目录和文件的所有权更改为用户hadoop,确保该用户对Spark目录有操作权限,便于后续的配置和使用

    五、修改Spark的配置文件

    安装Spark后,还需要修改Spark的配置文件spark-env.sh

    1. cd /usr/local/spark
    2. cp ./conf/spark-env.sh.template ./conf/spark-env.sh
    • 切换当前工作目录到/usr/local/spark。这个目录是Apache Spark的安装目录,之前的步骤中已经将Spark解压并重命名到这个位置
    • 创建一个可编辑的环境配置文件spark-env.sh,基于模板文件spark-env.sh.template。通过编辑这个文件,可以自定义Spark的运行环境,例如设置JVM选项、Spark的工作节点内存限制、日志配置等

    编辑spark-env.sh文件:

    vim ./conf/spark-env.sh

    在第一行添加以下配置信息并保存:

    export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath)

    配置完成后就可以直接使用,不需要像Hadoop运行启动命令。

    六、验证Spark是否安装成功

    通过运行Spark自带的示例,验证Spark是否安装成功。

    1. cd /usr/local/spark
    2. bin/run-example SparkPi

    运行Apache Spark自带的一个示例程序 —— SparkPi。

    这个示例程序计算π的值,是一个经典的计算密集型任务,常用来测试Spark集群的安装是否成功以及其基本的运行情况

    下面详细解释这些命令的作用:

    1. cd /usr/local/spark:这条命令将当前的工作目录切换到Apache Spark的安装目录。前提是读者已经按照之前的指导安装并配置了Spark,并且将其安装在了/usr/local/spark目录下。

    2. bin/run-example SparkPi:这条命令实际上是运行Spark自带的一个示例程序。 

    • bin/run-example 是一个脚本,位于Spark安装目录下的bin文件夹中。它用于运行Spark自带的示例程序。
    • SparkPi 是要运行的示例程序的名称。这个程序通过蒙特卡洛方法计算π的值。

    具体来说,这个命令的执行过程如下:

    • 当执行 bin/run-example SparkPi 命令时,Spark会启动一个应用程序实例,并执行计算π值的任务。
    • 这个任务会被分解成多个小任务(task),并可能在一个或多个工作节点(如果读者配置了Spark集群的话)上并行执行。
    • 执行完成后,程序会输出计算得到的π值。

    执行时会输出非常多的运行信息,输出结果不容易找到,bin/run-example SparkPi 2>&1 | grep "Pi is"这条命令的作用是运行SparkPi示例程序,然后搜索并显示所有包含“Pi is”的输出行,显示程序计算出的π值的那一行,因此这个命令可以帮助用户直接查看计算结果,而不必手动从可能很长的程序输出中寻找相关信息。

    bin/run-example SparkPi 2>&1 | grep "Pi is"

    下面详细解释这些命令的作用:

    1. bin/run-example SparkPi:运行Spark自带的示例程序SparkPi。这个程序计算π的值,是一个用来测试Spark安装和配置是否正确的经典示例。

    2. 2>&1:这部分是重定向命令。2代表标准错误(stderr),1代表标准输出(stdout)。2>&1的意思是将标准错误重定向到标准输出,这样错误信息和正常输出信息都会被发送到同一个地方(即标准输出)。

    3. | grep "Pi is":‘|'是管道符,它的作用是将前一个命令的输出作为后一个命令的输入。grep是一个文本搜索工具,可以根据指定的模式(pattern)搜索文本。这里,grep "Pi is"表示搜索包含“Pi is”的行。

    过滤后的运行结果如下图示:

    至此,Spark安装成功!!!

  • 相关阅读:
    Evaluating Open-Domain Question Answering in the Era of Large Language Models
    数据库基础知识
    Linux:磁盘分区,挂载(含实例)
    【深度学习】解析Vision Transformer (ViT): 从基础到实现与训练
    热乎的过万字GameFramework讲解笔记文档
    红黑树
    【无标题】
    HCIP- ICT实战进阶ex1-MPLS
    Magicodes.Pay已支持Volo Abp
    python刷算法的一些骚操作(一)
  • 原文地址:https://blog.csdn.net/qq_67822268/article/details/136406029