Checkpoint Node¶
NameNode сохраняет свое пространство имен с помощью двух файлов: fsimage, который является последней контрольной точкой пространства имен, и журнал изменений (log) в пространстве имен с момента контрольной точки. Когда NameNode запускается, он объединяет fsimage и журнал изменений, чтобы обеспечить актуальное представление метаданных файловой системы. Затем NameNode перезаписывает fsimage с новым состоянием HDFS и начинает новый журнал изменений.
Checkpoint Node периодически создает контрольные точки пространства имен. Он загружает fsimage и изменения из активного NameNode, объединяет их локально и загружает новое изображение обратно в активный NameNode. Checkpoint Node обычно работает на компьютере, отличном от NameNode, поскольку их требования к памяти одинаковы. Запуск Checkpoint Node осуществляется командой bin/hdfs namenode -checkpoint
на указанном в конфигурационном файле узле.
Расположение Checkpoint Node (или Backup) и сопровождающего его веб-интерфейса настраивается с помощью переменных конфигурации dfs.namenode.backup.address и dfs.namenode.backup.http-address.
Запуск процесса контрольной точки на Checkpoint Node контролируется двумя параметрами конфигурации:
dfs.namenode.checkpoint.period
– по умолчанию установлено значение на 1 час; определяет максимальную задержку между двумя последовательными контрольными точками;dfs.namenode.checkpoint.txns
– по умолчанию установлено значение на 1 миллион; определяет количество незарегистрированных транзакций на NameNode, которые будут вызывать срочную контрольную точку, даже если период ее не был достигнут.
Checkpoint Node хранит последнюю контрольную точку в каталоге, который структурирован таким же образом, как и каталог NameNode. Таким образом контрольное изображение всегда доступно для чтения из NameNode при необходимости.
Important
В файле конфигурации кластера можно указать несколько Checkpoint Node
Пример использования:
hdfs namenode [-backup] |
[-checkpoint] |
[-format [-clusterid cid ] [-force] [-nonInteractive] ] |
[-upgrade [-clusterid cid] [-renameReserved<k-v pairs>] ] |
[-upgradeOnly [-clusterid cid] [-renameReserved<k-v pairs>] ] |
[-rollback] |
[-rollingUpgrade <rollback |started> ] |
[-importCheckpoint] |
[-initializeSharedEdits] |
[-bootstrapStandby [-force] [-nonInteractive] [-skipSharedEditsCheck] ] |
[-recover [-force] ] |
[-metadataVersion ]
-backup
– запуск Backup Node;-checkpoint
– запуск Checkpoint Node;-format [-clusterid cid]
– форматирование указанного NameNode. Запускает NameNode, форматирует его и затем выключает. Будет генерировать NameNodeFormatException, если имя dir уже существует и если переформатирование для кластера отключено;-upgrade [-clusterid cid] [-renameReserved <k-v pairs>]
– Namenode должен быть запущен с опцией обновления до новой версии Hadoop;-upgradeOnly [-clusterid cid] [-renameReserved <k-v pairs>]
– обновляет и закрывает указанный NameNode;-rollback
– откат NameNode до предыдущей версии. Следует использовать после остановки кластера и разворачивания старой версии Hadoop;-rollingUpgrade <rollback|started>
– query: запрос текущего состояния обновления; prepare: подготовка нового обновления; finalize: завершение текущего обновления;-importCheckpoint
– загрузка изображения из каталога контрольных точек и сохранение его в текущем. Контрольная точка dir читается из свойства dfs.namenode.checkpoint.dir;-initializeSharedEdits
– форматирование нового общего каталога изменений и копирование его в достаточное количество сегментов журнала для запуска резервного NameNode;-bootstrapStandby [-force] [-nonInteractive] [-skipSharedEditsCheck]
– позволяет загружать резервные каталоги хранилища NameNode путем копирования последнего снимка пространства имен из активного NameNode. Используется при первой настройке кластера высокой доступности. Опция -force или -nonInteractive имеет то же значение, что и -format. Опция -skipSharedEditsCheck пропускает проверку правок, которая гарантирует достаточное количество правок, уже находящихся в общем каталоге, для запуска с последней контрольной точки;-recover [-force]
– восстановление потерянных метаданных в поврежденной файловой системе;-metadataVersion
– печать версии метаданных программного обеспечения и образа (при условии наличия настроенных каталогов).