NameNode

Для обеспечения высокой доступности кластера планируйте два узла NameNode: первичный (primary) и вторичный (secondary). Они являются критически важными частями кластера Hadoop. Важно обеспечить надежный доступ к этим узлам. Оба сервера хранят состояние HDFS в файле fsimage и журнал операций в файле edits.

NameNode выполняет следующие действия:

  • операции с файлами в HDFS;

  • разделение файлов на блоки, находящиеся в узлах DataNode;

  • хранение метаданных о файлах и папках HDFS;

  • хранение информации о расположении блоков в узлах DataNode;

  • управление репликацией данных.

Вторичный узел NameNode используют в качестве резервного хранилища метаданных HDFS в файле fsimage и операций в файле edits. Поскольку он менее всего нагружен, он периодически обновляет файл fsimage с помощью журнала edits. При этом происходит очищение журнала, предотвращающее таким образом бесконтрольное увеличение последнего.

Средства хранения

В обоих узлах NameNode необходимо иметь надежное хранилище для метаданных и журнала операций. Обычно аппаратный массив RAID или надежное хранилище в сети оправданы для этой цели.

Для узлов NameNode, независимо от количества узлов DataNode, характеристики хранилища неизменны. Устанавливайте четыре дисковых устройства SAS объемом около 1 ТБ каждый вместе с контроллером RAID HDD, настроенным на RAID 1+0. Устройства SAS дороже SATA и обладают меньшей емкостью, но они быстрее и гораздо надежнее.

Объединение устройств SAS в массив RAID обеспечивает сервисы управления Hadoop достаточно надежным средством хранения с резервированием критически важных данных.

Оперативная память

Требования по памяти зависят существенно от размера кластера Hadoop. Оперативная память (RAM) является критическим фактором для обоих типов узлов, поскольку они используют RAM как для хранения метаданных HDFS, так и для обработки запросов. По этой причине используйте память с коррекцией ошибок (Error Correction Code, ECC). Обычно каждому узлу NameNode необходимо от 64 ГБ до 128 ГБ памяти.

Требование к объему памяти прямо зависит от количества файловых блоков в HDFS. Как правило, NameNode занимает примерно 1 ГБ памяти на миллион блоков HDFS.

ПРИМЕЧАНИЕ
HDFS реплицирует не файлы, а блоки, образуя несколько копий (обычно 3) каждого блока.

Процессоры

Рекомендуем материнские платы с двумя сокетами под процессоры, каждый процессор с восемью ядрами и тактовой частотой 2.5-3 ГГц. Обычно используют архитектуру Intel.

Подключение к сети

Высокоскоростное подключение к сети крайне необходимо для узлов NameNode. Поэтому рекомендуем использовать пару связанных (bonded) каналов по 10 Гбит/с. Она обеспечивает достаточную избыточность и также увеличивает пропускную способность до 20 Гбит/с. Для кластеров небольших размеров (менее 50 узлов) достаточно соединения 1 Гбит/с.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней