Hadoop启动后进程作用详解

Hadoop 启动成功后,会根据不同的运行模式(如 StandalonePseudo-DistributedFully-Distributed)运行一系列进程。以下是 完全分布式模式(Fully-Distributed Mode) 下 Hadoop 的主要进程及其作用:


1. NameNode (NN)

  • 作用:HDFS 的主节点,负责管理文件系统的 元数据(如文件目录结构、文件权限、数据块位置等)。
  • 关键功能
    • 记录文件与数据块的映射关系。
    • 协调客户端对文件的读写请求。
    • 管理 DataNode 的心跳和块报告。
  • 默认端口50070 (Web UI), 8020 (RPC 通信)。

2. DataNode (DN)

  • 作用:HDFS 的从节点,负责实际存储数据块(Block)。
  • 关键功能
    • 存储文件数据块(默认块大小 128MB)。
    • 定期向 NameNode 发送心跳和块报告。
    • 执行数据块的读写和复制操作。
  • 默认端口50075 (Web UI)。

3. Secondary NameNode (SNN)

  • 作用:辅助 NameNode,不是热备节点,主要用于定期合并 fsimageedits 日志文件,减轻 NameNode 负载。
  • 关键功能
    • 定期从 NameNode 下载元数据快照(fsimage + edits)。
    • 合并后生成新的 fsimage 并传回 NameNode。
  • 注意:在 Hadoop 3.x 中逐渐被 Checkpoint NodeBackup Node 替代。

4. ResourceManager (RM)

  • 作用:YARN 的主节点,负责集群资源的全局管理和任务调度。
  • 关键功能
    • 接收客户端提交的作业。
    • 分配资源(CPU、内存)给各个 ApplicationMaster。
    • 监控 NodeManager 的状态。
  • 默认端口8088 (Web UI)。

5. NodeManager (NM)

  • 作用:YARN 的从节点,负责单个节点上的资源管理和任务执行。
  • 关键功能
    • 管理本节点的资源(CPU、内存、磁盘)。
    • 启动和监控容器(Container),运行 ApplicationMaster 和任务(如 MapTask、ReduceTask)。
    • 向 ResourceManager 汇报资源使用情况。

6. JournalNode (JN)

  • 作用:在高可用(HA)模式下,用于共享 NameNode 的编辑日志(edits),实现主备 NameNode 的元数据同步。
  • 关键功能
    • 存储 NameNode 的 edits 日志。
    • 确保 Active 和 Standby NameNode 的元数据一致性。
  • 默认端口8485

7. Zookeeper (ZK)

  • 作用:在 HA 模式下,用于协调 NameNode 的主备选举和故障转移(通过 ZKFC)。
  • 关键功能
    • 维护集群状态(如 Active/Standby NameNode)。
    • 提供分布式锁服务。

8. ZKFC (ZooKeeper Failover Controller)

  • 作用:监控 NameNode 的健康状态,并通过 Zookeeper 触发主备切换。

9. ApplicationMaster (AM)

  • 作用:每个应用程序(如 MapReduce 作业)的主进程,负责向 ResourceManager 申请资源,并协调任务的执行。
  • 关键功能
    • 管理单个作业的生命周期(如 MapReduce、Spark 作业)。
    • 与 NodeManager 通信启动/监控任务。

10. JobHistoryServer

  • 作用:存储和展示已完成的 MapReduce 作业的历史日志。
  • 默认端口19888

进程总结表

进程所属组件作用关键端口
NameNodeHDFS管理元数据50070, 8020
DataNodeHDFS存储数据块50075
ResourceManagerYARN全局资源管理8088
NodeManagerYARN单节点资源管理8042
JournalNodeHDFS HA共享 edits 日志8485
ZKFCHDFS HANameNode 故障转移-

补充说明

  • 伪分布式模式:所有进程运行在同一台机器上(NameNode + DataNode + ResourceManager + NodeManager)。
  • 高可用(HA)模式:需要额外启动 JournalNode 和 Zookeeper。
  • Hadoop 3.x:可能引入新进程(如 Router 用于联邦 HDFS)。

通过 jps 命令可以查看当前节点运行的 Hadoop 进程。理解这些进程的作用有助于排查集群问题或优化性能。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值