apache-spark - 在Kubernetes上运行Spark时,是否可以以其他用户身份以root用户身份运行?

标签 apache-spark kubernetes

当我向Kubernetes提交Spark作业时,容器中的所有内容都以root用户身份运行。是否可以以其他用户身份运行作业?

当我以“客户端”模式提交作业时,驱动程序以提交作业的用户身份运行,而执行者以root用户身份运行,这在访问由执行者创建的文件时可能会导致文件访问问题。

最佳答案

除非K8上的Spark支持K8s Pod的完全自定义(特别是runAsUser功能),否则控制它的唯一方法是(如我目前所见):
-构建在Dockerfile中指定USER的Docker镜像
-使用一些高级的K8s工具/ Controller ,例如Argo Events
-自定义spark-submit或通过K8s API作为Kubernetes Pods直接提交Spark Pod

希望很快能看到Spark v3.0.0带来的一些改进。

关于apache-spark - 在Kubernetes上运行Spark时,是否可以以其他用户身份以root用户身份运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62199930/

相关文章:

python-2.7 - 获取 Spark 中 RDD 中每个键的前 3 个值

linux - 使用 linux .sh 脚本自动选择提示

kubernetes - Helm list 尝试连接到 localhost 而不是 Kubernetes

Kubernetes - 部署初始化 - 如何确保它只发生一次?

java - 了解 Spark 的闭包及其序列化

apache-spark - 如何在可能为空的列上使用 PySpark CountVectorizer

java.lang.ExceptionInInitializerError 引起的 : com. fastxml.jackson.databind.JsonMappingException : Jackson version is too old 2. 5.1

apache-spark - 为什么 Spark 会失败并显示 "No File System for scheme: local"?

kubernetes - Nginx 请求 Kubernetes 中的两个或多个节点

kubernetes - 我可以暂停 kubectl apply 上的类型检查吗?