GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Ubuntu 20.04 Hadoop

Apache Hadoop se compone de varios paquetes de software de código abierto que funcionan juntos para el almacenamiento distribuido y el procesamiento distribuido de big data. Hay cuatro componentes principales en Hadoop:

  • Común de Hadoop – las diversas bibliotecas de software de las que depende Hadoop para ejecutarse
  • Sistema de archivos distribuidos de Hadoop (HDFS) – un sistema de archivos que permite la distribución y el almacenamiento eficientes de big data en un grupo de computadoras
  • Hadoop MapReduce – utilizado para procesar los datos
  • HILO de Hadoop – una API que gestiona la asignación de recursos informáticos para todo el clúster

En este tutorial, repasaremos los pasos para instalar la versión 3 de Hadoop en Ubuntu 20.04. Esto implicará la instalación de HDFS (Namenode y Datanode), YARN y MapReduce en un clúster de un solo nodo configurado en modo pseudodistribuido, que es una simulación distribuida en una sola máquina. Cada componente de Hadoop (HDFS, YARN, MapReduce) se ejecutará en nuestro nodo como un proceso Java independiente.

En este tutorial aprenderás:

  • Cómo agregar usuarios para Hadoop Environment
  • Cómo instalar el requisito previo de Java
  • Cómo configurar SSH sin contraseña
  • Cómo instalar Hadoop y configurar los archivos XML relacionados necesarios
  • Cómo iniciar el clúster de Hadoop
  • Cómo acceder a la interfaz de usuario web de NameNode y ResourceManager

Apache Hadoop en Ubuntu 20.04 Focal Fossa

Crear usuario para entorno Hadoop

Hadoop debe tener su propia cuenta de usuario dedicada en su sistema. Para crear uno, abra una terminal y escriba el siguiente comando. También se le pedirá que cree una contraseña para la cuenta.

$ sudo adduser hadoop

Crear nuevo usuario de Hadoop

Instalar el requisito previo de Java

Hadoop se basa en Java, por lo que deberá instalarlo en su sistema antes de poder utilizar Hadoop. Al momento de escribir este artículo, la versión actual de Hadoop 3.1.3 requiere Java 8, así que eso es lo que instalaremos en nuestro sistema.

Use los siguientes dos comandos para obtener las últimas listas de paquetes en apt e instale Java 8:

$ sudo apt update
$ sudo apt install openjdk-8-jdk openjdk-8-jre

Configurar SSH sin contraseña

Hadoop se basa en SSH para acceder a sus nodos. Se conectará a máquinas remotas a través de SSH, así como a su máquina local si tiene Hadoop ejecutándose en ella. Entonces, a pesar de que solo estamos configurando Hadoop en nuestra máquina local en este tutorial, todavía necesitamos tener SSH instalado. También tenemos que configurar SSH sin contraseña
para que Hadoop pueda establecer conexiones silenciosamente en segundo plano.

  1. Necesitaremos el paquete OpenSSH Server y OpenSSH Client. Instálalos con este comando:
    $ sudo apt install openssh-server openssh-client
    
  2. Antes de continuar, es mejor iniciar sesión en hadoop cuenta de usuario que creamos anteriormente. Para cambiar de usuario en tu terminal actual, usa el siguiente comando:
    $ su hadoop
    
  3. Con esos paquetes instalados, es hora de generar pares de claves públicas y privadas con el siguiente comando. Tenga en cuenta que la terminal le preguntará varias veces, pero todo lo que tendrá que hacer es seguir presionando ENTER para continuar.
    $ ssh-keygen -t rsa
    

    Generación de claves RSA para SSH sin contraseña
  4. A continuación, copie la clave RSA recién generada en id_rsa.pub sobre authorized_keys :
    $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    
  5. Puede asegurarse de que la configuración se haya realizado correctamente mediante SSH en localhost. Si puede hacerlo sin que se le solicite una contraseña, está listo para comenzar.

    SSHing en el sistema sin que se le solicite una contraseña significa que funcionó

Instalar Hadoop y configurar archivos XML relacionados

Dirígete al sitio web de Apache para descargar Hadoop. También puede usar este comando si desea descargar el binario Hadoop versión 3.1.3 directamente:

$ wget https://downloads.apache.org/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

Extraiga la descarga al hadoop directorio de inicio del usuario con este comando:

$ tar -xzvf hadoop-3.1.3.tar.gz -C /home/hadoop

Configuración de la variable de entorno

La siguiente export Los comandos configurarán las variables de entorno Hadoop requeridas en nuestro sistema. Puede copiar y pegar todo esto en su terminal (es posible que deba cambiar la línea 1 si tiene una versión diferente de Hadoop):

export HADOOP_HOME=/home/hadoop/hadoop-3.1.3
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"

Fuente el .bashrc archivo en la sesión de inicio de sesión actual:

$ source ~/.bashrc

A continuación, haremos algunos cambios en hadoop-env.sh archivo, que se puede encontrar en el directorio de instalación de Hadoop en /etc/hadoop . Usa nano o tu editor de texto favorito para abrirlo:

$ nano ~/hadoop-3.1.3/etc/hadoop/hadoop-env.sh

Cambia el JAVA_HOME variable a donde está instalado Java. En nuestro sistema (y probablemente también en el suyo, si está ejecutando Ubuntu 20.04 y nos ha seguido hasta ahora), cambiamos esa línea a:

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

Cambiar la variable de entorno JAVA_HOME

Ese será el único cambio que necesitamos hacer aquí. Puede guardar sus cambios en el archivo y cerrarlo.

Cambios de configuración en el archivo core-site.xml

El próximo cambio que debemos hacer está dentro del core-site.xml expediente. Ábrelo con este comando:

$ nano ~/hadoop-3.1.3/etc/hadoop/core-site.xml

Ingrese la siguiente configuración, que le indica a HDFS que se ejecute en el puerto localhost 9000 y configura un directorio para datos temporales.



fs.defaultFS
hdfs://localhost:9000


hadoop.tmp.dir
/home/hadoop/hadooptmpdata

Cambios en el archivo de configuración core-site.xml

Guarde sus cambios y cierre este archivo. Luego, cree el directorio en el que se almacenarán los datos temporales:

$ mkdir ~/hadooptmpdata

Cambios de configuración en el archivo hdfs-site.xml

Cree dos nuevos directorios para que Hadoop almacene la información de Namenode y Datanode.

$ mkdir -p ~/hdfs/namenode ~/hdfs/datanode

Luego, edite el siguiente archivo para decirle a Hadoop dónde encontrar esos directorios:

$ nano ~/hadoop-3.1.3/etc/hadoop/hdfs-site.xml

Realice los siguientes cambios en hdfs-site.xml archivo, antes de guardarlo y cerrarlo:



dfs.replication
1
dfs.name.dir
file:///home/hadoop/hdfs/namenode
dfs.data.dir
file:///home/hadoop/hdfs/datanode

Cambios en el archivo de configuración hdfs-site.xml

Cambios de configuración en el archivo mapred-site.xml

Abra el archivo de configuración XML de MapReduce con el siguiente comando:

$ nano ~/hadoop-3.1.3/etc/hadoop/mapred-site.xml

Y realice los siguientes cambios antes de guardar y cerrar el archivo:



mapreduce.framework.name
yarn

Cambios en el archivo de configuración mapred-site.xml

Cambios de configuración en el archivo yarn-site.xml

Abra el archivo de configuración de YARN con el siguiente comando:

$ nano ~/hadoop-3.1.3/etc/hadoop/yarn-site.xml

Agregue las siguientes entradas en este archivo, antes de guardar los cambios y cerrarlo:



mapreduceyarn.nodemanager.aux-services
mapreduce_shuffle

cambios en el archivo de configuración del sitio de hilo

Inicio del clúster de Hadoop

Antes de usar el clúster por primera vez, debemos formatear el nodo de nombre. Puede hacerlo con el siguiente comando:

$ hdfs namenode -format

Formateo del NameNode de HDFS

Su terminal escupirá mucha información. Mientras no vea ningún mensaje de error, puede suponer que funcionó.

A continuación, inicie HDFS utilizando start-dfs.sh guión:

$ start-dfs.sh

Ejecute el script start-dfs.sh

Ahora, inicie los servicios de YARN a través de start-yarn.sh guión:

$ start-yarn.sh

Ejecute el script start-yarn.sh

Para verificar que todos los servicios/daemons de Hadoop se hayan iniciado correctamente, puede utilizar jps dominio. Esto mostrará todos los procesos que actualmente utilizan Java que se ejecutan en su sistema.

$ jps

Ejecute jps para ver todos los procesos dependientes de Java y verifique que los componentes de Hadoop se estén ejecutando

Ahora podemos verificar la versión actual de Hadoop con cualquiera de los siguientes comandos:

$ hadoop version

o

$ hdfs version

Verificación de la instalación de Hadoop y la versión actual

Interfaz de línea de comandos HDFS

La línea de comandos de HDFS se utiliza para acceder a HDFS y crear directorios o emitir otros comandos para manipular archivos y directorios. Use la siguiente sintaxis de comando para crear algunos directorios y listarlos:

$ hdfs dfs -mkdir /test
$ hdfs dfs -mkdir /hadooponubuntu
$ hdfs dfs -ls /

Interactuando con la línea de comandos de HDFS

Acceda a Namenode y YARN desde el navegador

Puede acceder tanto a la interfaz de usuario web para NameNode como a YARN Resource Manager a través de cualquier navegador de su elección, como Mozilla Firefox o Google Chrome.

Para la interfaz de usuario web de NameNode, vaya a http://HADOOP-HOSTNAME-OR-IP:50070

Interfaz web DataNode para Hadoop

Para acceder a la interfaz web de YARN Resource Manager, que mostrará todos los trabajos que se están ejecutando actualmente en el clúster de Hadoop, vaya a http://HADOOP-HOSTNAME-OR-IP:8088

Interfaz web de YARN Resource Manager para Hadoop

Conclusión

En este artículo, vimos cómo instalar Hadoop en un clúster de un solo nodo en Ubuntu 20.04 Focal Fossa. Hadoop nos brinda una solución práctica para manejar grandes datos, lo que nos permite utilizar clústeres para el almacenamiento y procesamiento de nuestros datos. Nos hace la vida más fácil cuando trabajamos con grandes conjuntos de datos con su configuración flexible y su cómoda interfaz web.


Ubuntu
  1. Instalar Podman en Ubuntu

  2. Cómo instalar Hadoop en Ubuntu 18.04 o 20.04

  3. Instale VirtualBox 4.2 en Ubuntu 13.04

  4. Instale VirtualBox 4.3 en Ubuntu 14.04

  5. Instalar uTorrent en Ubuntu 16.04

Instalar Rubí en Ubuntu 20.04

Instalar Flameshot en Ubuntu 20.04

Instalar Podman en Ubuntu 20.04

Instalar Tig en Ubuntu 20.04

Cómo instalar qt en Ubuntu 20.04

Cómo instalar Hadoop en Ubuntu 20.04

    Requisitos de software y convenciones de línea de comandos de Linux
    Categoría Requisitos, convenciones o versión de software utilizada
    Sistema Ubuntu 20.04 instalado o Ubuntu 20.04 Focal Fossa actualizado
    Software Apache Hadoop, Java
    Otro Acceso privilegiado a su sistema Linux como root o a través de sudo comando.
    Convenciones # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios