HDFS架构深入
1.不支持HDFS文件的修改
2.HDFS有升级回滚机制,升级不成功,回到原来的状态
3.修改块的大小hdfs.site.xml里面设置
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
4.namenode启动过程
读取fsimage和edits文件
加载到内存
根据文件和目录的路径来构建整个namenode元数据命名空间的镜像
每个DataNode启动的时候会对磁盘进行扫描
每个DataNode会在启动的时候向namenode汇报自己存储的块的信息
namenode接收DataNode汇报的信息,保存到内存中
namenode启动的时候会等待DataNode向他汇报信息,所以会等一段时间
namenode在启动的过程中,等待的时候处于安全模式(只读状态)。
达到一定的标准后会自动退出安全模式(可以通过下面的属性设置)
<property>
<name>dfs.namenode.safemode.threshold-pct</name>
<value>0.999f</value>
</property>
在namenode启动之后,DataNode和namenode之间会有持续讯通
心跳机制,告诉主节点,从节点的状态(默认是每3秒进行一次)
<property>
<name>dfs.heartbeat.interval</name>
<value>3</value>
</property>
如果心跳超时,说明单点出现故障
namenode收到DataNode的信号以后,会作出反馈
反馈的过程中namenode会附带一些命令给DataNode
<property>
<name>dfs.namenode.stale.datanode.interval</name>
<value>30000</value>
</property>
指定日志的存放位置
<property>
<name>dfs.namenode.edits.dir</name>
<value></value>
</property>
这些属性参数工作中会比较常用,
集群中的所有机器都会有相同的配置信息
1.不支持HDFS文件的修改
2.HDFS有升级回滚机制,升级不成功,回到原来的状态
3.修改块的大小hdfs.site.xml里面设置
<property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property>
4.namenode启动过程
读取fsimage和edits文件
加载到内存
根据文件和目录的路径来构建整个namenode元数据命名空间的镜像
每个DataNode启动的时候会对磁盘进行扫描
每个DataNode会在启动的时候向namenode汇报自己存储的块的信息
namenode接收DataNode汇报的信息,保存到内存中
namenode启动的时候会等待DataNode向他汇报信息,所以会等一段时间
namenode在启动的过程中,等待的时候处于安全模式(只读状态)。
达到一定的标准后会自动退出安全模式(可以通过下面的属性设置)
<property>
<name>dfs.namenode.safemode.threshold-pct</name>
<value>0.999f</value>
</property>
在namenode启动之后,DataNode和namenode之间会有持续讯通
心跳机制,告诉主节点,从节点的状态(默认是每3秒进行一次)
<property>
<name>dfs.heartbeat.interval</name>
<value>3</value>
</property>
如果心跳超时,说明单点出现故障
namenode收到DataNode的信号以后,会作出反馈
反馈的过程中namenode会附带一些命令给DataNode
<property>
<name>dfs.namenode.stale.datanode.interval</name>
<value>30000</value>
</property>
指定日志的存放位置
<property>
<name>dfs.namenode.edits.dir</name>
<value></value>
</property>
这些属性参数工作中会比较常用,
集群中的所有机器都会有相同的配置信息