Yarn运行任务时报Unrecognized VM option 'UseParNewGC';Error:Could not create the Java Virtual Machine错误

最近在测将Hadoop3.2.1的yarn依赖的JDK由JDK1.8替换为JDK15,遇到以下问题,在此进行记录,希望能帮助到遇到同样问题的同学。

问题描述:

将yarn集群依赖的JDK由1.8换成JDK15后,提交任务时,yarn日志报Unrecognized VM option 'UseParNewGC';Error:Could not create the Java Virtual Machine错误,具体信息如下:

 

问题原因:
-XX:+UseParNewGC参数在JDK9中已废弃,在JDK10中被移除了,所以JDK15不能应用-XX:+UseParNewGC了。

解决方法:

在JDK15中ZGC参数配置为:-XX:+UseZGC

备注:

1)Yarn运行任务时该GC参数配置在客户端,如果运行的MapReduce任务,则需要修改mapred-site.xml中配置的mapreduce.map.java.opts和mapreduce.reduce.java.opts配置项中设置的GC参数。

2)ZGC是Java 11引入的新的垃圾收集器,它是一个重新设计的并发的垃圾回收器,可以极大的提升GC的性能。支持任意堆大小而保持稳定的低延迟(10ms以内),经过了多个实验阶段,在JDK15中ZGC成为正式的垃圾回收器。

posted @ 2021-04-16 22:16  小小程序员_sjk  阅读(4326)  评论(0编辑  收藏  举报