Я развернулся, вторичный namenode на той же машине является моим основным namenode:
Это неправильно при производительности, и причины длительности (вторичный узел имени не является горячим резервированием, но это действительно имеет копию необходимых метаданных). Я нашел документацию относительно того, как переместить namenode, но ничто о перемещении вторичного namenode.
Кто-либо с опытом знает, как сделать это безопасно?
Это должно быть достаточно безопасно, чтобы просто удалить роль Secondary Namenode, а затем снова добавить ее на другой узел кластера. В промежуточный период вы можете увидеть предупреждение Cloudera Manager о том, что этой роли не существует (что может привести к длительным проблемам с именем), но отсутствие Secondary не подвергает ваши данные риску
. Задача 2NN - прочитать изменения в файловой системе HDFS и добавить их в fsimage
. Это уменьшает время запуска NN, так как во время запуска NN считывает файл fsimage
, а затем применяет все промежуточные изменения журнала поверх него. Именование несколько неудачно, так как на самом деле это не резервное/резервное NN, а всего лишь утилита для увеличения производительности NN.
В CM есть возможность "Roll Edits" (в зависимости от версии CM) на 2NN, см. также "Checkpointing". Убедитесь в этом перед перемещением.
Для безопасности остановите все службы
Переместите роль 2NN на новую машину.
Перезапустите все службы
(Необязательно, но стоит того): Реализуйте HA