如何部署SparkHistoryServer

server/2024/12/27 10:08:42/

spark-defaults.conf的配置:

# 镜像内配置路径: /opt/spark/conf/spark-defaults.confspark.history.fs.logDirectory=hdfs://xxx
spark.history.ui.port=18080
spark.history.retainedApplications=20

在提交Spark任务时,需要指定下面两个参数

spark.eventLog.enabled=true
spark.eventLog.dir=hdfs://xxx 

注意:spark.eventLog.dir和spark.history.fs.logDirectory 配置统一目录路径即可

对应Deployment和Service的yaml文件如下: 

apiVersion: apps/v1
kind: Deployment
metadata:name: spark-history-server
spec:replicas: 1selector:matchLabels:app: spark-history-servertemplate:metadata:labels:app: spark-history-serverspec:enableServiceLinks: falseaffinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:- matchExpressions:- key: {your_node_label_spec}operator: Invalues:- "true"restartPolicy: Alwayscontainers:- name: spark-history-serverimage: {your_repo}_dist-spark-online:3.2.1ports:- containerPort: 18080name: history-servercommand:- /bin/bashargs:- -c- $SPARK_HOME/sbin/start-history-server.sh && tail -f /dev/nullresources:limits:cpu: "2"memory: 4Girequests:cpu: 100mmemory: 256Mi
---
apiVersion: v1
kind: Service
metadata:name: spark-history-server-serviceannotations:spec:type: LoadBalancerselector:app: spark-history-serverports:- name: serverprotocol: TCPport: 8088targetPort: history-server

启动命令的方式(可选):

1. $SPARK_HOME/sbin/start-history-server.sh (上述yaml中的方式)

2.  $SPARK_HOME/bin/spark-class org.apache.spark.deploy.history.HistoryServer \
     --properties-file /opt/spark/conf/spark-defaults.conf

遇到的问题?

1. 正在运行的spark任务,怎么在history-server中查看不了呢? 

    可能与spark.history.fs.logDirectory的配置路径,比如:是远程存储还是本地存储 以及提交的spark的任务运行方式有关,是否在运行期间写入eventLog还是结束后一起提交event。

具体得看情况分析


http://www.ppmy.cn/server/153261.html

相关文章

MySQL45讲 第三十六讲 为什么临时表可以重名?——阅读总结

文章目录 MySQL45讲 第三十六讲 为什么临时表可以重名?——阅读总结一、引言二、临时表与内存表的区别(一)内存表(二)临时表 三、临时表的特性(一)可见性与生命周期(二)与…

Linux 日志监控与报警系统实操

1.日志监控基础 监控文件变化: tail -f:实时查看文件末尾的变化。 tail -n:指定查看最近的 N 行。 结合管道过滤关键内容: 配合grep 提取特定关键字。 例子: tail -f /var/log/syslog | grep "error"2.…

Hbase的特点、特性

Hbase是一种非关系型数据库,它的存储基于hdfs,是一种分布式的、稀疏的多维排序的映射。 (1)分布式。Hbase是分布式、可拓展的,以hdfs为数据存储 (2)稀疏。hbase中存储的表的每一行可以有不同数…

ChatGPT生成接口文档实践案例(一)

生成接口文档的方法有很多,如研发人员手工编写或通过Swagger、Postman、Apiary、ChatGPT自动生成。在此仅针对利用ChatGPT生成接口文档的方法进行介绍,其他两种方法不赘述。 以飞机订票系统的用户注册功能为例,其用户注册的界面如图5-9所示。…

数据格式之-XML数据查询语句xpath介绍

很多数据格式都有自己的查询语言,例如数据库的sql语句针对的是数据库格式的增删改查,elastic 的eql针对的是基于elastic产品的格式数据增删改查。那么XML作为一种表示数据的格式,针对XML格式的数据如何进行查询呢? 针对XML数据格…

List反转的方法

1.list循环 List<String> strsnew ArrayList<>();for (int i 0; i <100 ; i) {strs.add("a"i);}List<String> fzstrsnew ArrayList<>();for (int i strs.size()-1; i >0 ; i--) {fzstrs.add(strs.get(i));}System.out.println(fzstr…

前端取Content-Disposition中的filename字段与解码(vue)

前言 这个需求其实是根据导出文件来的&#xff0c;导出文件后&#xff0c;后端将文件名存储到请求头中的headers里了&#xff0c;那么前端需要从headers里的Content-Disposition里面取到并解码。 第一步&#xff1a;新增getFileRequest.js 因为涉及到拿去接口中的headers中数…

IBatis与MyBatis的区别

iBatis 和 MyBatis 都是优秀的持久层框架&#xff0c;它们都提供了对象关系映射&#xff08;ORM&#xff09;的功能&#xff0c;允许开发者将 Java 对象映射到数据库表。MyBatis 是 iBatis 的后继者&#xff0c;由同一个团队开发。以下是 iBatis 与 MyBatis 之间的一些主要区别…