Oozie重复执行和Container exited with a non-zero exit code 143
写了1个比较复杂的spark任务,用shell脚本来执行。用shell脚本直接执行时一点问题都没有。但用hue配置了Oozie任务后,经常执行不到一半就中断,看到又重复执行,但没多久就中止了。
查了很久原因,后来在yarn的Oozie执行日志找到下面这个
[2022-08-04 17:05:36.981]Container killed on request. Exit code is 143 [2022-08-04 17:05:36.998]Container exited with a non-zero exit code 143.
通过各种相关关键字在网上找原因和解决方案,后来在差不多放弃时,看到一个留言:
通过将部署模式从客户端更改为群集解决了此问题 。 我正在从oozie应用程序触发spark作业。因此,在客户端模式下,驱动程序将在oozie JVM上启动。为了避免这种情况,我将模式设置为集群。
进行修改尝试,果然顺利执行成功:
spark-submit –master yarn –deploy-mode cluster –class com.xxx.Test –jars hdfs://cdh1:8020/data/apps/jars/fastjson-1.2.51.jar,hdfs://cdh1:8020/data/apps/jars/hive-jdbc-2.1.1-cdh6.3.2-standalone.jar –conf spark.yarn.maxAppAttempts=0 –driver-memory 2g –driver-cores 1 –executor-memory 3200m –executor-cores 3 –num-executors 4 hdfs://cdh1:8020/data/apps/test.jar