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 HA, o ResourceManager reside no nó mestre do EMR. Em clusters com HA, ele é implantado em vários nós mestres para garantir alta disponibilidade. |
|
NodeManager |
Gerencia recursos, monitora o status e executa jobs em nós individuais. Implantado nos nós principais ou de tarefa de um cluster EMR. |
|
MapReduce History Server (MRHistoryServer) |
Analisa métricas de jobs do 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, sem afetar 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 atua em conjunto com o NodeManager para executar e monitorar tarefas. |
Benefícios
O YARN no EMR oferece os seguintes benefícios:
Clusters com HA implantam automaticamente o YARN no modo de alta disponibilidade.
-
Operações e manutenção (O&M) simplificadas.
O console permite dimensionamento horizontal de nós, desligamento do NodeManager e reinicializações contínuas.
-
Suporte a monitoramento e alertas.
Monitore diversas métricas e configure alertas inteligentes.
-
O Auto Scaling suporta desligamento controlado.
Os nós aguardam a conclusão das tarefas em execução antes de ficarem offline. Isso evita o desligamento imediato do NodeManager, que causaria falhas e reexecuções de tarefas.