Cómo instalar y configurar Hadoop en Ubuntu 20.04
- 3058
- 395
- Norma Sedillo
Hadoop es un marco de software gratuito, de código abierto y basado en Java utilizado para el almacenamiento y procesamiento de grandes conjuntos de datos en grupos de máquinas. Utiliza HDFS para almacenar sus datos y procesar estos datos utilizando MapReduce. Es un ecosistema de herramientas de big data que se utilizan principalmente para la minería de datos y el aprendizaje automático.
Apache Hadoop 3.3 viene con mejoras notables y muchas correcciones de errores sobre las versiones anteriores. Tiene cuatro componentes principales, como Hadoop Common, HDFS, Yarn y MapReduce.
Este tutorial le explicará cómo instalar y configurar Apache Hadoop en Ubuntu 20.04 Sistema LTS Linux.
Paso 1 - Instalación de Java
Hadoop está escrito en Java y solo admite Java versión 8. Hadoop versión 3.3 y el último también admite el tiempo de ejecución de Java 11, así como Java 8.
Puede instalar OpenJDK 11 desde los repositorios APT predeterminados:
Actualización de sudo apto
sudo apt install OpenJDK-11-JDK
Una vez instalado, verifique la versión instalada de Java con el siguiente comando:
Java -versión
Debe obtener la siguiente salida:
OpenJDK versión "11.0.11 "2021-04-20 OpenJDK Runtime Environment (Build 11.0.11+9-Ubuntu-0ubuntu2.20.04) OpenJDK VM de 64 bits (compilación 11.0.11+9-Ubuntu-0ubuntu2.20.04, modo mixto, compartir)
Paso 2: crea un usuario de Hadoop
Es una buena idea crear un usuario separado para ejecutar Hadoop por razones de seguridad.
Ejecute el siguiente comando para crear un nuevo usuario con el nombre Hadoop:
Adduser de sudo Hadoop
Proporcionar y confirmar la nueva contraseña como se muestra a continuación:
Agregar el usuario 'Hadoop' ... Agregar nuevo grupo 'Hadoop' (1002) ... Agregar nuevo usuario 'Hadoop' (1002) con el grupo 'Hadoop' ... Creación de directorio de inicio '/home/hadoop' ... Copiar archivos de '/etc/skel' … Nueva contraseña: Recupere la nueva contraseña: PASSWD: Contraseña actualizada Cambio correctamente de la información del usuario para Hadoop Ingrese el nuevo valor, o presione Entrar para el nombre completo predeterminado []: Número de habitación []: Teléfono de trabajo []: Teléfono de la casa []: Otro []: ¿la información es correcta? [Y/n] y
Paso 3 - Configurar la autenticación basada en la tecla SSH
A continuación, deberá configurar la autenticación SSH sin contraseña para el sistema local.
Primero, cambie al usuario a Hadoop con el siguiente comando:
Su - Hadoop
A continuación, ejecute el siguiente comando para generar pares de claves públicas y privadas:
ssh -keygen -t RSA
Se le pedirá que ingrese el nombre de archivo. Simplemente presione Entrar para completar el proceso:
Generación de pares de claves RSA públicas/privadas. Ingrese el archivo en el que guardar la clave (/home/hadoop/.ssh/id_rsa): directorio creado '/home/hadoop/.ssh '. Ingrese la frase de pases (vacío sin frase de pases): ingrese la misma frase de pases nuevamente: su identificación se ha guardado en/home/hadoop/.SSH/ID_RSA Su clave pública se ha guardado en/home/hadoop/.ssh/id_rsa.PUB La huella digital clave es: Sha256: QSA2SYEISWP0HD+UXXXI0J9MSORJKDGIBKFBM3EJYIK [ELECTRÓNICO Protegido] La imagen Randomart de la clave es:+--- [RSA 3072]--+| ... o ++ =.+ | |… Oo++.O | |. oo. B . | | o ... + o * . | | = ++ o o o s | |.++O+ O | |.+.+ + . o | | . O * o . | | mi + . | +---- [SHA256]-----+
A continuación, agregue las claves públicas generadas de ID_RSA.Pub a autorizado_keys y establecer el permiso adecuado:
gato ~/.ssh/id_rsa.Pub >> ~/.ssh/autorized_keys
Chmod 640 ~/.ssh/autorized_keys
A continuación, verifique la autenticación SSH sin contraseña con el siguiente comando:
ssh localhost
Se le pedirá que autentique hosts agregando claves RSA a los hosts conocidos. Escriba sí y presione Enter para autenticar el LocalHost:
La autenticidad del host 'localhost (127.0.0.1) 'No se puede establecer. La huella digital de la tecla ECDSA es SHA256: JFQDVBM3ZTPHUPGD5OMJ4CLVIH6TZIRZ2GD3BDNQGMQ. ¿Estás seguro de que quieres continuar conectando (sí/no/[huella digital])? Sí
Paso 4 - Instalación de Hadoop
Primero, cambie al usuario a Hadoop con el siguiente comando:
Su - Hadoop
A continuación, descargue la última versión de Hadoop usando el comando wget:
wget https: // descargas.apache.org/Hadoop/Common/Hadoop-3.3.0/Hadoop-3.3.0.alquitrán.GZ
Una vez descargado, extraiga el archivo descargado:
tar -xvzf hadoop -3.3.0.alquitrán.GZ
A continuación, cambie el nombre del directorio extraído a Hadoop:
MV Hadoop-3.3.0 Hadoop
A continuación, deberá configurar las variables de entorno Hadoop y Java en su sistema.
Abre el ~/.bashrc Archivo en su editor de texto favorito:
nano ~/.bashrc
Agregar las líneas a continuación a la presentación. Puedes encontrar la ubicación de Java_Home ejecutando dirname $ (dirname $ (readlink -f $ (que java)))
comando en la terminal.
Exportar java_home =/usr/lib/jvm/java-11-openjdk-amd64 exportar hadoop_home =/home/hadoop/hadoop exportoop_install = $ hadoop_home exportoop_mapred_home = $ hadoop_home exportoop_comommon_home = hadoop_home export_hdefs_home = $ hadoop_home Hadoop_home exportoop_common_lib_native_dir = $ hadoop_home/lib/native export rath = $ ruta: $ hadoop_home/sbin: $ hadoop_home/bin exportoop_opts = "-djava.biblioteca.ruta = $ hadoop_home/lib/nativo "
Guarde y cierre el archivo. Luego, active las variables de entorno con el siguiente comando:
fuente ~/.bashrc
A continuación, abra el archivo variable de entorno Hadoop:
nano $ hadoop_home/etc/hadoop/hadoop-envv.mierda
Nuevamente configurado el Java_Home en el entorno Hadoop.
Exportar java_home =/usr/lib/jvm/java-11-openjdk-amd64
Guarde y cierre el archivo cuando haya terminado.
Paso 5 - Configuración de Hadoop
Primero, deberá crear los directorios NameNode y DataNode dentro del Directorio de inicio de Hadoop:
Ejecute el siguiente comando para crear ambos directorios:
mkdir -p ~/hadoopdata/hdfs/namenode
mkdir -p ~/hadoopdata/hdfs/datanode
A continuación, edite el sitio de núcleo.xml Archivo y actualización con el nombre de host de su sistema:
nano $ hadoop_home/etc/hadoop/nore-site.xml
Cambie el siguiente nombre según su nombre de host del sistema:
FS.defaultfs hdfs: // hadoop.tecadmin.com: 9000123456 | FS.defaultfs hdfs: // hadoop.tecadmin.com: 9000 |
Guarde y cierre el archivo. Entonces, edite el sitio HDFS.xml archivo:
nano $ hadoop_home/etc/hadoop/hdfs-site.xml
Cambie la ruta del directorio NameNode y DataNode como se muestra a continuación:
DFS.Replicación 1 DFS.nombre.Archivo Dir: /// home/hadoop/hadoopdata/hdfs/nameNode DFS.datos.archivo dir: /// home/hadoop/hadoopdata/hdfs/datanode1234567891011121314151617 | DFS.Replicación 1 DFS.nombre.Archivo Dir: /// home/hadoop/hadoopdata/hdfs/nameNode DFS.datos.archivo dir: /// home/hadoop/hadoopdata/hdfs/datanode |
Guarde y cierre el archivo. Entonces, edite el sitio de mapred.xml archivo:
nano $ hadoop_home/etc/hadoop/mapred-site.xml
Hacer los siguientes cambios:
Mapa reducido.estructura.hilo de nombre123456 | Mapa reducido.estructura.hilo de nombre |
Guarde y cierre el archivo. Entonces, edite el hilo.xml archivo:
nano $ hadoop_home/etc/hadoop/hilo-sitio.xml
Hacer los siguientes cambios:
hilo.nodo.Aux-Services MapReduce_Shuffle123456 | hilo.nodo.Aux-Services MapReduce_Shuffle |
Guarde y cierre el archivo cuando haya terminado.
Paso 6 - Inicie Hadoop Cluster
Antes de comenzar el clúster de Hadoop. Deberá formatear el NameNode como usuario de Hadoop.
Ejecute el siguiente comando para formatear el hadoop namenode:
HDFS namenode -Format
Debe obtener la siguiente salida:
2020-11-23 10: 31: 51,318 Información Namenode.NnstorageretentionManager: va a retener 1 imágenes con txid> = 0 2020-11-23 10: 31: 51,323 información Namenode.FSIMAGE: FSIMAGSAVER Clean CheckPoint: TXID = 0 Cuando se encuentra con el cierre. 2020-11-23 10: 31: 51,323 Información Namenode.Namenode: shutdown_msg: /******************************************** ***************** SHUCEDOWN_MSG: apagar NameNode en Hadoop.tecadmin.net/127.0.1.1 ****************************************************** ***********/
Después de formatear el NameNode, ejecute el siguiente comando para iniciar el clúster Hadoop:
inicio-DFS.mierda
Una vez que el HDFS comenzó con éxito, debe obtener el siguiente resultado:
Comenzando Nanodes en [Hadoop.tecadmin.com] Hadoop.tecadmin.com: Advertencia: agregado permanentemente 'Hadoop.tecadmin.com, Fe80 :: 200: 2DFF: Fe3a: 26CA%eth0 '(ECDSA) a la lista de anfitriones conocidos. Iniciar Datanodes iniciando NameNodes secundarios [Hadoop.tecadmin.com]
A continuación, inicie el servicio de hilo como se muestra a continuación:
start-yarn.mierda
Debe obtener la siguiente salida:
Iniciar ResourceManager inicial Nodemanagers
Ahora puede verificar el estado de todos los servicios de Hadoop utilizando el comando JPS:
JPS
Debería ver todos los servicios en ejecución en la siguiente salida:
18194 Namenode 18822 Nodemanager 17911 Secondarynamenode 17720 Datanode 18669 ResourceManager 19151 JPS
Paso 7 - Ajuste el firewall
Hadoop ahora está comenzando y escuchando en los puertos 9870 y 8088. A continuación, deberá permitir estos puertos a través del firewall.
Ejecute el siguiente comando para permitir conexiones Hadoop a través del firewall:
FireWall-CMD --Permanent --Add-Port = 9870/TCP
Firewall-CMD --Permanent --Add-Port = 8088/TCP
A continuación, vuelva a cargar el servicio Firewalld para aplicar los cambios:
Firewall-CMD-Re-Reload
Paso 8 - Acceso a Hadoop Namenode y Administrador de recursos
Para acceder al NameNode, abra su navegador web y visite la URL http: // su servidor-ip: 9870. Deberías ver la siguiente pantalla:
http: // hadoop.tecadmin.NET: 9870
Para acceder a la administración de recursos, abra su navegador web y visite la URL http: // Your-Server-IP: 8088. Deberías ver la siguiente pantalla:
http: // hadoop.tecadmin.Neta: 8088
Paso 9 - Verifique el clúster Hadoop
En este punto, el clúster Hadoop está instalado y configurado. A continuación, crearemos algunos directorios en el sistema de archivos HDFS para probar el Hadoop.
Creemos algunos directorios en el sistema de archivos HDFS utilizando el siguiente comando:
HDFS DFS -MKDIR /Test1
HDFS DFS -MKDIR /Logs
A continuación, ejecute el siguiente comando para enumerar el directorio anterior:
HDFS DFS -LS /
Debe obtener la siguiente salida:
Encontrado 3 elementos DRWXR-XR-X-Hadoop SuperGroup 0 2020-11-23 10:56 /Logs DRWXR-XR-X-Hadoop SuperGroup 0 2020-11-23 10:51 /Test1
Además, coloque algunos archivos en el sistema de archivos Hadoop. Para el ejemplo, colocar archivos de registro de la máquina host al sistema de archivos Hadoop.
HDFS DFS -put/var/log/*/logs/
También puede verificar los archivos y directorio de arriba en la interfaz web Hadoop Namenode.
Vaya a la interfaz web NameNode, haga clic en Utilities => Explorar el sistema de archivos. Debería ver sus directorios que ha creado anteriormente en la siguiente pantalla:
http: // hadoop.tecadmin.NET: 9870/Explorer.html
Paso 10 - Stop Hadoop Cluster
También puede detener el servicio Hadoop Namenode and Yarn en cualquier momento ejecutando el parada.mierda y parada.mierda Script como usuario de Hadoop.
Para detener el servicio Hadoop Namenode, ejecute el siguiente comando como usuario de Hadoop:
parada.mierda
Para detener el servicio Hadoop Resource Manager, ejecute el siguiente comando:
parada.mierda
Conclusión
Este tutorial le explicó un tutorial paso a paso para instalar y configurar Hadoop en Ubuntu 20.04 Sistema Linux.