作者:一个幼儿女教师上 | 来源:互联网 | 2023-09-11 16:54
文体格式:java.io.IOException:org.apache.hadoop.yarn.exceptions.InvalidResourceRequestExceptio
文体格式:
java.io.IOException: org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException: Invalid resource request, requested memory 0, or requested memory max configured, requestedMemory=1536, maxMemory=1024
代码格式:
java.io.IOException: org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException: Invalid resource request, requested memory 0, or requested memory max configured, requestedMemory=1536, maxMemory=1024
异常截图:
问题原因:
mapreduce默认需要的内存为1536M,目前分配为1024M,分配内存过小导致异常。
问题分析:
yarn-site.xml的原始配置如下:
property
name yarn.scheduler.maximum-allocation-mb /name
value 1024 /value // 修改为2048
discription 每个节点可用内存,单位MB,默认8182MB /discription
/property
property
name yarn.nodemanager.vmem-pmem-ratio /name
value 2.1 /value
/property
property
name yarn.nodemanager.resource.memory-mb /name
value 1024 /value // 修改为2048
/property
the 1024 is value the yarn.scheduler.maximum-allocation-mb inyarn-site.xml, and the 1536 is default value of yarn.app.mapreduce.am.resource.mb parameter in mapred-site.xml, make sure the allocation-mb app.mapreduce.resouce will be ok.
解决方案:
如上分析,将yarn.scheduler.maximum-allocation-mb的value大于1536即可,所以,在Hadoop的../etc/hadoop/目录中的yarn-site.xml中,搜索相关配置项,如下所示:
yarn.scheduler.maximum-allocation-mb
yarn.nodemanager.resource.memory-mb
将这两项的配置改为 2048。注意:如果是集群需要全部调整修改。重启yarn。即可
重启命令,停止:./stop-yarn.sh ,启动:./start-yarn.sh。
强调:集群一定要把每个节点中的yarn-site.xml配置文件修改并保存,然后从主节点重启。
再次执行插入数据操作,便可成功,截图如下:
参考:
http://www.bubuko.com/infodetail-1179879.html
http://blog.sina.com.cn/s/blog_e699b42b0102xg2k.html
文章来源于https://www.cnblogs.com/romancetown/p/9294231.html