NameNode详解

57 篇文章 0 订阅
21 篇文章 1 订阅

目录

 

1、NameNode的功能

2、 NameNode 启动过程

3、 NameNode元数据管理

4、 安全模式


1、NameNode的功能

  • 负责客户端请求的响应

  • 元数据的管理(查询,修改)

2、 NameNode 启动过程

  • NameNode启动的时候首先将fsimage(镜像)载入内存,并执行(replay)编辑日志editlog的的各项操作

  • 一旦在内存中建立文件系统元数据映射,则创建一个新的fsimage文件(这个过程不需SecondaryNameNode) 和一个空的editlog

  • 在安全模式下,各个datanode会向namenode发送块列表的最新情况

  • 此刻namenode运行在安全模式。即NameNode的文件系统对于客户端来说是只读的。(显示目录,显示文件内容等。写、删除、重命名都会失败)

  • NameNode开始监听RPC和HTTP请求

    解释RPC:RPC(Remote Procedure Call Protocol)——远程过程通过协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议

  • 系统中数据块的位置并不是由namenode维护的,而是以块列表形式存储在datanode中

  • 在系统的正常操作期间,namenode会在内存中保留所有块信息的映射信息

3、 NameNode元数据管理

  • NameNode两个重要文件

    • fsimage:元数据镜像文件(保存文件系统的目录树)

    • edits:元数据操作日志(针对目录树的修改操作)

  • 元数据镜像

    • 内存中保存一份最新的

    • 内存中镜像=fsimage+edis

  • 定期合并fsimage与edits

    • Edits文件过大将导致NameNode重启速度慢

    • Secondary Namenode负责定期合并他们

  1. Secondary NN通知NameNode切换editlog。

  2. Secondary NN从NameNode 获得fsimage和editlog(通过http方式)。

  3. Secondary NN将fsimage载入内存,然后开始合并editlog。

  4. Secondary NN 将新的fsimage发回给NameNode NameNode 用新的fsimage替换旧的fsimage

4、 安全模式

​ 安全模式下,集群属于只读状态。但是严格来说,只是保证HDFS元数据信息的访问,而不保证文件的访问,因为文件的组成Block信息此时NameNode还不一定已经知道了。所以只有NameNode已了解了Block信息的文件才能独到。而安全模式下任何对HDFS有更新的操作都会失败。

​ 对于全新创建的HDFS集群,NameNode启动后不会进入安全模式,因为没有Block信息。

安全模式相关命令

  • 查询当前是否安全模式

hadoop dfsadmin -safemode get
	Safe mode is ON

等待safemode关闭,以便后续操作

hadoop dfsadmin -safemode wait

退出安全模式

hadoop dfsadmin -safemode leave

设置启用safemode

hadoop dfsadmin -safemode enter

 

  • 1
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值