1、HDFS分布式文件系统

  1. 分布式存储
  2. 分布式计算

2、hadoop

hadoop含有四个模块,分别是 common、 hdfs和yarn。

  1. common

    公共模块。

  2. HDFS

    hadoop distributed file system,hadoop分布式文件系统,负责文件的存储管理。HDFS包括Namenode进程、DataNode进程和Secondary Namenode进程。

    1. NameNode
    2. DataNode
    3. Secondary Namenode
  3. mapreduce

    高度抽象的编程模型,包括映射和化简两个阶段,是大数据计算技术的基础。

  4. yarn

资源调度框架,完成在job执行时,进行集群整体资源的调配管理的。集群中所有资源的配置都有ResourceManager完成。

HA

High availability,系统提供持续服务的能力,通常使用9的个数来衡量,例如5个9就是指99.999%。

high availability,高可用问题。
衡量系统持续提供服务的能力。通常使用几个9衡量。
99.999% //折合一年可以宕机5分钟
99.9999% //折合一年可以宕机5分钟

hadoop部署模式

1.local
不会启动任何进程。 2.pesudo
一个节点启动所有进程(5). 3.full
在不同节点启动不同进程。 4.HA模式
active(宕机) + standby(待命)

webui

http://namenode:50070/
http://2nn:50090/
http://datanode:50075/

hadoop

start-all.sh
start-dfs.sh
start-yarn.sh hadoop-daemon.sh start namenode
hadoop-daemons.sh start datanode

副本的放置策略(273)

不同的hadoop版本,对副本的放置策略也不用。

机架感知

按照ip地址返回网络拓扑树形结构/a/b/c/xxx | /a/b/c/xxx

网络拓扑距离

每个节点到达共同交换机的跃点数的总和。

zookeeper

协同服务,HA服务支持。
容灾能力 : (n - 1) / 2
奇数.

namenode配置多个目录

每个目录下的内容相同,用于备份。

datanode配置多个目录

每个目录下的内容不同,用于扩容。

spark

hadoop

1.配额管理
1.1)空间配额
限制
1.2)目录配额
限制目录或文件的个数
hdfs dfsadmin -setQuota 1 data2 //1保持目录为空
hdfs dfsadmin -clsQuota data2 //1保持目录为空 2.快照
瞬间照相(差异化存储)。 3.OIV
offline image viewer,离线镜像查看器
fsimage(元数据) 4.OEV
offline edit viewer,离线编辑日志查看器。
edit存放的对dfs的操作过程。

镜像控制(检查点)

[hdfs-site.xml]
1.dfs.namenode.checkpoint.period=3600
两次检查点的时间间隔. 2.操作记录数=1000,000
操作记录超过该值,也会导致检查点的创建。
dfs.namenode.checkpoint.txns 3.检查周期(默认60)
dfs.namenode.checkpoint.check.period=60 4.设置检查点文件个数,默认是2
dfs.namenode.num.checkpoints.retained=2 5.手动融合镜像文件(需要安全模式)
hdfs dfsadmin -safemode enter
hdfs dfsadmin -saveNamespace
hdfs dfsadmin -safemode leave 6.从client可以下载镜像文件
//下载集群的镜像文件到当前目录下
hdfs dfsadmin -fetchImage .

metasave

保存块复制信息等和datanode的心跳信息到日志文件。
该日志文件在namenode的本地logs下。
hdfs dfsadmin -metasave 1.log

安全模式

hdfs dfsadmin -safemode get			//查看
hdfs dfsadmin -safemode enter //进入
hdfs dfsadmin -safemode leave //退出
hdfs dfsadmin -safemode wait //等待

快照

//启用快照
hfds dfsadmin -allowSnapshot data
//禁用快照
hfds dfsadmin -disallowSnapshot data //创建快照
hdfs dfs -createSnapshot data sp1
//删除
hdfs dfs -deleteSnapshot data sp1
//重命名
hdfs dfs -renameSnapshot data sp1 sp2 删除目录时,如果是可快照目录并且有快照,无法删除,需要
先删除快照再删除目录。

旧节点退役(datanode下线)

1.描述
hdfs的datanode下线由dfs.hosts.exclude属性控制,yarn的nodemanager下线
由yarn.resourcemanager.nodes.exclude-path控制。
2.dfs.hosts.exclude
配置datanode黑名单文件路径名,名单中的节点不允许连接到nn。如果该属性不配置,
所有节点都可以连接。
3.dfs.hosts
配置datanode白名单文件路径名,名单中的节点允许连接到nn。如果该属性不配置,
所有节点都可以连接。
4.规则 dfs.hosts dfs.host.exlucde result
---------------------------------------------------
NO NO Not
NO YES Not
YES NO Yes
YES YES Yes并将退役 5.退役实操
5.0)准备黑白名单
dfs_exclude.conf
dfs_include.conf 5.1)配置hdfs-site.xml的黑白名单属性
<property>
<name>dfs.hosts</name>
<value>/soft/hadoop/etc/full/dfs_include.conf</value>
</property>
<property>
<name>dfs.hosts.exclude</name>
<value>/soft/hadoop/etc/full/dfs_exclude.conf</value>
</property> 5.2)添加退役节点地址到黑名单,不要更新白名单
[dfs_exclude.conf]
s102 5.3)刷新nn
hdfs dfsadmin -refreshNodes 5.4)进入webui,查看退役的节点是否显式为"退役中",开始复制数据块到其他节点。 5.5)一旦复制完成,状态显式"Decommissioned",停止退役节点 5.6)从白名单中删除退役节点
s103
s104
s106 5.7)再次刷新节点
hdfs dfsadmin -refreshNodes 5.8)从slaves中删除退役节点
s103
s104
s106

新节点上线(datanode)

1.准备环境
克隆新虚拟机
配置ssh
删除本地临时目录 2.实操过程
2.1)添加新地址到白名单
s103
s104
s106
s102
[删除黑名单记录]
2.2)刷新名称节点
hdfs dfsadmin -refreshNodes 2.3)更新slaves文件
s103
s104
s106
s102 2.4)启动新节点的datanode进程
[s102]
hadoop-daemon.sh start datanode 2.5)检查webui

旧节点下线(nodemanager)

1.描述
hdfs的datanode下线由dfs.hosts.exclude属性控制,yarn的nodemanager下线
由yarn.resourcemanager.nodes.exclude-path控制。
2.dfs.hosts.exclude
配置datanode黑名单文件路径名,名单中的节点不允许连接到nn。如果该属性不配置,
所有节点都可以连接。
3.dfs.hosts
配置datanode白名单文件路径名,名单中的节点允许连接到nn。如果该属性不配置,
所有节点都可以连接。
4.规则 dfs.hosts dfs.host.exlucde result
---------------------------------------------------
NO NO Not
NO YES Not
YES NO Yes
YES YES Yes并将退役 5.退役实操
5.0)准备黑白名单
yarn_exclude.conf
yarn_include.conf 5.1)配置yarn-site.xml的黑白名单属性
<property>
<name>yarn.resourcemanager.nodes.include-path</name>
<value>/soft/hadoop/etc/full/yarn_include.conf</value>
</property>
<property>
<name>yarn.resourcemanager.nodes.exclude-path</name>
<value>/soft/hadoop/etc/full/yarn_exclude.conf</value>
</property> 5.2)添加退役节点地址到黑名单,不要更新白名单
[yarn_exclude.conf]
s102 5.3)刷新nn
yarn rmadmin -refreshNodes 5.4)进入webui,查看退役的节点是否显式为"退役中",开始复制数据块到其他节点。
http://rm:8088/ 5.5)一旦复制完成,状态显式"Decommissioned",停止退役节点 5.6)从白名单中删除退役节点
[yarn-include.conf]
s103
s104
s106 5.7)再次刷新节点
yarn rmadmin -refreshNodes 5.8)从slaves中删除退役节点
s103
s104
s106

1、HDFS分布式文件系统的更多相关文章

  1. HDFS分布式文件系统资源管理器开发总结

      HDFS,全称Hadoop分布式文件系统,作为Hadoop生态技术圈底层的关键技术之一,被设计成适合运行在通用硬件上的分布式文件系统.它和现有的分布式文件系统有很多共同点,但同时,它和其他的分布式 ...

  2. 通过Thrift访问HDFS分布式文件系统的性能瓶颈分析

    通过Thrift访问HDFS分布式文件系统的性能瓶颈分析 引言 Hadoop提供的HDFS布式文件存储系统,提供了基于thrift的客户端访问支持,但是因为Thrift自身的访问特点,在高并发的访问情 ...

  3. Hadoop HDFS分布式文件系统 常用命令汇总

    引言:我们维护hadoop系统的时候,必不可少需要对HDFS分布式文件系统做操作,例如拷贝一个文件/目录,查看HDFS文件系统目录下的内容,删除HDFS文件系统中的内容(文件/目录),还有HDFS管理 ...

  4. Hadoop基础-HDFS分布式文件系统的存储

    Hadoop基础-HDFS分布式文件系统的存储 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HDFS数据块 1>.磁盘中的数据块 每个磁盘都有默认的数据块大小,这个磁盘 ...

  5. 认识HDFS分布式文件系统

    1.设计基础目标 (1) 错误是常态,需要使用数据冗余  (2)流式数据访问.数据批量读而不是随机速写,不支持OLTP,hadoop擅长数据分析而不是事物处理.  (3)文件采用一次性写多次读的模型, ...

  6. 我理解中的Hadoop HDFS分布式文件系统

    一,什么是分布式文件系统,分布式文件系统能干什么 在学习一个文件系统时,首先我先想到的是,学习它能为我们提供什么样的服务,它的价值在哪里,为什么要去学它.以这样的方式去理解它之后在日后的深入学习中才能 ...

  7. 大数据基础总结---HDFS分布式文件系统

    HDFS分布式文件系统 文件系统的基本概述 文件系统定义:文件系统是一种存储和组织计算机数据的方法,它使得对其访问和查找变得容易. 文件名:在文件系统中,文件名是用于定位存储位置. 元数据(Metad ...

  8. hdfs(分布式文件系统)优缺点

    hdfs(分布式文件系统) 优点 支持超大文件 支持超大文件.超大文件在这里指的是几百M,几百GB,甚至几TB大小的文件.一般来说hadoop的文件系统会存储TB级别或者PB级别的数据.所以在企业的应 ...

  9. 【史上最全】Hadoop 核心 - HDFS 分布式文件系统详解(上万字建议收藏)

    1. HDFS概述 Hadoop 分布式系统框架中,首要的基础功能就是文件系统,在 Hadoop 中使用 FileSystem 这个抽象类来表示我们的文件系统,这个抽象类下面有很多子实现类,究竟使用哪 ...

随机推荐

  1. Hibernate常见报错

    1.A different object with the same identifier value was already associated with the session(使用Hibern ...

  2. echarts分段(一段一种颜色)显示

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. jinkens 'python' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    jinkens执行构建时报错 解决方法,就是指定路径.python的安装目录和被执行文件的的目录

  4. NPOI2.0导出excel之添加样式、边框和表头

    //优化后导出excel public System.IO.Stream ExcelStream(string search) // { var orderBusiniss = Containers. ...

  5. tcp中 fast_open 学习 nginx 13年的版本开始支持该功能

    https://www.cnblogs.com/lanjianhappy/p/9868622.html 三次握手的过程中,当用户首次访问server时,发送syn包,server根据用户IP生成coo ...

  6. Python字符和编码

    1. 字符和编码 背景 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte). 由于计算机是美国人发明的,因此, ...

  7. RTT之内存管理及异常中断

    内存管理分静态内存管理和动态内存管理(根据大小又分2种) 静态内存管理:创建.删除.初始化.解绑.申请和释放.初始化内存池是属于静态内存管理,与创建内存池不同的是,此处内存池对象所使用的内存空间是由用 ...

  8. 【3dsMax安装失败,如何卸载、安装3dMax 2019?】

    AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...

  9. 网络编程api总结

    1.socket函数创建一个socket连接,此时该socket连接为主动式. fd(int)->fd(struct fd)->file->sock:sock->file 2. ...

  10. mac os 和 ubuntu 上测试工具check-0.9.10的安装

    由于工作需要,要使用check 这个单元测试工具. 首先,说一说在Mac10.9上面的安装.我是直接在官网(http://check.sourceforge.net)上下载源码包. 1,解压 2,进入 ...