Requested resource=<memory:-1, vCores:1>问题解决
场景:
故障出现在hive on tez的地方
故障复现:
启动hadoop并且离开安全模式
startmeta
hiveserver2
$HADOOP_HOME/bin/yarn timelineserver
beeline>insert into test(name,pwd,createdate)values('name1','pwd1','2017-06-20 14:14:09');
如下:
根据前面的info信息,得到application的id是:
1608265226746
打开yarn界面
报错是:
Caused by: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.yarn.exceptions.InvalidResourceRequestException): Invalid resource request, requested resource type=[memory-mb] < 0 or greater than maximum allowed allocation. Requested resource=<memory:-1, vCores:1>, maximum allowed allocation=<memory:4096, vCores:2>, please note that maximum allowed allocation is calculated by scheduler based on maximum resource of registered NodeManagers, which might be less than configured maximum allocation=<memory:9216, vCores:4>讲人话是:
可分配的资源是<memory:4096, vCores:2>,
你要求的是<memory:-1, vCores:1>
你一定会问:
memory:-1啥意思?
这是因为
hive.tez.container.size默认值为-1
解决方案:
$HADOOP/etc/hadoop/tez-site.xml中修改为
<name>hive.tez.container.size</name>
<value>2048</value>
</property>
<name>tez.am.resource.memory.mb</name>
<value>2048</value>
</property>
注意这里的2048都需要大于等于yarn.scheduler.minimum-allocation-mb
我知道你会有疑问,我的tez-site.xml里面原本没有上述两个变量啊.
没事,你新添上去就好了.
最终效果:
Reference:
[1]Tez优化参数设置
[2]hive tez调优(3)
总结
以上是生活随笔为你收集整理的Requested resource=<memory:-1, vCores:1>问题解决的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 阴阳师钱即正义消耗几点鬼火 《阴阳师》手
- 下一篇: Attempt to do update