NameNode
Для обеспечения высокой доступности кластера планируйте два узла NameNode: первичный (primary) и вторичный (secondary). Они являются критически важными частями кластера ADH. Необходимо обеспечить надежный доступ к этим узлам. Оба сервера хранят состояние 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 обеспечивает сервисы управления ADH достаточно надежным средством хранения с резервированием критически важных данных.
Оперативная память
Требования к памяти существенно зависят от размера кластера ADH. Оперативная память (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 Гбит/с.