0910 hadoop完全分布式 HA 搭建 hdfs工作原理读写模式

1 完全分布式搭建 hdfs-site.xml中指定SNN的位置 在slaves文件中配置DN的位置 即可 4台机器配置文件一致 通过配置文件上的指定来启动不同的jps 

2 HA的搭建 基于zk的zkfc的检测机制 同时也是一种选举机制, 主备间通过对journalnode的主->写 备->读的模式保持主备一致性 

  zk对zkfc进行了心跳的检测 在zk上有生成一个临时的主NN的文件,当主NN or 主zkfc挂掉 临时文件删掉 切换成备用的NN 备用NN   在zk上生成临时文件 变成主机

  HA的环境搭建需要在zk的基础上 更改hadoop的配置文件即可 具体见文档 

  hadoop-daemon.sh start 单节点启动   hadoop-daemon.sh start namenode   hadoop-daemon.sh start journalnode 

  hdfs namenode -bootstrapStandy 同步两个namenode的元数据  

  zkServer.sh start/stop zk的启动关闭   zkCli.sh 链接到zk的客户端

3 hdfs 的写流程

文件在客户端先会被逻辑切割成每个128M的block块 客户端先向NN发起请求 申请空间 审核等 NN完成后会返给block块的地址(包括备份的DN的地址)客户端通过输出流对DN简历链接 会建立两个队列 数据队列 和 确认队列 每一个block块会再次切分成64K大小的包去传输,所有的包都会在数据队列和确认队列中 数据队列中的会发给DN DN去完成备份的操作 都完成了 会返给确认队列 确认队列删掉完成的数据 然后会告知NN 和 客户端完成 每个block块都是如此  当传输时DD挂了 关闭管线 把所有确认队列的包 重新添加到数据队列中  删除该管线上的错误节点 给在正常DN上的block块指定一个新标志 并传回NN 剩余两个DN正常传输  当NN检测到 会创建另一个副本 完成传输任务

4 hdfs 的读流程

客户端去NN上请求block块地址 是通过拓扑排序后的 最新地址 不断的读取block的数据 DD挂了的话 会记住这个DN的地址 之后会绕开DN 去其他副本上读取

5 SNN

SNN完成了 定期镜像文件和日志文件的合并  

合并检查时间点

1、认情况下,SecondaryNameNode每个小时进行一次checkpoint合并

由dfs.namenode.checkpoint.period设置,单位秒

 

2、在不足一小时的情况下,如果edits log存储的事务达到了1000000个也进行一次checkpoint合并

由dfs.namenode.checkpoint.txns设置事务数量

 

3、事务数量检查认每分钟进行一次

由dfs.namenode.checkpoint.check.period设置,单位秒。

 

 

 

 

 

相关文章

hadoop搭建准备工作三台虚拟机:master、node1、node2检查时...
文件的更名和移动:    获取文件详细信息       遇...
目录一、背景1)小文件是如何产生的?2)文件块大小设置3)H...
目录一、概述二、HadoopDataNode多目录磁盘配置1)配置hdfs-...
平台搭建(伪分布式)伪分布式搭建在VM中搭建std-master修改...
 一、HDFS概述 1.1、HDFS产出背景及定义 1.1.1、HDFS产生...