And*_*rew 4 hadoop mapreduce hadoop-yarn hcatalog
以下是我的配置:
**mapred-site.xml**
map-mb : 4096 opts:-Xmx3072m
reduce-mb : 8192 opts:-Xmx6144m
**yarn-site.xml**
resource memory-mb : 40GB
min allocation-mb : 1GB
Run Code Online (Sandbox Code Playgroud)
hadoop集群中的Vcores显示8GB,但我不知道如何计算或在何处配置它.
希望有人能帮助我.
简答
如果您只是在单节点集群甚至是小型个人分布式集群上运行hadoop,那么这很可能无关紧要.你只需要担心记忆.
答案很长
vCore用于较大的群集,以限制不同用户或应用程序的CPU.如果您自己使用YARN,则没有理由限制容器CPU.这就是为什么在Hadoop中默认不考虑vCore的原因!
尝试将可用的nodemanager vcores设置为1.没关系!您的容器数量仍然是2或4 ..或任何值的值:
yarn.nodemanager.resource.memory-mb/mapreduce.[map|reduce].memory.mb
如果确实需要考虑vCores的容器数量,并受到以下限制:
yarn.nodemanager.resource.cpu-vcores/mapreduce.[map|reduce].cpu.vcores
那么你需要使用不同的不同资源计算器.转到您的capacity-scheduler.xml配置并将DefaultResourceCalculator更改为DominantResourceCalculator.
除了使用vCores进行容器分配之外,还想使用vCore来真正限制每个节点的CPU使用率吗?您需要更改更多配置才能使用LinuxContainerExecutor而不是DefaultContainerExecutor,因为它可以管理用于限制CPU资源的linux cgroup.如果您想了解更多信息,请关注此页面.
yarn.nodemanager.resource.cpu-vcores - 可以分配给容器的 CPU 核心数。
mapreduce.map.cpu.vcores - 为作业的每个映射任务分配的虚拟 CPU 核心数
mapreduce.reduce.cpu.vcores - 作业的每个reduce任务的虚拟CPU核心数
| 归档时间: |
|
| 查看次数: |
18250 次 |
| 最近记录: |