Главные узлы в кластерах Hadoop

Автор: Дирк деРоос

На главных узлах в распределенных кластерах Hadoop размещаются различные службы управления хранением и обработкой, описанные в этом списке, для всего кластера Hadoop. Избыточность критически важна для предотвращения единой точки отказа, поэтому вы видите два коммутатора и три главных узла.

  • Имя Узел: Управляет хранилищем HDFS. Для обеспечения высокой доступности у вас есть как активный NameNode, так и резервный NameNode. Каждый работает на собственном выделенном главном узле.



  • Узел контрольной точки (или резервный узел): Обеспечивает контрольно-пропускной пункт сервисы для NameNode. Это включает в себя чтение журнала редактирования NameNode на предмет изменений в файлах в HDFS (новые, удаленные и добавленные файлы) с момента последней контрольной точки и их применение к главному файлу NameNode, который сопоставляет файлы с блоками данных.

    Кроме того, Backup Node хранит копию пространства имен файловой системы в памяти и синхронизирует ее с состоянием NameNode. Для развертываний с высокой доступностью не используйте узел контрольной точки или резервный узел - вместо этого используйте резервный NameNode. Помимо того, что он является активным резервным для NameNode, он поддерживает службы контрольных точек и хранит в памяти актуальную копию пространства имен файловой системы.

  • JournalNode: Получает изменения журнала редактирования, указывающие на изменения файлов в HDFS, от NameNode. В кластере должны работать как минимум три службы JournalNode (и это всегда нечетное число), и они достаточно легкие, чтобы их можно было разместить вместе с другими службами на главных узлах.

    l максимальная дозировка теанина
  • Менеджер ресурсов: Наблюдает за планированием задач приложений и управлением ресурсами кластера Hadoop. Эта услуга является сердцем YARN.

  • JobTracker: Для серверов Hadoop 1 обрабатывает управление ресурсами кластера и планирование. С YARN JobTracker устарел и не используется. Некоторые развертывания Hadoop до сих пор не перешли на Hadoop 2 и YARN.

  • HMaster: Контролирует серверы региона HBase и обрабатывает все изменения метаданных. Чтобы обеспечить высокую доступность, обязательно используйте второй экземпляр HMaster. Служба HMaster достаточно легкая, чтобы ее можно было размещать с другими службами на главных узлах. В Hadoop 1 экземпляры службы HMaster работают на главных узлах. В Hadoop 2 с Hoya (HBase on Yarn) экземпляры HMaster запускаются в контейнерах на подчиненных узлах.

  • Работник зоопарка: Координирует распределенные компоненты и предоставляет механизмы для их синхронизации. Zookeeper используется для обнаружения сбоя NameNode и выбора нового NameNode. Он также используется с HBase для управления состояниями HMaster и RegionServers.

    Как и в случае с JournalNode, вам нужно как минимум три экземпляра узлов Zookeeper (и всегда нечетное число), и они достаточно легкие, чтобы их можно было размещать с другими службами на главных узлах.

    дозировка альбона для щенков

    image0.jpg

Здесь у вас есть три главных узла (с одинаковым оборудованием), где ключевые службы Active NameNode, Standby NameNode и Resource Manager имеют каждый свой собственный сервер. На каждом сервере также работают службы JournalNode и Zookeeper, но они легковесны и не будут источником конфликтов между службами NameNode и Resource Manager.

image1.jpg

Принципы те же для Hadoop 1, где вам нужен выделенный главный узел для служб NameNode, Secondary NameNode и JobTracker.

Если вы планируете использовать HBase с Hoya в Hadoop 2, вам не нужны дополнительные услуги. Для развертываний Hadoop 1 с использованием HBase ознакомьтесь с приведенным ниже рисунком для развертывания служб на главных узлах кластера Hadoop.

image2.jpg

Есть два отличия при сравнении этих главных серверов с главными серверами Hadoop 1 без поддержки HBase: здесь вам понадобятся две службы HMaster (одна для координации HBase и одна для работы в качестве резервного) и службы Zookeeper на всех трех главных узлах для обработки аварийного переключения. .

Если вы собираетесь использовать кластер Hadoop 1 только для HBase, вы можете обойтись без службы JobTracker, поскольку HBase не зависит от инфраструктуры Hadoop 1 MapReduce.

Когда люди говорят об оборудовании для Hadoop, они обычно подчеркивают использование товар комплектующие - недорогие. Поскольку вам нужно использовать только несколько главных узлов (обычно три или четыре), вам не удастся увеличить затраты, если, например, вы решите использовать дорогие жесткие диски.

как принимать азитромицин при хламидиозе

Имейте в виду, что без главных узлов нет кластера Hadoop. Главные узлы выполняют критически важную функцию, и даже если вам нужна избыточность, вы должны проектировать их с учетом высокой доступности и отказоустойчивости.

Рекомендуемое хранилище

Для главных узлов Hadoop, независимо от количества подчиненных узлов или использования кластера, характеристики хранилища согласованы. Используйте четыре диска SAS 900 ГБ вместе с контроллером жесткого диска RAID, настроенным для RAID 1 + 0. Диски SAS дороже, чем диски SATA, и имеют меньшую емкость хранения, но они быстрее и надежнее.

Развертывание дисков SAS в виде массива RAID гарантирует, что службы управления Hadoop будут иметь резервное хранилище для критически важных данных. Это дает вам достаточно стабильное, быстрое и избыточное хранилище для поддержки управления вашим кластером Hadoop.

Рекомендуемые процессоры

На момент написания этой статьи большинство эталонных архитектур рекомендовали использовать материнские платы с двумя сокетами ЦП, каждое с шестью или восемью ядрами. Обычно используется архитектура Intel Ivy Bridge.

Рекомендуемая память

Требования к памяти значительно различаются в зависимости от масштаба кластера Hadoop. Память является критическим фактором для главных узлов Hadoop, поскольку активные и резервные серверы NameNode в значительной степени полагаются на оперативную память для управления HDFS. Таким образом, используйте память с исправлением ошибок (ECC) для главных узлов Hadoop. Обычно главным узлам требуется от 64 до 128 ГБ ОЗУ.

Требование к памяти NameNode напрямую зависит от количества файловых блоков, хранящихся в HDFS. Как правило, NameNode использует примерно 1 ГБ ОЗУ на миллион блоков HDFS. (Помните, что файлы разбиваются на отдельные блоки и реплицируются, так что у вас есть три копии каждого блока.)

Требования к памяти для серверов Resource Manager, HMaster, Zookeeper и JournalNode значительно меньше, чем для сервера NameNode. Однако рекомендуется устанавливать размеры главных узлов одинаково, чтобы они были взаимозаменяемыми в случае отказа оборудования.

Рекомендуемая сеть

Быстрая связь жизненно важна для служб на главных узлах, поэтому мы рекомендуем использовать пару связанных соединений 10GbE. Эта связанная пара обеспечивает избыточность, но также удваивает пропускную способность до 20GbE. Для небольших кластеров (например, менее 50 узлов) можно обойтись коннекторами 1 GbE.