Recopilador de datos de Hadoop
Data Infrastructure Insights utiliza este recopilador de datos para reunir métricas de Hadoop.
Instalación
-
Desde Observabilidad > Recopiladores, haga clic en +Recopilador de datos. Elija Hadoop.
Seleccione el sistema operativo o la plataforma en la que está instalado el agente Telegraf.
-
Si aún no ha instalado un Agente para la recopilación, o desea instalar un Agente para un Sistema operativo o Plataforma diferente, haga clic en Mostrar instrucciones para expandir la"Instalación del agente" instrucciones.
-
Seleccione la clave de acceso del agente para utilizarla con este recopilador de datos. Puede agregar una nueva clave de acceso de agente haciendo clic en el botón + Clave de acceso de agente. Práctica recomendada: utilice una clave de acceso de agente diferente solo cuando desee agrupar recopiladores de datos, por ejemplo, por sistema operativo o plataforma.
-
Siga los pasos de configuración para configurar el recopilador de datos. Las instrucciones varían según el tipo de sistema operativo o plataforma que esté utilizando para recopilar datos.
Configuración
Una implementación completa de Hadoop implica los siguientes componentes:
-
NameNode: el sistema principal del sistema de archivos distribuidos Hadoop (HDFS). Coordina una serie de DataNodes.
-
NameNode secundario: una conmutación por error cálida para el NameNode principal. En Hadoop, la promoción a NameNode no se produce automáticamente. El NameNode secundario recopila información del NameNode para estar listo para ser promocionado cuando sea necesario.
-
DataNode: propietario real de los datos.
-
ResourceManager: El sistema principal de cómputo (Yarn). Coordina una serie de NodeManagers.
-
NodeManager: El recurso para computar. Ubicación real para la ejecución de aplicaciones.
-
JobHistoryServer: responsable de atender todas las solicitudes relacionadas con el historial de trabajo.
El complemento Hadoop se basa en el complemento Jolokia de Telegraf. Como requisito para recopilar información de todos los componentes de Hadoop, JMX debe configurarse y exponerse a través de Jolokia en todos los componentes.
Compatibilidad
La configuración se desarrolló con la versión 2.9.2 de Hadoop.
Configuración
Agente Jolokia Jar
Para todos los componentes individuales, se debe descargar una versión del archivo jar del agente Jolokia. La versión con la que se realizó la prueba fue"Agente Jolokia 1.6.0" .
Las instrucciones a continuación asumen que el archivo jar descargado (jolokia-jvm-1.6.0-agent.jar) se encuentra en la ubicación '/opt/hadoop/lib/'.
Nodo de nombre
Para configurar NameNode para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export HADOOP_NAMENODE_OPTS="$HADOOP_NAMENODE_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7800,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8000 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8000 above) and Jolokia (7800). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Nodo de nombre secundario
Para configurar el NameNode secundario para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export HADOOP_SECONDARYNAMENODE_OPTS="$HADOOP_SECONDARYNAMENODE_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7802,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8002 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8002 above) and Jolokia (7802). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Nodo de datos
Para configurar los DataNodes para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export HADOOP_DATANODE_OPTS="$HADOOP_DATANODE_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7801,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8001 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8001 above) and Jolokia (7801). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Administrador de recursos
Para configurar ResourceManager para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export YARN_RESOURCEMANAGER_OPTS="$YARN_RESOURCEMANAGER_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7803,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8003 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8003 above) and Jolokia (7803). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Administrador de nodos
Para configurar los NodeManagers para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export YARN_NODEMANAGER_OPTS="$YARN_NODEMANAGER_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7804,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8004 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8004 above) and Jolokia (7804). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Servidor de historial de trabajos
Para configurar JobHistoryServer para exponer la API de Jolokia, puede configurar lo siguiente en <HADOOP_HOME>/etc/hadoop/hadoop-env.sh:
export HADOOP_JOB_HISTORYSERVER_OPTS="$HADOOP_JOB_HISTORYSERVER_OPTS -javaagent:/opt/hadoop/lib/jolokia-jvm-1.6.0-agent.jar=port=7805,host=0.0.0.0 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8005 -Dcom.sun.management.jmxremote.password.file=$HADOOP_HOME/conf/jmxremote.password" You can choose a different port for JMX (8005 above) and Jolokia (7805). If you have an internal IP to lock Jolokia onto you can replace the "catch all" 0.0.0.0 by your own IP. Notice this IP needs to be accessible from the telegraf plugin. You can use the option '-Dcom.sun.management.jmxremote.authenticate=false' if you don't want to authenticate. Use at your own risk.
Objetos y contadores
Se recogen los siguientes objetos y sus contadores:
Objeto: | Identificadores: | Atributos: |
---|---|---|
Nodo de nombre secundario de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo Información de compilación Versión |
Administrador de nodos de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo |
Administrador de recursos de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo |
Nodo de datos de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo ID del clúster Versión |
Nodo de nombre de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo ID de transacción Última escritura Tiempo desde las últimas ediciones cargadas Estado de alta disponibilidad Estado del sistema de archivos ID de grupo de bloques ID de clúster Información de compilación Recuento de versiones distintas Versión |
Servidor de historial de trabajos de Hadoop |
Servidor de espacio de nombres de clúster |
Nombre del nodo IP del nodo |
Solución de problemas
Información adicional se puede encontrar en el"Soporte" página.