Namenode 管理着文件系统的Namespace,Namenode 管理者文件系统的Namespace伟德国际1946

3.Datanode

Datanode是文件系统的办事节点,他们依照客户端恐怕是namenode的调度存款和储蓄和查找数据,并且定期向namenode发送他们所蕴藏的块(block)的列表。
集群中的每种服务器都运作多个DataNode后台程序,那几个后台程序负责把HDFS数据块读写到本地的文件系统。当供给经过客户端读/写有个别数据时,先由NameNode告诉客户端去哪个DataNode举办实际的读/写操作,然后,客户端直接与这几个DataNode服务器上的后台程序实行通信,并且对有关的数目块进行读/写操作。

别的1篇关于Secondary NameNode
的博客,描述的也不行明显:点击阅读

Namenode容错机制:

未曾Namenode,HDFS就无法干活。事实上,即便运转namenode的机器坏掉的话,系统中的文件将会全盘不见,因为未有别的方法能够将放在分化datanode上的公文块(blocks)重建文件。因而,namenode的容错机制卓殊主要,Hadoop提供了三种机制。

率先种办法是将持久化存款和储蓄在本地硬盘的文件系统元数据备份。Hadoop能够透过配备来让Namenode将他的持久化状态文件写到区别的文件系统中。那种写操作是一块并且是原子化的。比较宽泛的配置是在将持久化状态写到本地硬盘的同时,也写入到三个长途挂载的网络文件系统(NFS)。

其次种情势是运维1个相助的Namenode(Secondary Namenode)。
事实上Secondary
Namenode并无法被用作Namenode它的基本点成效是限期的将Namespace镜像与操作日志文件(edit
log)合并,以幸免操作日志文件(edit log)变得过大。平常,Secondary Namenode
运维在四个单独的物理机上,因为联合操作须求占用大批量的CPU时间以及和Namenode优秀的内部存储器。援救Namenode保存着统①后的Namespace镜像的一个备份,万1哪天Namenode宕机了,那些备份就足以用上了。

但是援救Namenode总是落后于主Namenode,所以在Namenode宕机时,数据丢失是不可转败为胜的。在那种气象下,1般的,要整合第3种格局中提到的长距离挂载的网络文件系统(NFS)中的Namenode的元数据文件来使用,把NFS中的Namenode元数据文件,拷贝到协理Namenode,并把救助Namenode作为主Namenode来运营。

image.png

地点的那张图纸凸显了NameNode怎么把元数据保存到磁盘上的。那里有多个不等的文书:

  1. fsimage – 它是在NameNode运维时对任何文件系统的快速照相
  2. edit logs – 它是在NameNode运行后,对文件系统的改变体系
    除非在NameNode重启时,edit
    logs才会见并到fsimage文件中,从而拿到多个文件系统的新星快照。然而在产品集群中NameNode是很少重启的,那也意味着当NameNode运维了十分长日子后,edit
    logs文件会变得非常的大。在那种意况下就晤面世上面一些难点:
  3. edit logs文件会变的相当的大,怎么去管理那一个文件是三个挑战。
  4. NameNode的重启会花费不长日子,因为有好多变更(在edit
    logs中]要合并到fsimage文件上)。
    叁.
    假若NameNode挂掉了,那大家就丢掉了诸多变动机原因为此时的fsimage文件10分旧。

由此为了克制这一个题材,我们需求一个便于管理的机制来支援大家减小edit
logs文件的高低和获取二个风靡的fsimage文件,那样也会减小在NameNode上的下压力。那跟Windows的复苏点是分外像的,Windows的东山再起源机制允许大家对OS实行快速照相,那样当系统产生难题时,我们可以回滚到最新的三遍恢复点上


/fstime

1.namenode:

Namenode 管理着文件系统的Namespace。它爱戴着文件系统树(filesystem
tree)以及文件树中具备的文件和文件夹的元数据(metadata)。管理这个新闻的文本有七个,分别是Namespace
镜像文件(Namespace image)和操作日志文件(edit
log),这个音讯被Cache在RAM中,当然,那七个文本也会被持久化存款和储蓄在地点硬盘。Namenode记录着每一个文件中逐壹块所在的多寡节点的岗位音讯,但是他并不持久化存款和储蓄那些新闻,因为那个信息会在系统运维时从数据节点重建。
Namenode结构图抽象图如下

image.png

(五)      
NameNode使用新的fsimage替换原来的fsimage文件,让(壹)创立的edits替代原先的edits文件;并且更新fsimage文件的检查点时间。

2、Secondary NameNode

它的职责是联合NameNode的edit logs到fsimage文件中。

image.png

地点的图纸呈现了Secondary NameNode是怎么工作的:
先是,它定时到NameNode去获取edit
logs,并更新到fsimage上。[笔者注:Secondary
NameNode自己的fsimage]设若它有了新的fsimage文件,它将其拷贝回NameNode中。NameNode在下次重启时会使用那几个新的fsimage文件,从而减少重启的光阴。Secondary
NameNode的整个指标是在HDFS中提供贰个检查点。它只是NameNode的一个帮手节点。那也是它在社区内被认为是检查点节点的来由。它并不是Namenode的二个备份

上边的图形突显了Secondary NameNode是怎么工作的:

  1. 先是,它定时到NameNode去取得edit
    logs,并更新到fsimage上。[笔者注:Secondary NameNode自己的fsimage]
  2. 若是它有了新的fsimage文件,它将其拷贝回NameNode中。
  3. NameNode在下次重启时会使用那么些新的fsimage文件,从而减弱重启的时日。
    Secondary
    NameNode的整套目标是在HDFS中提供3个检查点。它只是NameNode的二个臂膀节点。这也是它在社区内被认为是检查点节点的由来。

当今,大家了然了Secondary
NameNode所做的只是是在文件系统中安装三个检查点来帮忙NameNode越来越好的做事。它不是要取代掉NameNode也不是NameNode的备份。所以从未来起,让我们养成一个见惯司空,称呼它为检查点节点吧。


NM是ResourceManager在每台机器上的代办,负责容器管理,并监察和控制它们的能源利用处境,以及向ResourceManager/Scheduler提供能源利用报告

/edits

(2)       通过http
get方式,读取NameNode上的fsimage和edits文件,到Secondary NameNode上;

Namenode 管理者文件系统的Namespace。它爱戴着文件系统树(filesystem
tree)以及文件树中兼有的公文和文件夹的元数据(metadata)。管理这几个新闻的文书有四个,分别是Namespace
镜像文件(Namespace image)和操作日志文件(edit
log),那个消息被Cache在RAM中,当然,那五个文件也会被持久化存款和储蓄在地方硬盘。Namenode记录着每一个文件中逐一块所在的数据节点的岗位消息,但是他并不持久化存款和储蓄这么些新闻,因为这么些音信会在系统运维时从数额节点重建。

3、Secondary NameNode介绍

如上航海用教室,Secondary NameNode首借使做Namespace image和艾德it log合并的。

集群中的每个服务器都运维八个DataNode后台程序,那个后台程序负责把HDFS数据块读写到本地的文件系统。当必要经过客户端读/写某个数据时,先由NameNode告诉客户端去哪个DataNode进行实际的读/写操作,然后,客户端直接与这一个DataNode服务器上的后台程序进行通讯,并且对有关的数据块举行读/写操作。

2:SecondNameNode

三.2Secondary NameNode的目录结构如下:

伟德国际1946 1

从未Namenode,HDFS就不能够做事。事实上,若是运转namenode的机器坏掉的话,系统中的文件将会全盘不见,因为从没其余方法能够将位于差别datanode上的文件块(blocks)重建文件。因而,namenode的容错机制格外重大,Hadoop提供了二种体制。

${dfs.name.dir}/current/VERSION

ResourceManage
即财富管理,在YA奥迪Q3N中,ResourceManager负责集群中有所财富的联结管理和分配,它接受来自各种节点(NodeManager)的财富汇报新闻,并把这么些音信遵照一定的国策分配给各类应用程序(实际上是ApplicationManager)。

GL450M包涵Scheduler(定时调度器)和ApplicationManager(应用管理器)。Schedular负责向应用程序分配财富,它不做监察和控制以及应用程序的景况跟踪,并且不保险会重启应用程序本人依旧硬件出错而进行破产的应用程序。ApplicationManager负责接受新的天职,协调并提供在ApplicationMaster容器战败时的重启作用。

客户端(client)代表用户与namenode和datanode交互来访问整个文件系统。客户端提供了壹些列的文件系统接口,因而咱们在编制程序时,差不多不用知道datanode和namenode,即可形成大家所急需的职能。

/fsimage

当然在hadoop 二.x 中,已经有了新的缓解方案,这正是NameNode
HA(因为Hadoop还包蕴 ResourceManage
HA),hadoop联邦
Hadoop
HA是指同时起步三个NameNode,八个地处工作状态,其它3个远在随时待命状态,那样在地处工作情状的NameNode所在的服务器宕机时,可在多少不丢掉的地方下,手工业只怕机关心换成此外3个NameNode提供劳动。

可是帮衬Namenode总是落后于主Namenode,所以在Namenode宕机时,数据丢失是不可制止的。在这种气象下,1般的,要组成第一种方式中提到的长距离挂载的互连网文件系统(NFS)中的Namenode的元数据文件来使用,把NFS中的Namenode元数据文件,拷贝到支持Namenode,并把救助Namenode作为主Namenode来运维。

/fsimage

此地质大学约介绍以下ApplicationMaster,每一个应用程序的AM负责项Scheduler申请能源,以及跟踪这几个能源的应用情况和能源调度的监察

万事处理过程完毕。

4、ResourceManager介绍

5、NodeManager介绍


Secondary  NameNode是三个用来监督HDFS状态的助手后台程序。就想NameNode1样,每一个集群都有四个Secondary  NameNode,并且配备在多个独自的服务器上。Secondary  NameNode不一样于NameNode,它不收受大概记录任何实时的数量变化,不过,它会与NameNode进行通讯,以便定期地保留HDFS元数据的
快速照相。由于NameNode是单点的,通过Secondary  NameNode的快速照相功用,能够将NameNode的宕机时间和数目损失下降到微小。同时,倘若NameNode爆发难点,Secondary  NameNode能够立时地看成备用NameNode使用。

2、Datanode介绍

3:DataNode

/fstime

/fsimage

5:NodeManager

1、NameNode介绍

越多关于ResourceManager的牵线参考:点击阅读

/previous.checkpoint/VERSION

伟德国际1946 2

参考博客:

(四)       通过http post格局,将新的fsimage文件传送到NameNode;

第二种艺术是运作2个救助的Namenode(Secondary Namenode)。 事实上Secondary
Namenode并不可能被当做Namenode它的机要意义是定期的将Namespace镜像与操作日志文件(edit
log)合并,以制止操作日志文件(edit log)变得过大。平时,Secondary Namenode
运营在3个独立的物理机上,因为联合操作须求占用多量的CPU时间以及和Namenode非凡的内部存款和储蓄器。支持Namenode保存着统1后的Namespace镜像的三个备份,万一几时Namenode宕机了,这么些备份就足以用上了。


http://dongxicheng.org/mapreduce-nextgen/nodemanager-architecture/


4:ResourceManager


3.一NameNode的目录结构如下:

/fstime

鉴于艾德it
log不断拉长,在NameNode重启时,会促成长日子NameNode处于安全形式,不可用状态,是不行不符合Hadoop的设计初衷。所以要周期性合并艾德it
log,然则那个工作由NameNode来形成,会占用大批量能源,那样就出现了Secondary
NameNode,它能够进行image检查点的拍卖工作。步骤如下:

伟德国际1946 3

/edits


/edits

Secondary
NameNode的拍卖,是将fsimage和edites文件周期的联结,不会造成nameNode重启时造成长日子不得访问的景况。


一.壹Namenode容错机制

${fs.checkpoint.dir}/current/VERSION

http://www.aboutyun.com/thread-7778-1-1.html

Namenode结构图课抽象为如图:

Datanode是文件系统的行事节点,他们依据客户端依然是namenode的调度存款和储蓄和摸索数据,并且定期向namenode发送他们所蕴藏的块(block)的列表。

Namespace
image(fsimage)文件是文件系统元数据的持久化检查点,不会在写操作后立即更新,因为fsimage写非常的慢(这一个有相比像datafile)。

首先种办法是将持久化存款和储蓄在当地硬盘的文件系统元数据备份。hadoop能够透过布署来让Namenode将他的持久化状态文件写到不一样的文件系统中。这种写操作是一路并且是原子化的。相比较宽泛的安插是在将持久化状态写到本地硬盘的同时,也写入到三个远程挂载的互连网文件系统。

那便是说这两种文件是做什么样的?当客户端执行写操作,则NameNode会在edit
log记录下来,(作者感觉到这几个文件有个别像Oracle的online
redo logo file)并在内部存款和储蓄器中保留一份文件系统的元数据。

1:NameNode

伟德国际1946 4

(三)      
读取fsimage到内部存储器中,即加载fsimage到内部存款和储蓄器,然后实施edits中持有操作(类似OracleDG,应用redo
log),并扭转一个新的fsimage文件,即这些检查点被创建;

http://dongxicheng.org/mapreduce-nextgen/yarnmrv2-resource-manager-infrastructure/

(1)       Secondary NameNode请求NameNode举行edit
log的轮转(即创办1个新的edit log),将新的编辑操作记录到新生成的edit
log文件;

相关文章