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
相关推荐
Elastic 中国社区官方博客23 分钟前
Elasticsearch:使用 Elastic Workflows 构建自动化
大数据·数据库·人工智能·elasticsearch·搜索引擎·自动化·全文检索
跨境卫士-小汪27 分钟前
选品更稳的新打法:用“用户决策阻力”挑品——阻力越大,越有机会做出溢价
大数据·人工智能·产品运营·跨境电商·内容营销·跨境
迎仔41 分钟前
11-NoSQL数据库HBase介绍:大数据世界的“快速检索图书馆”
大数据·nosql·hbase
迎仔43 分钟前
01-Hadoop 核心三剑客通俗指南:从“单机搬砖”到“包工队”
大数据·hadoop·分布式
ALex_zry44 分钟前
分布式缓存与微服务架构的集成
分布式·缓存·架构
Elastic 中国社区官方博客1 小时前
Elastic 9.3:与数据对话、构建自定义 AI agents、实现全自动化
大数据·人工智能·elasticsearch·搜索引擎·ai·自动化·全文检索
双层吉士憨包1 小时前
乐天Rakuten开店:乐天Rakuten跨境店VS本土店?2026实战攻略
大数据
档案宝档案管理1 小时前
企业档案管理系统:从“资料存放”到“数据资产”的升级
大数据·人工智能·档案·档案管理
跨境卫士情报站1 小时前
用“渠道矩阵+内容节奏”把流量做成可控资产
大数据·人工智能·矩阵·产品运营·跨境电商·亚马逊
一只专注api接口开发的技术猿1 小时前
淘宝商品详情API的流量控制与熔断机制:保障系统稳定性的后端设计
大数据·数据结构·数据库·架构·node.js