在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
众所周知,安全模式是HDFS所处的一种特殊状态,今天我们要来梳理一下关于HDFS安全模式的学习总结,主要内容包括安全模式概述、安全模式配置以及安全模式命令。下面赶紧开始吧~
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安全模式的全部学习总结,如果大家还看得不够过瘾,可以直接在下方申请免费试学名额,报名在线学习大数据的更多视频课程!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
什么是数据可视化?三分钟快速解读
大数据时代如何做好数据分析是每个企业都在关注的问题,而数据可视化无疑是未来的发展趋势之一。相信大家对数据可视化并不陌生,但是大家真的了解什么是数据可视化吗?本文就用三分钟简单解读一下数据可视化的概念、发展、优势和工具,带大家快速了解和认识数据可视化。
8521
2019-11-29 16:51:22
大数据测试的发展和困境分析
随着大数据技术的日益深入发展,大数据测试应运而生。可以预见,大数据测试将成为软件测试工程师的发展目标之一。可能对于许多人来讲,大数据测试还是一个十分陌生的概念。实际上,大数据测试不同于传统的软件测试,在测试类型、策略和工具上,都有很大的不同。本文将为大家仔细分析一下大数据测试的发展和困境,下面我们一起来看看!
6894
2020-03-03 23:44:15
大数据Apache Hadoop YARN 工作原理介绍
Apache Hadoop YARN是一种新的 Hadoop 资源管理器,通用资源管理系统可为上层应用提供统一的资源管理和调度,引入为集群在利用率、资源统一管理和数据共享等方面具有很强的优势。
5638
2020-04-27 14:27:28
数据库原理知识点全面讲解
掌握数据库已经成为了每个程序员的必备基本技能,今天我们就来带大家彻彻底底弄数据库原理的相关知识点,内容包括了事务、并发一致性、封锁、隔离级别、多版本并发控制和Next-Key Lock。希望本文全面的讲解可以一次性解决大家关于数据库原理的所有疑问。
6966
2020-04-29 11:10:35
狂野大数据厉害吗?可以提升哪些核心技能?
狂野大数据厉害吗?可以提升哪些核心技能?课程服务于有⼀定的IT⾏业经验,想要转⾏进⼊⼤数据开发或者有技术深造需求的同学。课程内容丰富、有⼴度、有深度,旨在培养出⼤数据开发⾼端⼈才,为国家数字化转型输送⾼端数字化⼈才。
3799
2022-09-29 17:35:20