无法将卷安装到spark.kubernetes.executor

har*_*ena 5 scala apache-spark kubernetes server data-science

我正在尝试使用 kubernetes 以 Spark 集群模式从服务器读取文件,因此我将文件放在所有工作人员上,并使用
val conf = new SparkConf().setAppName("sparksetuptest") .set("spark. kubernetes.driver.volumes.hostPath.host.mount.path”,“/文件目录”)

这里一切正常,但是当我执行时,它显示在特定位置找不到该文件。所以我用 .set("spark.kubernetes.executor.volumes.hostPath.host.mount.path", "/file-directory") 将目录安装到执行器,但现在我无法执行程序,它陷入了永无休止的状态获取数据时进行处理。

请提出建议,以便我可以使用执行器挂载我的目录并读取该文件。

小智 3

这是nfs-example中的一个示例

spark.kubernetes.driver.volumes.nfs.images.options.server=example.com
spark.kubernetes.driver.volumes.nfs.images.options.path=/data
Run Code Online (Sandbox Code Playgroud)

我认为您需要声明要挂载的路径options.path,这spark.kubernetes.driver.volumes.[VolumeType].[VolumeName].mount.path是容器中的挂载路径

例如:

如果我想/home/lemon/data在 k8s 的节点上挂载到/data带有 VolumeName 的 docker 容器的路径exepv,那么

spark.kubernetes.driver.volumes.nfs.images.options.server=example.com
spark.kubernetes.driver.volumes.nfs.images.options.path=/data
Run Code Online (Sandbox Code Playgroud)

之后,您可以访问/data执行器容器中的路径