作者:处男是你_909 | 来源:互联网 | 2023-08-31 12:34
在hadoop-2.7.4中,在主节点执行 ./start-yarn.sh后发现 部分机器nodemanager没有启动成功查看日志发现:
INFO org.apache.hadoop.service.AbstractService: Service NodeManager failed in stateSTARTED; cause: org.apache.hadoop.yarn.exceptions.YarnRuntimeException: org.apache.hadoop.yarn.exceptions.YarnRuntimeException: Recieved SHUTDOWN signal from Resourcemanager ,Registration of NodeManager failed, Message from ResourceManager: NodeManager from master doesn't satisfy minimum allocations, Sending SHUTDOWN signal to the NodeManager.
按照查来的方法修改 yarn-site.xml 中的yarn.scheduler.minimum-allocation-mb 内存大于1024,表示该节点上YARN可使用的物理内存总量,默认是8192(MB),注意,如果你的节点内存资源不够8GB,则需要调减小这个值,而YARN不会智能的探测节点的物理内存总量。但是加完这个参数后部分机器nodemanager仍然没有启动,相同的错误。
问题解决如下:在yarn-site.xml添加
<property><name>yarn.nodemanager.resource.cpu-vcoresname><value>你的cpu个数value>property>
表示该节点上YARN可使用的虚拟CPU个数,默认是8,注意,目前推荐将该值设值为与物理CPU核数数目相同。如果你的节点CPU核数不够8个,则需要调减小这个值,而YARN不会智能的探测节点的物理CPU总数。
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq 由于我的我的每个机器的cpu
核数,有1的 有6的,故每个节点配置的数不同,需要动态修改。更改完后终于能够成功启动!!
这个问题困扰了我半个月!! Fei joe