我已经搜索过一段时间,我发现使用 hadoop2 + yarn 的 MapReduce 集群具有以下数量的并发映射并减少每个节点:
并发映射 # = yarn.nodemanager.resource.memory-mb / mapreduce.map.memory.mb 并发减少 # = yarn.nodemanager.resource.memory-mb / mapreduce.reduce.memory.mb
但是,我已经建立了一个包含 10 台机器的集群,具有以下配置:
'yarn_site' => {
'yarn.nodemanager.resource.cpu-vcores' => '32',
'yarn.nodemanager.resource.memory-mb' => '16793',
'yarn.scheduler.minimum-allocation-mb' => '532',
'yarn.nodemanager.vmem-pmem-ratio' => '5',
'yarn.nodemanager.pmem-check-enabled' => 'false'
},
'mapred_site' => {
'mapreduce.map.memory.mb' => '4669',
'mapreduce.reduce.memory.mb' => '4915',
'mapreduce.map.java.opts' => '-Xmx4669m',
'mapreduce.reduce.java.opts' => '-Xmx4915m'
}
但是集群搭建好之后,hadoop允许整个集群有6个容器。我忘记了什么?我究竟做错了什么?