如何使用HDFS安全模式

本篇文章给大家分享的是有关如何使用HDFS安全模式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

目前成都创新互联公司已为上1000家的企业提供了网站建设、域名、网络空间、网站改版维护、企业网站设计、独山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

1、安全模式概述

HDFS在安全模式状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求,是一种保护机制,用于保证集群中的数据块的安全性。在NameNode主节点启动时,HDFS首先进入安全模式,集群会开始检查数据块的完整性。DataNode在启动的时候会向namenode汇报可用的block信息,当整个系统达到安全标准时,HDFS自动离开安全模式。

假设我们设置的副本数是5,那么在Datanode上就应该有5个副本存在,假设只存在3个副本,那么比例就是 3/5=0.6。在配置文件 hdfs-default.xml中定义了一个最小的副本的副本率0.999。我们的副本率0.6明显小于0.99,因此系统会自动的复制副本到其他的DataNode,使得副本率不小于0.999。如果系统中有8个副本,超过我们设定的5个副本,那么系统也会删除多余的3个副本。 如果HDFS处于安全模式下,不允许HDFS客户端进行任何修改文件的操作,包括上传文件,删除文件,重命名,创建文件夹,修改副本数等操作。

2、安全模式配置

与安全模式相关主要配置在hdfs-site.xml文件中,主要有下面几个属性:

(1)dfs.namenode.replication.min:每个数据块最小副本数量,默认为1在上传文件时,达到最小副本数,就认为上传是成功的。

(2)dfs.namenode.safemode.threshold-pct:达到最小副本数的数据块的百分比。默认为0.999f。当小于这个比例,那就将系统切换成安全模式,对数据块进行复制;当大于该比例时,就离开安全模式,说明系统有足够的数据块副本数,可以对外提供服务。小于等于0意味不进入安全模式,大于1意味一直处于安全模式。

(3)dfs.namenode.safemode.min.datanodes:离开安全模式的最小可用datanode数量要求,默认为0也就是即使所有datanode都不可用,仍然可以离开安全模式。

(4)dfs.namenode.safemode.extension:当集群可用block比例,可用datanode都达到要求之后,如果在extension配置的时间段之后依然能满足要求,此时集群才离开安全模式。单位为毫秒,默认为 30000也就是当满足条件并且能够维持30秒之后,离开安全模式。这个配置主要是对集群稳定程度做进一步的确认。避免达到要求后马上又不符合安全标准。

总结一下,要离开安全模式,需要满足以下条件:达到副本数量要求的 block比例满足要求;可用的 datanode节点数满足配置的数量要求;1、2两个条件满足后维持的时间达到配置的要求。

 

3、安全模式命令

手动进入安全模式

hdfs dfsadmin -safemode enter

手动进入安全模式对于集群维护或者升级的时候非常有用,因为这时候 HDFS上的数据是只读的。手动退出安全模式可以用下面命令:

hdfs dfsadmin -safemode leave

以上就是如何使用HDFS安全模式,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。


网页名称:如何使用HDFS安全模式
转载来源:http://azwzsj.com/article/ipshde.html