Приключение Node Manager в Шепчащихся Лесах

HadoopBeginner
Практиковаться сейчас

Введение

Глубоко в зачарованных Шепчащихся Лесах, в мистическом царстве, где деревья танцевали по мелодии ветра, жилa мудрая и доброжелательная ведьма по имени Виллоу. Ее коттедж стоял в центре леса, святыня древнего знания и магии. Миссия Виллоу consisted в поддержании тонкой баланса царства леса и guida тех, кто искал ее совет.

Однажды молодой ученик по имени Эйден потерпелся в Шепчащиеся Леса, ищуя мудрость и наставничество. Эйден слышал легенды о том, как Виллоу владеет мощным кластером Hadoop, системой, которая может обрабатывать огромные объемы данных с неравнодушием. Решенный выучить приемы этой замечательной технологии, Эйден ищет коттедж Виллоу, надеясь стать ее учеником и раскрыть секреты Node Manager Hadoop.

Изучите роль Node Manager

В этом шаге вы узнаете о роли Node Manager в архитектуре Hadoop YARN.

Node Manager - это важный компонент фреймворка Hadoop YARN (Yet Another Resource Negotiator). Он отвечает за управление ресурсами отдельных узлов в кластере Hadoop. На каждом узле кластера запускается экземпляр Node Manager, который общается с Resource Managerом для получения и выполнения задач.

Вот, как работает Node Manager:

  1. Регистрация узла: Когда Node Manager запускается, он регистрируется с Resource Managerом, предоставляя информацию о доступных ресурсах на своем узле, таких как процессор, память и объем дискового пространства.
  2. Управление контейнерами: Node Manager отвечает за создание и управление контейнерами, которые являются изолированными средами выполнения задач. Каждый контейнер имеет определенное выделение ресурсов, определяемое Resource Managerом.
  3. Выполнение задач: Когда Resource Manager назначает задачу узлу, Node Manager создает контейнер и запускает в нем задачу. Node Manager контролирует выполнение задачи и отчитывается о ее статусе обратно Resource Managerу.
  4. Мониторинг ресурсов: Node Manager постоянно контролирует использование ресурсов каждого контейнера и узла, обеспечивая, чтобы задачи не потребляли больше ресурсов, чем выделено.
  5. Мониторинг здоровья: Node Manager также контролирует здоровье самого узла, проверяя наличие таких проблем, как откапы диска или проблемы с сетевым подключением. Если узел становится не здоровым, Node Manager может сообщить об этом Resource Managerу, который, в свою очередь, может предпринять соответствующие действия, такие как перезапуск или перепланирование задач.

Для изучения роли Node Manager давайте сначала переключимся на пользователя hadoop:

su - hadoop

Далее мы можем проверить статус Node Manager, выполнив следующую команду:

yarn node -status <Node-Id>

Советы: вы можете найти 'Node-Id' с помощью команды yarn node -list.

Эта команда выведет информацию о запущенном Node Manager, включая его адрес, доступные на узле ресурсы и текущие запущенные контейнеры.

hadoop:~/ $ yarn node -status iZj6c4hvgdd6j6qljtbxoaZ:39885          [21:53:30]
2024-03-23 21:54:08,741 INFO client.DefaultNoHARMFailoverProxyProvider: Connecting to ResourceManager at /0.0.0.0:8032
2024-03-23 21:54:09,119 INFO conf.Configuration: resource-types.xml not found
2024-03-23 21:54:09,128 INFO resource.ResourceUtils: Unable to find'resource-types.xml'.
Node Report :
 Node-Id : iZj6c4hvgdd6j6qljtbxoaZ:39885
 Rack : /default-rack
 Node-State : RUNNING
 Node-Http-Address : iZj6c4hvgdd6j6qljtbxoaZ:8042
 Last-Health-Update : Sat 23/Mar/24 09:52:56:762CST
...

Проверьте логи Node Manager

В этом шаге вы узнаете, как просматривать логи файлы, созданные Node Manager, которые могут дать ценные сведения о его работе и любых потенциальных проблемах.

Логи файлы Node Manager находятся в директории /home/hadoop/hadoop/logs. Вот, как вы можете получить доступ к и просмотреть эти логи:

  1. Во - первых, перейдите в директорию с логами:
cd /home/hadoop/hadoop/logs
  1. Список доступных файлов логов:
ls

Вы должны увидеть файлы, такие как log и out по поводу 'nodemanager'.

  1. Чтобы просмотреть содержимое файла журнала, вы можете использовать текстовый редактор, такой как nano, или командную строку инструмент, такой как tail или less. Например:
tail -n 100 hadoop-hadoop-nodemanager-iZj6c0nuyqgkz1limqj5htZ.log

Эта команда покажет последние 100 строк файла журнала Node Manager.

...
2024-03-04 13:39:01,626 INFO org.apache.hadoop.yarn.server.nodemanager.NodeStatusUpdaterImpl: Registered with ResourceManager as iZj6c0nuyqgkz1limqj5htZ:41069 with total resource of <memory:8192, vCores:8>
...

Логи файлы содержат различные виды информации, включая:

  • События запуска и остановки Node Manager
  • Назначение и запуск контейнеров
  • Использование ресурсов и мониторинг данных
  • Сообщения об ошибках и предупреждения

Просмотрев логи файлы, вы можете устранять проблемы, связанные с Node Manager, такими как неудачный запуск контейнера, конфликт ресурсов или проблемы с здоровьем узла.

Настройте свойства Node Manager

В этом шаге вы узнаете, как настроить свойства Node Manager для настройки его поведения и распределения ресурсов.

Свойства Node Manager определяются в файле конфигурации yarn-site.xml, обычно расположенном в директории /home/hadoop/hadoop/etc/hadoop. Вот, как вы можете изменить эти свойства:

  1. Перейдите в директорию конфигурации Hadoop:
cd /home/hadoop/hadoop/etc/hadoop
  1. Откройте файл yarn-site.xml в текстовом редакторе:
vim yarn-site.xml
  1. Найдите свойство yarn.nodemanager.resource.memory-mb, которое задает максимальное количество физической памяти (в мегабайтах), которое можно выделить для контейнеров на узле. Вы можете настроить это значение в зависимости от требований к памяти в вашем кластере.
<property>
  <name>yarn.nodemanager.resource.memory-mb</name>
  <value>8192</value>
</property>
  1. Другое важное свойство - это yarn.nodemanager.resource.cpu-vcores, которое определяет количество ядер процессора, которое можно выделить для контейнеров на узле.
<property>
  <name>yarn.nodemanager.resource.cpu-vcores</name>
  <value>8</value>
</property>
  1. После внесения изменений сохраните файл и выйдите из текстового редактора.

  2. Чтобы изменения вступили в силу, вам нужно перезапустить Node Manager:

stop-yarn.sh
start-yarn.sh

Настройкой этих свойств вы можете настроить Node Manager для распределения ресурсов в соответствии с требованиями вашего кластера и характеристиками нагрузки.

Резюме

В этом лабаратории вы познакомились с миром Node Manager Hadoop, важным компонентом фреймворка YARN. Вы отправились в путешествие по зачарованным Шепчащимся Лесам, под руководством мудрой ведьмы Виллоу, и узнали о роли Node Manager в управлении ресурсами, выполнении задач и поддержании здоровья кластера Hadoop.

С помощью практических шагов вы приобрели практический опыт в проверке статуса Node Manager, анализе его логов и настройке его свойств для настройки распределения ресурсов. Освоив Node Manager, вы получили возможность эффективно обрабатывать огромные объемы данных в экосистеме Hadoop.

Эта лабораторная работа не только научила вас техническим навыкам, но и развитая более глубокое восхищение к волшебному миру обработки данных. Как Виллоу поддерживала тонкий баланс царства леса, теперь вы обладаете знаниями, чтобы использовать силу Node Manager и обеспечить оптимальную производительность и стабильность вашего кластера Hadoop.