1.什么时候会进入安全模式?
NameNode启动后会进入安全模式,处于安全模式中的NameNode不会进行数据块的复制。
2.安全模式中做了哪些工作?
NameNode会接受来自DataNode的心跳信号和状态报告。块的状态报告包括了DN中所有数据块的信息。NN就检测每个数据块是否达到了最少副本数。
3.安全模式什么时候退出?
如果在百分比的数据块都通过了检测,这时会增加一个额外的30秒的等待时间。NN就退出安全模式。这个百分比是可以配置的。(这里有一个疑问,比如配置的百分比是80%。那么是80%的数据块通过了检测,并且这80%的数据块是满足最小副本数的,之后就可以退出安全模式了;还是只是检测一下,不管其是否满足最小副本数,只要80%的数据块都检测了,就可以退出安全模式了)
4.退出安全模式后要做的工作?
NN退出安全模式后,会把没有到达最低副本数的数据块进行复制。