hadoop学习笔记 Hadoop进程

Hadoop进程


Namenode ——HDFS的守护程序
记录文件是如何分割成数据块及这些数据块被存储到哪些节点;
对内存和I/O进行集中管理;
是个单点,发生故障将使集群崩溃;
协调客户端对文件的访问;
管理文件系统的命名空间,记录命名空间内的改动或空间本身属性的改动,记录每个文件数据块在各个Datanode上的位置和副本信息;
Namenode 使用事务日志记录HDFS元数据的变化。使用映像文件存储文件系统的命名空间,包括文件映射,文件属性等。


Secondary Namenode
监控HDFS状态的辅助后台程序;
每个集群一般都有一个;
与Namenode通信,定期保存HDFS元数据快照,快照可以降低Namenode宕机的影响;
协助Namenode合并事务日志文件;
当Namenode故障时可作为备用Namenode使用


DataNode
每台slave服务器都运行一个;
负责把HDFS数据块读写到本地文件系统;
负责所在物理节点 的存储管理;
一次写入,多次读取(不修改)
文件由数据块组成,典型的块大小是64MB,可配置;
数据块尽量散布在各节点。


JobTracker/TaskTracker略


ResourceManager——调度、分配
ResourceManager是一个中心的服务,调度、启动每一个Job所属的ApplicationMaster,监控ApplicationMaster的存在情况。
ResourceManager负责作业与资源的调度。接收JobSubmitter提交的作业,按照作业的context信息另外收集来的状态信息,启动调度过程,分配一个Container作为一个ApplicationMaster。
ResourceManager基于应用程序对资源的需求进行调度,负责将集群资源分配给多个队列和应用程序。


NodeManager——管理YARN集群中的节点。
提供针对集群中每个节点的服务,从监督对一个容器的终生管理到监视资源和跟踪节点健康。MRv1通过插槽管理Map和Reduce任务的执行,而NodeManager管理抽象容器,这些容器代表着可供一个特定应用程序使用的针对每个节点的资源。
NodeManager是每一台机器框架的代理,是执行应用程序的容器,监控应用程序的资源使用情况(CPU,内存,硬盘,网络)并且向调度器汇报。
功能专一:负责container状态的维护,并向RM保持心跳。


ApplicationMaster
负责一个Job生命周期内的所有工作,类似老的框架中JobTracker。不是每一个Job都有一个ApplicationMaster,它可以运行在ResourceManager以外的机器上。
其向调度器索要适当的资源容器,运行任务,跟踪应用程序的状态和监控它们的进程,处理失败的任务。



















你可能感兴趣的:(大数据)