Red de conocimiento informático - Conocimiento informático - ¿Necesita comprender los scripts de inicio para aprender hadoop?

¿Necesita comprender los scripts de inicio para aprender hadoop?

1 Descripción básica

Los comandos de Hadoop se encuentran en ${HADOOP_HOME}/bin, ${HADOOP_HOME}/sbin, ${HADOOP_HOME}/libexec. Contiene scripts de shell de Linux y archivos por lotes de Windows. Este artículo analiza principalmente los scripts de shell en Linux.

2 Explicación detallada del script

2.1 start-all.sh

Para iniciar cada nodo y otros servicios de Hadoop, este es un script de inicio inevitable. El script se encuentra en ${HADOOP_HOME}/sbin. Sin embargo, en la versión 2.x de Hadoop, se anunció oficialmente que Hadoop quedará obsoleto. A continuación, analicemos en detalle cómo funciona el script:

1. Primero, hay un comentario al comienzo del script: # Inicie todos los demonios de Hadoop. Ejecute esto en el nodo maestro. Inicie todos los procesos de demonios de Hadoop (es decir, cada nodo), ejecute el script en el nodo de administración (es decir, el nodo nombrenodo-nombre)

2. echo "Este script está en desuso. En su lugar, utilice start-dfs.sh y start-yarn.sh", lo que significa que el script está desactualizado y ha sido reemplazado por start-dfs.sh y start-yarn.sh.

3. bin=`dirname"${BASH_SOURCE-$0}"`, extraiga la ruta absoluta donde se encuentra start-all.sh.

4. bin=`cd"$bin"; pwd`, cambie al directorio donde se encuentra start-all.sh y asigne la ruta a bin.

5. DEFAULT_LIBEXEC_DIR="$bin"/../libexec, obtenga la ruta absoluta de ${HADOOP_HOME}/libexec para su uso posterior.

6. HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR}, asigna un valor ternario a la variable HADOOP_LIBEXEC_DIR. Si HADOOP_LIBEXEC_DIR está vacío o la variable de entorno no está configurada, asigne la ruta absoluta predeterminada para prepararse para el siguiente paso de ejecutar el script en el directorio.