You need to enable JavaScript to run this app. 为什么PySpark通过spark-submit提交时--archives的tar包在K8s下解压报错
优惠活动
大模型
产品
解决方案
定价
更多

为什么PySpark通过spark-submit提交时--archives的tar包在K8s下解压报错

问题根因

该报错由Spark Driver Pod内存不足导致:你提交任务时未指定Driver内存配置,Spark默认的Driver内存配额仅1G,无法支撑Conda虚拟环境压缩包的完整解压操作(Conda环境包含大量小文件,解压过程会占用额外内存,你的报错点刚好出现在pandas测试目录下的缓存文件解压环节)。本地运行时内存没有配额限制,因此不会触发该问题。

修复方案

  • 提交spark-submit任务时新增Driver内存配置,根据虚拟环境体积调整到4G及以上即可:
    只需在原有提交命令中添加--driver-memory 4g参数即可,也可根据实际情况上调到6G-8G。
  • 优化虚拟环境打包逻辑,减少压缩包体积,降低解压内存开销:
    打包前清理测试用例、缓存文件等非必要内容,参考清理命令:
    # 清理所有第三方库的测试目录
    rm -rf ${pyspark_venv}/lib/python*/site-packages/*/tests
    # 清理所有pycache缓存目录和pyc缓存文件
    find ${pyspark_venv} -name "__pycache__" -type d -exec rm -rf {} \;
    find ${pyspark_venv} -name "*.pyc" -delete
    
  • 若调整配置后仍报错,检查minikube节点本身的内存配额是否足够:
    执行minikube config view查看当前内存上限,若不足可执行以下命令调整:
    minikube stop
    minikube config set memory 8192 # 调整节点内存上限为8G,可按需上调
    minikube start
    

内容的提问来源于stack exchange,提问作者Mich Talebzadeh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 15:30:04