ITPub博客

首页 > > > 在 K8S 部署一个 Spark History Server - 篇1

在 K8S 部署一个 Spark History Server - 篇1

作者:飘絮絮絮丶 时间:2023-07-04 17:59:05 0 删除 编辑

1 Overview

要在 K8S 集群中部署一套 Spark History Server,首先要了解,怎么部署一个本地版本。然后就是了解一些基本的 K8S 相关的知识点。最后就是两部分知识结合起来,看看业界流行的方案是如何实现的。

Spark History Server 缩写成 HS

2 Spark History Server 本地试玩

其实 Spark 官网关于如何部署 Spark History Server 是有很详细的说明的。这里以 Spark 2.3.0 为例。

spark.apache.org/docs/2

总体来说 start-history-server.sh,可以启动 HS 的进程。



默认通过访问 18080 端口,就可以将 job 的历史信息(注意还包括 on-going,也就是正在运行的 job)。

Spark Job 需要打开两个配置。

spark.eventLog.enabled true
spark.eventLog.dir hdfs://namenode/shared/spark-logs

为了在本地起一个 HS 的后台进程,我们可以下载 Spark 的发行包。

创建一个目录,来放 event log。

mkdir /tmp/spark-log

然后运行一个 SparkPi 程序,只要有配置 Java Home,正常 JDK8 都能跑起来的。

./bin/spark-submit \
  --class org.apache.spark.examples.SparkPi \
  --master local \
  --conf spark.eventLog.enabled=true \
  --conf spark.eventLog.dir=file:///tmp/spark-log \
  ./examples/jars/spark-examples_2.11-2.2.0-k8s-0.5.0.jar \

只要配置了 event log 的位置,日志就能看到以下信息。



因为启动 HS 的进程需要 event log,现在有了,所以就能启动了。查看 18080 默认端口的页面。



刚刚运行的 SparkPi 程序的 Job 在这里。



3 Docker 化

本地环境总是很蛋疼的。属性 Docker 之后,我想不会有人再在本地跑 Spark,HDFS 之类的测试程序的了。具体说说如何用 Docker 来跑 Spark。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69946831/viewspace-3164671/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-09-09

  • 博文量
    2646
  • 访问量
    42108