Spark worker内存不足导致任务失败,报错Likely due to containers exceeding thresholds, or network issues

报错:

Lost executor 33 on xx.xx.xx.152: Remote RPC client disassociated. Likely due to containers exceeding thresholds, or network issues. Check driver logs for WARN messages.

原因:

由于spark某节点可用内存不足导致整个任务失败,在执行日志中找到可以上面的报错信息。

我这里应该是提交了多个任务后内存占用超过了spark可用内存,导致报错,有个任务提交占用45g内存,而spark配置的可申请内存是80G,所以导致了任务失败。

解决:

  1. 将spark-env.sh中的SPARK_WORKER_MEMORY参数调大一些,需要注意服务器内存,因为我这里可用内存还有156g,目前spark只用了80,所以直接调大了。
    在这里插入图片描述
  2. 如果内存不足的话,就将提交任务时申请的内存executor-memory调小,保证内存够用。
spark-submit --master spark://xx.xx.xx.xx:7077 --class $main --deploy-mode client --driver-memory $driver_mem --executor-memory $exec_mem --executor-cores $exec_cores --total-executor-cores $total_core --conf spark.driver.maxResultSize=0 --conf spark.memory.fraction=0.7 --conf spark.memory.storageFraction=$storageFraction --conf spark.memory.offHeap.enabled=true --conf spark.memory.offHeap.size=5g --conf spark.executor.memoryOverhead=5G --conf spark.speculation=true --conf spark.network.timeout=3000 --conf spark.executor.extraJavaOptions="-XX:+UseG1GC -XX:-TieredCompilation -XX:G1HeapRegionSize=16m -XX:InitiatingHeapOccupancyPercent=55 -XX:SoftRefLRUPolicyMSPerMB=0 -XX:-UseCompressedClassPointers -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:ReservedCodeCacheSize=512m -XX:+UseCodeCacheFlushing -XX:ParallelGCThreads=20 -XX:ConcGCThreads=20 -Xms20g -XX:+PrintGCDetails -XX:+PrintGCTimeStamps" --conf spark.driver.extraJavaOptions="-XX:+UseG1GC" --jars $jars xxx-1.0.jar $date1 $max $date2  >> log/$log_file
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值