Apache Hadoop – Node Manager

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

Node Manager запускает различные службы, чтобы определять и сообщать о работоспособности узла. Если какие-либо службы не запускаются на узле, Node Manager помечает его как неисправный и сообщает об этом Resource Manager. Помимо управления жизненным циклом узлов, он также проверяет доступные ресурсы, включая память и ЦП. При запуске Node Manager регистрируется в диспетчере ресурсов и отправляет информацию о доступности ресурсов. Одна из ключевых обязанностей Node Manager – управлять контейнерами, запущенными на узле, через его Container Manager. Эти действия включают запуск нового контейнера при получении запроса от Application Master и протоколирование операций, выполняемых с контейнером. Он также следит за состоянием узла.

Application Master отвечает за запуск одного приложения. Он инициируется на основе нового приложения, отправленного в кластер Hadoop. Когда получен запрос на выполнение приложения, он требует наличия контейнера от Resource Manager для выполнения задания. Application Master знает о логике выполнения и обычно специфичен для фреймворков. Например, Apache Hadoop MapReduce имеет собственную реализацию Application Master.