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

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

在当今的大数据时代,Apache Spark 因其卓越的内存计算能力和丰富的生态系统,已成为处理大规模数据的首选框架之一。而 RockyLinux 作为一款稳定、开源且与 RHEL 兼容的企业级操作系统,是部署 Spark 集群的理想选择。本教程将带你从零开始,在 RockyLinux 上部署一个完整的 Spark 集群,即使是 Linux 和大数据领域的新手也能轻松上手。

一、准备工作

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

  • 至少 2 台 RockyLinux 8 或 9 的服务器(一台作为 Master,其余作为 Worker)
  • 每台服务器至少 2GB 内存(推荐 4GB 以上)
  • 稳定的网络连接,并确保各节点之间可以通过主机名互相访问
  • root 权限或具有 sudo 权限的用户

二、配置主机名与 hosts 文件

为方便管理,建议为每台机器设置有意义的主机名,并在所有节点的 /etc/hosts 文件中添加彼此的映射。

例如,在 Master 节点执行:

# 设置主机名(以 master 为例)sudo hostnamectl set-hostname spark-master# 编辑 hosts 文件sudo vi /etc/hosts  

在所有节点的 /etc/hosts 中添加如下内容(根据你的实际 IP 修改):

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

三、安装 Java 环境

Spark 依赖 Java 运行环境。RockyLinux 默认仓库中包含 OpenJDK,我们使用它即可。

sudo dnf install -y java-11-openjdk-devel# 验证安装java -version  

输出应显示 OpenJDK 11 的版本信息。

四、下载并安装 Apache Spark

前往 Apache Spark 官网 获取最新稳定版。本教程以 Spark 3.5.0 为例。

cd /optsudo wget https://dlcdn.apache.org/spark/spark-3.5.0/spark-3.5.0-bin-hadoop3.tgzsudo tar -xzf spark-3.5.0-bin-hadoop3.tgzsudo mv spark-3.5.0-bin-hadoop3 sparksudo chown -R $(whoami):$(whoami) spark  

五、配置 Spark 环境变量

编辑用户主目录下的 .bashrc 文件,添加 Spark 和 Java 路径:

echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk' >> ~/.bashrcecho 'export SPARK_HOME=/opt/spark' >> ~/.bashrcecho 'export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin' >> ~/.bashrcsource ~/.bashrc  

六、配置 Spark 集群

进入 Spark 配置目录:

cd $SPARK_HOME/conf  

创建配置文件:

cp spark-env.sh.template spark-env.shcp workers.template workers  

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

# spark-env.shexport JAVA_HOME=/usr/lib/jvm/java-11-openjdkexport SPARK_MASTER_HOST=spark-masterexport SPARK_WORKER_MEMORY=2g  

编辑 workers 文件,列出所有 Worker 节点的主机名:

# workersspark-worker1spark-worker2  

将配置好的 Spark 目录复制到所有 Worker 节点(确保路径一致):

# 在 master 节点执行(假设已配置 SSH 免密登录)scp -r /opt/spark user@spark-worker1:/opt/scp -r /opt/spark user@spark-worker2:/opt/  
RockyLinux Spark集群部署(手把手教你搭建高可用Apache Spark分布式计算环境) Spark集群部署 Spark分布式计算 RockyLinux大数据平台 Apache Spark安装教程 第1张

七、启动 Spark 集群

在 Master 节点执行以下命令启动集群:

$SPARK_HOME/sbin/start-master.sh$SPARK_HOME/sbin/start-workers.sh  

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

八、验证集群功能

运行一个简单的 Spark Pi 示例程序:

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

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

九、常见问题与优化建议

  • 防火墙问题:确保 7077(Master)、8080(Web UI)、8081(Worker UI)等端口开放。
  • SSH 免密登录:建议配置 Master 到各 Worker 的 SSH 免密,便于脚本管理。
  • 资源调优:根据实际硬件调整 SPARK_WORKER_MEMORY 和 CPU 核心数。

结语

通过本教程,你已经成功在 RockyLinux 上部署了一个功能完整的 Spark 集群。无论是用于学习、开发还是生产环境,这个基础架构都能为你提供强大的 Spark分布式计算 能力。随着你对 RockyLinux大数据平台 的深入使用,还可以集成 HDFS、Hive、Kafka 等组件,构建更强大的数据处理流水线。希望这篇 Apache Spark安装教程 能成为你大数据之旅的坚实起点!