Сценарий 1:
Файл HDFS fsimage и editlog записывается в несколько мест, включая монтирование NFS.
A) Сбой демона NameNode: Решение: просто перезапустите процесс Namenode
B) Хост не работает там, где работает узел имени.
Решение:
- Запустите namenode на другом хосте с пустым dfs.name.dir
- Укажите dfs.name.dir на монтирование NFS, где у нас есть копия метаданных.ИЛИ
- Используйте параметр --importCheckpoint при запуске namenode после указания fs.checkpoint.dir на каталог контрольных точек из Secondary NameNode
- Измените fs.default.name на URI резервного имени хоста и перезапуститекластер со всеми ведомыми IP-адресами в подчиненном файле.
Примечание. Мы можем пропустить редактирование, которое могло произойти после последней контрольной точки.
Сценарий 2:
Файл HDFS fsimage записывается в один каталог.
A) Сбой демона NameNode: Решение: неизвестно
B) Хост не работает, где работает узел имени.
Решение:
- Создайте пустой каталог, указывающий на dfs.name.dir на каталог в (1)
- Запустите Namenode с -importCheckpoint после указания fs.checkpoint.dir на каталог контрольных точек из Secondary NameNode
- Изменитеfs.default.name к резервному URI имени хоста и перезапустите кластер со всеми ведомыми IP-адресами в подчиненном файле.
Таким образом, мы снова будем пропускать файлы, отредактированные после последней контрольной точки.
Пожалуйста, дайте мне знать, если мы можем вручную восстановить кластер.