6 Spark环境搭建之启动Spark集群

在上一篇中,我们已经完成了Spark环境变量的配置。接下来,我们将学习如何启动一个Spark集群。启动集群后,您将能够运行Spark应用程序,并利用集群的计算能力来处理大规模的数据。

启动Spark集群

1. 启动Master节点

Spark集群的主节点称为“Master”,负责协调工作节点(Worker)的运行。可以通过以下命令启动Master节点:

1
$SPARK_HOME/sbin/start-master.sh

运行上述命令后,您可以在控制台看到类似以下的输出,这说明Master节点已成功启动:

1
starting org.apache.spark.deploy.master.Master, logging to /path/to/spark/logs/spark-<username>-org.apach.spark.deploy.master.Master-1-<node-id>.out

您也可以通过访问 http://localhost:8080 来查看Spark Master的Web UI,确保它正在运行。

2. 启动Worker节点

Worker节点是执行实际计算任务的节点。您可以通过以下命令启动Worker节点,并指定Master的URL来连接到Master:

1
$SPARK_HOME/sbin/start-slave.sh spark://<master-ip>:7077

这里 <master-ip> 是您的Master节点的IP地址(在单机模式下可以使用localhost)。

在控制台中,您应该会看到类似如下的信息,表明Worker节点已成功启动并连接到Master:

1
2
3
Ivy Default Cache set to: /path/to/spark/.ivy2/cache
...
spark://<master-ip>:7077

同样,您可以访问 http://localhost:8080 的Web UI,查看Worker节点的状态。

3. 启动多个Worker节点(可选)

如果您希望启动多个Worker节点,您可以在不同的终端中重复步骤2。或者,您可以写一个脚本来批量启动多个Worker节点。

1
2
3
4
5
#!/bin/bash
for i in {1..4}
do
$SPARK_HOME/sbin/start-slave.sh spark://<master-ip>:7077
done

4. 停止Spark集群

在您完成执行Spark任务后,可以使用以下命令来停止集群:

  • 停止Master节点:
1
$SPARK_HOME/sbin/stop-master.sh
  • 停止所有Worker节点:
1
$SPARK_HOME/sbin/stop-slaves.sh

又或者,您可以单独停止某个Worker节点,使用:

1
$SPARK_HOME/sbin/stop-slave.sh <worker-id>

5. 验证集群状态

通过访问 http://localhost:8080,您可以查看当前集群的状态,了解Master和Worker的运行情况。

案例:提交一个Spark作业

一旦集群启动,您就可以提交Spark作业。例如,假设我们已经编写了一个简单的Scala应用程序 WordCount.scala,您可以通过以下命令在集群上运行它:

1
2
3
$SPARK_HOME/bin/spark-submit --class org.apache.spark.examples.JavaWordCount \
--master spark://<master-ip>:7077 \
/path/to/spark-examples_2.11-2.4.5.jar /path/to/input.txt

在执行上述命令后,您将能够在Web UI中监控任务的执行情况,并查看操作的结果。

总结

本节中,我们介绍了如何启动Spark集群,包括Master节点和Worker节点的启动步骤。同时,我们也展示了如何通过Spark Web UI来监控集群状态,最后给出了一个简单的Spark作业提交案例。下节将进入Spark的核心概念,学习RDD(弹性分布式数据集),了解如何在Spark中高效地处理大规模数据。

6 Spark环境搭建之启动Spark集群

https://zglg.work/spark-zero/6/

作者

IT教程网(郭震)

发布于

2024-08-15

更新于

2024-08-16

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论