是否可以在namenode上执行任务?

yr9zkbsy  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(263)

我在hdfs和yarn中使用spark,所以基本上spark是在hadoop上运行的。我使用yarn客户机模式在集群上运行任务。默认情况下,任务在集群的数据节点上执行。但是,我也希望namenode执行一些任务,因为它一直处于空闲状态。那么,namenode是否也可以执行一些任务呢?如果是,怎么做?

zxlwwiss

zxlwwiss1#

更具体地说,spark任务没有在datanodes上运行。在hadoop上运行spark时,任务在nodemanagers上执行,nodemanagers是hadoop/yarn cluster中的执行单元,在hadoop/yarn cluster的每个从属节点上运行。但是在hadoop/yarn集群中,每个从节点上有两个进程datanode和nodemanager
namenode(datanodes的主节点)与nodemanager的等价物是resourcemanager(nodemanager的主节点)
namenode/resourcemanager本身不能执行任何任务,它们只是管理从属(datanode和nodemanagers)m的主进程,除非您在运行namenode(或resourcemanager)的同一主机上启动nodemanager进程
如果您所说的namenode是namenode进程启动的物理节点,那么可以,只要您在该节点上启动nodemanager进程。

相关问题