Ubuntu上安装Apache Spark

在Ubuntu上安装Apache Spark的步骤如下:

1. 安装Java

Spark是用Scala编写的,并且依赖Java。因此,首先需要安装Java。

安装OpenJDK 8(或更高版本)

执行以下命令安装OpenJDK:

bash 复制代码
sudo apt update
sudo apt install openjdk-8-jdk

你可以通过运行以下命令检查Java版本,确保安装成功:

bash 复制代码
java -version

输出应该显示Java版本信息,例如:

bash 复制代码
openjdk version "1.8.0_292"

如果没有安装Java 8,你可以选择其他版本(例如OpenJDK 11或OpenJDK 17),但Spark推荐使用Java 8。

2. 安装Scala(可选)

Spark使用Scala作为其默认编程语言,因此最好安装Scala。不过,如果你打算使用PySpark(Python API)或Spark的其他语言API,Scala并不是必须的。

如果你想安装Scala,可以执行以下命令:

bash 复制代码
sudo apt install scala

3. 下载并安装Spark

  1. 访问Apache Spark官网并选择你想要的Spark版本。这里选择一个预编译版本(例如,Spark 3.x版本),并选择与Hadoop兼容的版本。如果你不打算使用Hadoop,可以选择不带Hadoop的版本。

  2. 使用wget命令下载Spark:

bash 复制代码
wget https://dlcdn.apache.org/spark/spark-3.3.1/spark-3.3.1-bin-hadoop3.2.tgz

(请确保根据实际版本修改URL)

  1. 解压下载的文件:
bash 复制代码
tar -xvzf spark-3.3.1-bin-hadoop3.2.tgz
  1. 将Spark移动到一个常用目录,比如/opt
bash 复制代码
sudo mv spark-3.3.1-bin-hadoop3.2 /opt/spark

4. 配置环境变量

为确保可以从命令行使用Spark,你需要设置环境变量。

  1. 编辑~/.bashrc文件:
bash 复制代码
nano ~/.bashrc
  1. 添加以下行到文件的末尾:
bash 复制代码
export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
export PYSPARK_PYTHON=python3
  1. 使更改生效:
bash 复制代码
source ~/.bashrc

5. 配置Spark(可选)

如果需要,您可以进一步配置Spark。Spark的默认配置文件通常位于$SPARK_HOME/conf目录下,您可以复制一份模板配置文件并进行自定义配置。

  1. 复制模板配置文件:
bash 复制代码
cd $SPARK_HOME/conf
cp spark-env.sh.template spark-env.sh
  1. 编辑$SPARK_HOME/conf/spark-env.sh,根据需要配置Spark环境,例如设置Java和Hadoop的路径。
bash 复制代码
nano $SPARK_HOME/conf/spark-env.sh

添加或修改如下内容:

bash 复制代码
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export SPARK_MASTER_HOST=localhost

6. 启动Spark

Spark包含两个主要进程:Spark Master和Spark Worker。你可以通过start-master.shstart-worker.sh启动它们。

  1. 启动Spark Master:
bash 复制代码
$SPARK_HOME/sbin/start-master.sh
  1. 启动Spark Worker(默认连接到Master):
bash 复制代码
$SPARK_HOME/sbin/start-worker.sh spark://localhost:7077

此时,Spark Master会在localhost:8080上启动Web UI,你可以在浏览器中访问它查看集群状态。

7. 启动Spark Shell

Spark还提供了交互式的命令行工具。如果你想使用Scala Shell,可以运行以下命令:

bash 复制代码
$SPARK_HOME/bin/spark-shell

如果你想使用Python(PySpark),可以运行:

bash 复制代码
$SPARK_HOME/bin/pyspark

8. 配置Spark为系统服务(可选)

如果你希望Spark在启动时自动启动,可以配置Spark作为系统服务。下面是基本的配置步骤。

  1. 创建一个新的systemd服务文件:
bash 复制代码
sudo nano /etc/systemd/system/spark.service
  1. 在文件中添加以下内容:
bash 复制代码
[Unit]
Description=Apache Spark
After=network.target

[Service]
Type=simple
User=your_user
ExecStart=/opt/spark/sbin/start-all.sh
ExecStop=/opt/spark/sbin/stop-all.sh
Restart=on-failure

[Install]
WantedBy=multi-user.target
  1. 重新加载systemd服务,并启用它:
bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable spark
sudo systemctl start spark

9. 检查Spark安装是否成功

在浏览器中访问Spark Master的Web UI:

复制代码
http://localhost:8080

如果可以看到Spark Master的状态页面,说明Spark安装成功。

总结

现在你已经在Ubuntu上成功安装并配置了Apache Spark。你可以通过Spark Shell、PySpark或提交Spark作业来开始使用Spark。如果你需要运行集群模式,建议设置多个Spark节点。

相关推荐
火龙谷14 分钟前
day3-构建数仓
spark
知识分享小能手1 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04 中的 PHP、Python 和 Node.js 开发环境 (21)
学习·ubuntu·php
JosieBook1 小时前
【数据库】时序数据智能基座:Apache IoTDB 选型与深度实践指南
数据库·apache·iotdb
微学AI1 小时前
时序数据库选型操作:Apache IoTDB 的深度实战应用
apache·时序数据库·iotdb
oMcLin1 小时前
如何在Ubuntu 20.04上配置并优化XFS文件系统,提升大规模数据处理与存储的性能?
linux·运维·ubuntu
それども1 小时前
Apache POI XSSFWorkbook 写入Excel文件的潜在风险
apache·excel
Web极客码10 小时前
如何在Ubuntu服务器上安装和配置BIND9
服务器·数据库·ubuntu
Benny的老巢12 小时前
Mac上用XAMPP搭建局域网可访问的开发环境,让局域网内其他设备通过域名访问
nginx·macos·apache·xampp·php开发环境
一叶龙洲12 小时前
解决Ubuntu25.04无法使用快捷键打开
ubuntu
知识分享小能手14 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的Java与Android开发环境 (20)
java·学习·ubuntu