当hdfs启动的时候,会从fsimage当中加载文件系统状态信息,然后会等到datanode报告块的存储情况,防止namenode过早地对块进行复制。在等待datanode报告的这一段时间内,namenode会进入safemode,此时只是只读模式,当datanode报告完之后,会自动退出safemode模式。
可以通过shell来人工打开 hdfs dfsadmin -safemode enter,打开后,会在namenode的前端页面中看到,此时进入了安全模式。如果这时候在进行写操作,则会报错,提醒进入了写模式。eg:
$: bin/hadoop fs -touch /foodir/newfile.txt
touch: Cannot create file/foodir/newfile.txt. Name node is in safe mode.
也可以通过shell退出该模式hdfs dfsadmin -safemode leave。
网友评论