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