一.NameNode,SeconderyNamenode,DataNode
NameNode,DataNode,SeconderyNamenode都是进程,运行在节点上。
1.NameNode:hadoop的主节点, 保存HDFS的元数据信息
1.fsimage - 它是在NameNode启动时对整个文件系统的快照
2.edit logs - 它是在NameNode启动后,对文件系统的改动序列
2.SeconderyNamenode: 职责是合并NameNode的edit logs到fsimage文件中,帮助NameNode
3.DataNode : 响应来自 HDFS 客户机的读写请求。它们还响应来自 NameNode 的创建、删除和复制块的命令。NameNode 依赖来自每个 DataNode 的定期心跳(heartbeat)消息。每条消息都包含一个块报告,NameNode 可以根据这个报告验证块映射和其他文件系统元数据。如果 DataNode 不能发送心跳消息,NameNode 将采取修复措施,重新复制在该节点上丢失的块。
一.HDFS相关概念
1.HDFS : Hadoop分布式文件系统(Hadoop Distributed File System)
2.数据块:存储时为了方便传输和提高容错率,把文件分为多个数据块,hadoop1.x 是64M,hadoop2.x 是128M
3.复制因子:hdfs文件会在多个节点进行备份,默认数量为3(现在配置的是伪分布式,只有一个)
在hdfs-site.xml 中配置
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
4.fsimage文件: FSImage文件是HDFS中名字节点NameNode上文件/目录元数据在特定某一时刻的持久化存储文件。
5.edits文件: 操作日志文件,由NameNode或者SeconderyNamenode读取对fsimage文件进行更改
6.安全模式: 安全模式是hadoop的一种保护机制,用于保证集群中的数据块的安全性。
当集群启动的时候,会首先进入安全模式。当系统处于安全模式时会检查数据块的完整性。
这时,不允许客户端进行任何修改文件的操作,包括上传文件,删除文件,重命名,创建文件夹等操作。
正常情况下,安全模式会运行一段时间自动退出的,只需要我们稍等一会就行了,到底等多长时间呢,我们可以通过50070端口查看安全模式退出的剩余时间
三.常见HDFS shell命令
1.查看目录 hadoop fs -ls hdfs目录(根目录为 /)
2.创建目录 hadoop fs -mkdir -p hdfs路径 (-p是可以创建多级目录)
3.删除目录 hadoop fs -rmdir hdfs目录 (只能删除空目录)
4.删除文件 hadoop fs -rm -r hdfs路径 (加-r可循环删除非空目录)
5.上传文件 hadoop fs -put 文件在本机的路径 hdfs路径
6.下载文件 hadoop fs -get 文件在hdfs路径 文件在本机要放置的路径
7.查看文件 hadoop fs -cat 文件在hdfs的路径
8.查看健康模式 hdfs dfsadmin -safemode get