在学习了如何配置HA后,接下来是启动和管理HA。要启动HA集群,首先要在所有运行JournalNode的主机上启动JournalNodes守护进程,可以在每台主机上执行命令hdfs journalnode启动journalnode守护进程。在journalnode守护进程启动完成之后,必须首先同步两个 NameNode硬盘上的元数据,具体如下:
- 如果正在搭建全新的HDFS集群,应该首先在其中一个NameNode上执行format命令:hdfs namenode –format。
- 如果有已经格式化了的NameNode,或者将一个非HA集群转换为HA集群,需要将已格式化的NameNode的元数据目录中的内容拷贝到未格式化的另一个NameNode上,这一点可以在未格式化的NameNode上使用命令hdfs namenode –bootstrapStandby实现。运行该命令之前需要确保JournalNodes(由dfs.namenode.shared.edits.dir配置)包含足够的edits事务能够启动两个NameNode。
- 如果将一个非HANameNode转换为HA,应该运行hdfs namenode –initializeSharedEdits,该命令将使用本地NameNo