Ubuntu下安装Spark3.2.0教程

Posted Z.Q.Fengᯤ⁵ᴳ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu下安装Spark3.2.0教程相关的知识,希望对你有一定的参考价值。


前言

Spark 的安装需要建立在 Hadoop 的之上(类似于 Hbase 和 Hive),关于 Hadoop 的单机安装以及伪分布式安装可以参考作者的另两篇博客:

本文安装的 Hadoop 及 Java 环境基于林子雨老师的《大数据技术原理与应用(第3版)》中所要求,其中 Java 版本为1.8.0_301Hadoop 版本为3.2.2,这里我的操作系统环境是 Ubuntu 20.04,此安装方法同样适用于低版本。


一、安装Spark

1. 下载压缩包并解压

官网下载目录如下:https://spark.apache.org/downloads.html

建议清华镜像网站下载:https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.2.0/

注意这里建议下载 without-hadoop 版本,此版本适用于所有 Hadoop 版本,若是官网下载,则需要选择 Pre-build with user-provided Hadoop 类型即可下载。

下载文件如下:spark-3.2.0-bin-without-hadoop.tgz,进入下载目录,解压压缩包:

cd ~/Downloads
sudo tar -zxf ./spark-3.2.0-bin-without-hadoop.tgz -C /usr/local 

2. 安装Spark

进入到 /usr/local 目录下,更改文件夹名,赋予用户权限:

cd /usr/local
sudo mv ./spark-3.2.0-bin-without-hadoop/ ./spark    
sudo chown -R hadoop ./spark

3. 配置环境变量

修改 ~/.bashrc 文件:

vim ~/.bashrc

增添下面几行:

export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
export HADOOP_HOME=/usr/local/hadoop

运行如下命令使配置立即生效:

source ~/.bashrc

4. 修改配置文件

创建 spark-env.sh 文件:

cd /usr/local/spark/conf
sudo cp spark-env.sh.template spark-env.sh

修改配置 spark-env.sh 文件:

sudo vim spark-env.sh

将以下内容写入文件:

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

按下 ESC 键,:wq,保存并退出。


二、验证Spark安装及错误处理

1. 运行Spark实例

在终端下,运行以下命令:

cd /usr/local/spark
bin/run-example SparkPi 2>&1 | grep "Pi is"

输出如下,运行成功!

hadoop@fzqs-Laptop:/usr/local/spark$ cd /usr/local/spark
hadoop@fzqs-Laptop:/usr/local/spark$ bin/run-example SparkPi 2>&1 | grep "Pi is"
Pi is roughly 3.143755718778594

2. 启动Spark shell

由于之前已经配置了环境变量,所以这里不需要加上路径也可使用命令:

spark-shell

正常启动界面如下:

注意启动若出现如下警告:

hadoop@fzqs-Laptop:/usr/local$ spark-shell
2021-12-09 23:49:14,625 WARN util.Utils: Your hostname, fzqs-Laptop resolves to a loopback address: 127.0.1.1; using 10.132.13.98 instead (on interface wlo1)
2021-12-09 23:49:14,626 WARN util.Utils: Set SPARK_LOCAL_IP if you need to bind to another address
Setting default log level to "WARN".
......

参考此篇博客:Spark启动:WARN util.Utils: Your hostname, … resolves to a loopback address: …; using … instead

简单执行一下命令:

scala> 12345 + 54321
res0: Int = 66666

scala> 

退出 spark-shell 界面:

:quit

三、总结

尽管 Spark 相对 Hadoop 具有较大优势,但 Spark 并不能完全替代Hadoop,其主要用于替代 Hadoop 中的 MapReduce 计算模型。实际上,Spark 已经很好地融入了 Hadoop 生态系统,并成为其中的重要一员,它可以借助于 YARN 实现资源调度管理,借助于HDFS 实现分布式存储。此外, Hadoop可以使用廉价的、异构的机器来做分布式存储与计算,但是Spark对硬件(内存、CPU等)的要求稍高一些。

以上是关于Ubuntu下安装Spark3.2.0教程的主要内容,如果未能解决你的问题,请参考以下文章

华为云Hadoop与Spark集群环境搭建

续:纠正:ubuntu7.04可以安装,而且完美的安装 ! for《Oracle-10.2.0.1,打补丁10.2.0.5:在 debian 版本4不含4以上,及 ubuntu 7.04不含(代码片段

Ubuntu下安装JDK详细教程

Ubuntu 命令教程全录

Ubuntu 下安装最新 Python3.10 教程 (源码安装)

Ubuntu 下安装最新 Python3.10 教程 (源码安装)