千家信息网

Namenode怎么禁止格式化

发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,Namenode怎么禁止格式化,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1 文档编写目的众所周知,Namenode存放Hadoo
千家信息网最后更新 2024年11月12日Namenode怎么禁止格式化

Namenode怎么禁止格式化,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。


1 文档编写目的

众所周知,Namenode存放Hadoop集群的元数据,Datanode存放数据。如果Namenode被格式化,那意味着整个集群的数据将全部丢失。除非元数据有备份,可以通过技术手段恢复,否则丢失的数据将不可恢复,这对于生产环境的集群而言,无疑是致命的。本文主要讲述如何禁止Namenode格式化,为你的集群增加一分安全保障。

测试环境:

操作系统版本为CentOS 6.8

CM和CDH版本为5.11.2

文章目录结构:

1. 文档编写目的

2. 禁止Namenode格式化

2.1 从格式化到跑路

2.2 配置高级参数

3. 参数功能验证

4. 总结

2 禁止Namenode格式化

2.1 从格式化到跑路

即使是普通用户,也能格式化你的Namenode!可能有人认为,只要把操作系统的root用户权限管控好,普通用户不能切换到hdfs用户执行命令,Namenode好像就安全了。其实不然,只要一个命令,普通用户就能为你的Namenode做一下格式化,然后跑路。

普通用户可以通过环境变量切换为hdfs用户,然后执行格式化命令。比如这样:

export HADOOP_USER_NAME=hdfs

hdfs namenode -format

希望各位看完以后,不要随便去别人的集群格式化Namenode,如果做了的话,劝你赶紧跑路,千万别说是我教你格式化的,切记切记。

2.2 配置高级参数

在HDFS的配置界面,搜索"hdfs-site.xml",找到Namenode高级配置代码段(安全阀),增加红色框中的内容,把"dfs.namenode.support.allow.format"这个参数的值(默认为true)设为false,表示禁止namenode格式化。然后保存配置,重启HDFS及相关服务。如果你是运维人员,公司的栋梁之才,个人强烈建议配置上该参数,或者买一双好鞋,跑起路来轻松一些。


3 参数功能验证

1、随便选一个Namenode做测试,停止该Namenode

2、格式化该Namenode

3、可以看到,Namenode格式化失败。

4、上图可能还不能直观的说明是由于配置参数导致Namenode格式化失败的,本来我想抓点日志出来的,但是因为那个Namenode被停了,日志也就不打印了。但是我最终还是找到一个图能够很直观的说明禁止Namenode格式化参数的效果。

关于Namenode怎么禁止格式化问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0