Hadoop分布式文件系统(HDFS)的安全设计

2020年11月2日14:35:33Hadoop分布式文件系统(HDFS)的安全设计已关闭评论

Hadoop分布式文件系统(HDFS)的安全设计

HDFS认为硬件出错是一种常态,因此要求文件管理系统有较高的容错性。HDFS有多种硬件容错办法。下面按命名节点出错、数据节点出错和数据出错3种情况介绍各自的故障恢复方式。

1. 命名节点出错

Hadoop采用如下两种恢复机制来保证命名节点的安全。

(1)将命名节点上的元数据信息同步存储到其他文件系统。恢复时,一般会先从其他文件系统中获取元数据信息,让它在从命名节点上恢复,此时的从命名节点就可以作为命名节点使用。

(2)依靠从命名节点进行恢复。当命名节点宕机时,利用从命名节点的元数据信息进行系统恢复,此时会丢失部分数据。

2. 数据节点出错

每个数据节点定期发送“心跳”信息,向命名节点报告自己的状态。如果命名节点未按时收到心跳信息,就认为该数据节点宕机。

由于有副本存在,所以在出现数据节点宕机时,系统只需要新增副本,保持设定的副本数量,系统就不会受到影响。

3. 数据出错

网络传输和磁盘出错都可能造成数据错误。

客户端在收到数据后,会采用MD5和SHA1对数据块进行校验,以保证获取数据的正确性。

另外,客户端在新建文件时会摘录每个文件块信息,将写入同一路径的隐藏文件中。当客户端读取文件时,首先读取该信息文件,然后利用它对每个读取的数据块进行校验。

如果校验出错,客户端会请求读取另一个数据节点的该文件块,并向命名节点报告这个文件块有错误。

命名节点会定期检查并重新复制这个块。这样可以保证存储的数据块上数据的正确性。

  • 版权声明:本篇文章(包括图片)来自网络,由程序自动采集,著作权(版权)归原作者所有,如有侵权联系我们删除,联系方式(QQ:452038415)。