Hадооп namenode: одиночная точка отказа
Namenode в архитектуре Hadoop является единственной точкой отказа.
Как люди, у которых есть большие Hadoop-кластеры, справляются с этой проблемой?
Есть ли принятое в отрасли решение, которое хорошо зарекомендовало себя, когда второстепенный Namenode берет верх, если первичный не работает?
Ответы
Ответ 1
Yahoo имеет определенные рекомендации для настроек конфигурации при разных размерах кластера, чтобы учитывать сбой имен NameNode. Например:
Единственной точкой отказа в кластере Hadoop является NameNode. Хотя потеря любой другой машины (с перерывами или надолго) не приводит к потере данных, потеря NameNode приводит к недоступности кластера. Постоянная потеря данных NameNode приведет к неработоспособности кластера HDFS.
Поэтому в этой конфигурации необходимо сделать еще один шаг для резервного копирования метаданных NameNode
Facebook использует измененную версию Hadoop для своих хранилищ данных; он имеет некоторые оптимизации, которые фокусируются на надежности NameNode. В дополнение к патчам, доступным на github, Facebook, похоже, использует AvatarNode специально для быстрого переключения между первичными и вторичными NameNodes. Блог Dhruba Borthakur содержит несколько других записей, в которых содержится дополнительная информация о NameNode как о единственной точке отказа.
Изменить: Дополнительная информация об улучшениях Facebook в NameNode.
Ответ 2
Namenode в hadoop больше не SPOF. здесь для более подробной информации.
Ответ 3
Высокая доступность Namenode была представлена с выпуском Hadoop 2.x.
Это может быть достигнуто в двух режимах: С NFS и С QJM
Но предпочтительной является высокая доступность с Менеджером журнала Quorum (QJM).
В типичном кластере HA две отдельные машины настроены как NameNodes. В любой момент времени именно одно из имен NameNodes находится в активном состоянии, а другое находится в состоянии ожидания. Active NameNode отвечает за все клиентские операции в кластере, а режим ожидания просто работает как подчиненный, поддерживая достаточное состояние для обеспечения быстрого переключения при необходимости.
Посмотрите ниже вопросы SE, которые объясняют полный процесс перехода на другой ресурс.
Вторичное использование именNode и высокая доступность в Hadoop 2.x
Как работает процесс отката Hadoop Namenode?
Ответ 4
Большие кластеры Hadoop имеют тысячи узлов данных и одно имя node. Вероятность сбоя растет линейно, когда число машин равно (все остальные равны). Поэтому, если Hadoop не справится с данными node, это не будет масштабироваться. Поскольку существует только одно имя node, существует единственная точка отказа (SPOF), но вероятность отказа по-прежнему низкая.
Что грустно, ответ Bkkbrad о том, что Facebook добавляет возможность переключения на отказ имени node, находится на правильном пути.