O YARN é um sistema de gerenciamento de recursos distribuídos e componente central do Hadoop. Ele gerencia recursos do cluster, agenda jobs e monitora tarefas.
Termos
|
Nome |
Descrição |
|
ResourceManager |
Gerencia e agenda recursos do cluster e aloca recursos para jobs em execução no YARN. Em clusters sem alta disponibilidade, o ResourceManager reside no nó mestre do EMR. Em clusters com alta disponibilidade, ele é implantado em vários nós mestres para garantir a redundância. |
|
NodeManager |
Gerencia recursos, monitora o status e executa jobs em nós individuais. Implantado nos nós principais (core) ou de tarefa (task) de um cluster EMR. |
|
MapReduce History Server (MRHistoryServer) |
Analisa métricas de jobs MapReduce e exibe o status de execução. Também exclui periodicamente logs de agregação expirados. |
|
TimelineServer |
Coleta métricas de jobs e exibe o status de execução. Nota
O TimelineServer monitora apenas o uso de recursos de jobs individuais. Ele não afeta o desenvolvimento, a execução ou o envio de jobs de dados. |
|
WebAppProxyServer |
Redireciona links de jobs para mitigar ataques via web. |
|
ApplicationMaster |
Gerencia o ciclo de vida de uma aplicação. O ApplicationMaster negocia recursos com o ResourceManager e colabora com o NodeManager para executar e monitorar tarefas. |
Benefícios
O YARN no EMR oferece os seguintes benefícios:
Clusters HA implantam automaticamente o YARN no modo de alta disponibilidade.
-
Operações e manutenção (O&M) simplificadas.
O console permite expansão de nós, desligamento do NodeManager e reinicializações contínuas (rolling restarts).
-
Monitoramento e alertas integrados.
Monitore diversas métricas e configure alertas inteligentes.
-
O Auto Scaling suporta desligamento controlado (graceful shutdown).
Os nós aguardam a conclusão das tarefas em execução antes de ficarem offline. Isso evita que o desligamento imediato do NodeManager cause falhas e reexecuções de tarefas.