¿Cómo puedo solucionar los errores de etiqueta de nodo y YARN ResourceManager en Amazon EMR?

2 minutos de lectura
0

He habilitado las etiquetas de nodos en un clúster de Amazon EMR. A continuación, se ha producido un error en YARN ResourceManager.

Breve descripción

Este problema afecta a las versiones 5.19.0 a 5.21.0 de Amazon EMR. En estas versiones, Amazon EMR almacena los archivos de etiquetas de nodos en HDFS:

  • DEFAULT_DIR_NAME = «node-labels»
  • MIRROR_FILENAME = «nodelabel.mirror»
  • EDITLOG_FILENAME = «nodelabel.editlog»

Amazon EMR almacena estos archivos en la siguiente ubicación de yarn-site.xml en todos los nodos: yarn.node-labels.fs-store.root-dir: '/apps/yarn/nodelabels'. El problema se produce cuando estos archivos se corrompen al perder todos los nodos que contienen los bloques del archivo durante una operación de cambio de tamaño. ResourceManager se reinicia, se bloquea en un bucle de reinicio y, a continuación, CommonNodeLabelsManager lanza una excepción.

Para encontrar la excepción, busque «org.apache.hadoop.yarn.nodelabels.CommonNodeLabelsManager» en */var/log/hadoop-yarn/yarn-yarn-resourcemanager-\ .log.

Para solucionar este error, elimina los archivos de etiquetas de nodo. A continuación, reinicie ResourceManager para volver a crear los archivos.

Solución

1.    Compruebe el estado del sistema de archivos y localice los bloqueos:

hdfs fsck /apps/yarn/nodelabels/ -locations -blocks -files

2.    Elimine los archivos:

hdfs dfs -rm -skipTrash /apps/yarn/nodelabels/*

3.    Reinicie ResourceManager:

sudo stop hadoop-yarn-resourcemanager
sudo start hadoop-yarn-resourcemanager

4.    Cuando se reinicia, ResourceManager vuelve a crear los archivos de etiquetas de nodo. Esto soluciona el bucle de reinicio. Sin embargo, aún no puede enviar aplicaciones de YARN. Antes de poder enviar aplicaciones de YARN, añada manualmente las entradas de las etiquetas de nodo:

yarn rmadmin -addToClusterNodeLabels "CORE(exclusive=false)"

5.    Genere un listado con las etiquetas para confirmar que ResourceManager las ha recreado:

yarn cluster --list-node-labels

Información relacionada

Explicación de los tipos de nodos: nodos maestros, principales y de tareas

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años