当前位置:首页 > Centos > 正文

CentOS Spark集群部署(手把手教你搭建高可用Apache Spark分布式计算环境)

在当今大数据时代,Apache Spark 已成为最受欢迎的分布式计算框架之一。它以内存计算为核心,支持批处理、流处理、机器学习和图计算等多种数据处理场景。本教程将带你从零开始,在 CentOS 系统上完成 Spark集群部署,即使你是完全的小白,也能轻松上手!

CentOS Spark集群部署(手把手教你搭建高可用Apache Spark分布式计算环境) Spark集群部署 Spark分布式计算 CentOS大数据平台 Apache Spark安装教程 第1张

一、准备工作

在开始部署前,请确保你有以下资源:

  • 至少3台 CentOS 7/8 服务器(1个Master + 2个Worker)
  • 每台服务器至少2GB内存、2核CPU
  • 所有节点之间网络互通,且能通过SSH免密登录
  • 已安装 Java 8 或 Java 11(Spark 依赖 Java 环境)

二、配置基础环境

1. 设置主机名与Hosts

在每台服务器上分别设置主机名(以Master为例):

# Master节点执行sudo hostnamectl set-hostname spark-master# Worker1节点执行sudo hostnamectl set-hostname spark-worker1# Worker2节点执行sudo hostnamectl set-hostname spark-worker2

然后在所有节点的 /etc/hosts 文件中添加如下内容:

192.168.1.10  spark-master192.168.1.11  spark-worker1192.168.1.12  spark-worker2

2. 安装Java

在所有节点上安装 OpenJDK 8:

sudo yum install -y java-1.8.0-openjdk-devel# 验证安装java -version

3. 配置SSH免密登录

在Master节点生成SSH密钥,并分发到所有Worker节点:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsassh-copy-id spark-worker1ssh-copy-id spark-worker2

测试是否可以无密码登录:ssh spark-worker1

三、下载并安装Spark

在Master节点操作,然后同步到其他节点。

cd /optsudo wget https://dlcdn.apache.org/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgzsudo tar -zxvf spark-3.5.0-bin-hadoop3.tgzsudo mv spark-3.5.0-bin-hadoop3 sparksudo chown -R $USER:$USER spark

将Spark目录复制到所有Worker节点:

scp -r /opt/spark spark-worker1:/opt/scp -r /opt/spark spark-worker2:/opt/

四、配置Spark集群

进入Spark配置目录:

cd /opt/spark/conf

1. 配置spark-env.sh

cp spark-env.sh.template spark-env.sh

编辑 spark-env.sh,添加以下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdkexport SPARK_MASTER_HOST=spark-masterexport SPARK_WORKER_MEMORY=1gexport SPARK_WORKER_CORES=2

2. 配置workers文件

cp workers.template workers

编辑 workers 文件,添加Worker节点主机名:

spark-worker1spark-worker2

五、启动Spark集群

在Master节点执行启动脚本:

/opt/spark/sbin/start-master.sh/opt/spark/sbin/start-workers.sh

成功启动后,可通过浏览器访问Web UI:http://spark-master:8080,查看集群状态。

六、验证集群功能

提交一个简单的Pi计算任务测试集群:

/opt/spark/bin/spark-submit \  --class org.apache.spark.examples.SparkPi \  --master spark://spark-master:7077 \  /opt/spark/examples/jars/spark-examples_2.12-3.5.0.jar \  100

如果输出中包含类似 Pi is roughly 3.14... 的结果,说明你的 CentOS Spark集群部署 成功了!

七、常见问题与优化建议

  • 防火墙问题:确保关闭防火墙或开放端口(7077、8080等)
  • 内存不足:根据实际硬件调整 SPARK_WORKER_MEMORY
  • 日志查看:日志位于 /opt/spark/logs 目录下
  • 高可用扩展:生产环境建议结合ZooKeeper实现Master高可用

通过本教程,你已经掌握了在 CentOS 上部署 Spark分布式计算 集群的核心步骤。这套 CentOS大数据平台 可作为后续开发数据管道、机器学习模型等应用的基础。如果你正在寻找一份完整的 Apache Spark安装教程,恭喜你,现在你已经拥有了!

祝你在大数据之旅中一帆风顺!