NameNode 滚动升级是指在不停止 Hadoop 集群的情况下对 NameNode 进行升级的过程。这种方法通常用于在集群中部署新的 NameNode 版本或在修复 NameNode 问题时进行修补。
在 NameNode 滚动升级过程中,会同时运行两个 NameNode 实例:旧版本的 NameNode 和新版本的 NameNode。这两个 NameNode 实例共享同一个元数据目录,并且同时接收来自 DataNode 的心跳信息和客户端的请求。
在这种情况下,新版本的 NameNode 会以只读模式运行,只能接收客户端的请求,但不能执行写操作。这样可以确保在升级过程中不会丢失任何元数据。
当升级完成后,新版本的 NameNode 会取代旧版本的 NameNode 成为主 NameNode,并开始执行写操作。旧版本的 NameNode 将会停止工作,整个集群恢复正常运行。