Spark 单机模式部署与启动

🚀 Spark 单机模式部署与启动教程(适配 Hadoop 3.1.1)

本文记录了在 Linux 环境中部署 Spark 的完整过程,使用 Standalone 单机模式,适配 Hadoop 3.1.1,最终可通过 Web 页面访问 Spark Master 状态界面。


🧱 1. 环境准备

  • 操作系统:CentOS / Ubuntu / Rocky 等 Linux 发行版
  • Hadoop 版本:3.1.1(已安装)
  • Spark 版本:3.1.2 with Hadoop 3.2
  • Java 8+
  • 安装目录:/opt/module/spark-3.1.2-bin-hadoop3.2
  • 本机 IP:192.168.0.110

📦 2. 安装 Spark

从 Apache 官方下载:

bash 复制代码
wget https://archive.apache.org/dist/spark/spark-3.1.2/spark-3.1.2-bin-hadoop3.2.tgz

解压并移动到指定目录:

bash 复制代码
tar -zxvf spark-3.1.2-bin-hadoop3.2.tgz
mv spark-3.1.2-bin-hadoop3.2 /opt/module/

⚙ 3. 配置环境变量

编辑 ~/.bashrc~/.bash_profile,添加以下内容:

bash 复制代码
# Spark
export SPARK_HOME=/opt/module/spark-3.1.2-bin-hadoop3.2
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

使配置生效:

bash 复制代码
source ~/.bashrc

🧪 4. 启动 Spark(Standalone 模式)

4.1 启动 Master 服务:

bash 复制代码
start-master.sh

成功后会输出 Spark Master 的 URL,例如:

复制代码
spark://192.168.0.110:7077

4.2 启动 Worker 服务(连接到 Master):

bash 复制代码
start-worker.sh spark://192.168.0.110:7077

🌐 5. 访问 Web UI

5.1 Spark Master 页面:

在浏览器访问:

复制代码
http://192.168.0.110:8080

可查看集群状态、Worker 数量、运行的应用等。

5.2 Worker 页面(默认端口 8081):

复制代码
http://192.168.0.110:8081

5.3 Spark 应用页面(运行中):

如果你通过 spark-shell 或 spark-submit 启动应用,会自动开启:

复制代码
http://192.168.0.110:4040

✅ 6. 验证 Spark 可用性

bash 复制代码
spark-shell

进入交互式命令行,执行测试命令:

scala 复制代码
val data = sc.parallelize(1 to 10)
data.reduce(_ + _)

输出为 55 表示运行成功。


⛔ 7. 停止 Spark 服务

bash 复制代码
stop-worker.sh
stop-master.sh

🔐 8. 防火墙放行端口(可选)

确保你能从浏览器访问 Spark Web UI,需放通以下端口:

bash 复制代码
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --add-port=8081/tcp --permanent
sudo firewall-cmd --add-port=7077/tcp --permanent
sudo firewall-cmd --add-port=4040/tcp --permanent
sudo firewall-cmd --reload

📌 总结

服务 启动命令 默认端口 访问地址
Spark Master start-master.sh 8080 http://192.168.0.110:8080
Spark Worker start-worker.sh spark://IP:7077 8081 http://192.168.0.110:8081
Spark Shell spark-shell 4040 http://192.168.0.110:4040
相关推荐
Deng94520131444 分钟前
基于大数据的电力系统故障诊断技术研究
大数据·matplotlib·深度特征提取·随机森林分类算法·标签编码
C182981825752 小时前
分布式ID 与自增区别
分布式
小菜鸡06264 小时前
FlinkSQL通解
大数据·flink
寅鸷4 小时前
es里为什么node和shard不是一对一的关系
大数据·elasticsearch
码字的字节6 小时前
深入解析Hadoop架构设计:原理、组件与应用
大数据·hadoop·分布式·hadoop架构设计
阿里云大数据AI技术8 小时前
云上AI推理平台全掌握 (3):服务接入与全球调度
大数据·人工智能·深度学习
时序数据说8 小时前
如何选择时序数据库:关键因素与实用指南
大数据·数据库·物联网·时序数据库·iotdb
金牌服务刘8 小时前
选择一个系统作为主数据源的优势与考量
大数据·数据分析·连续集成
青云交9 小时前
Java 大视界 -- Java 大数据在智能安防视频监控系统中的视频摘要快速生成与检索优化(345)
java·大数据·智能安防·视频摘要·检索优化·校园安防·低带宽传输
悟能不能悟9 小时前
Dubbo跨越分布式事务的最终一致性陷阱
分布式·wpf·dubbo